доступ к kubernetes Python API через стручок - PullRequest
0 голосов
/ 29 июня 2018

, поэтому мне нужно подключиться к клиенту python kubernetes через модуль. Я пытался использовать config.load_incluster_config(), в основном следуя примеру из здесь . Однако это выбрасывает эти ошибки.

  File "/Users/myname/Library/Python/2.7/lib/python/site-packages/kubernetes/config/incluster_config.py", line 93, in   load_incluster_config
  cert_filename=SERVICE_CERT_FILENAME).load_and_set()
  File "/Users/myname/Library/Python/2.7/lib/python/site- packages/kubernetes/config/incluster_config.py", line 45, in load_and_set
  self._load_config()
  File "/Users/myname/Library/Python/2.7/lib/python/site-packages/kubernetes/config/incluster_config.py", line 51, in _load_config
  raise ConfigException("Service host/port is not set.")

Я использую Python 2.7 и Minikube Любые намеки или предложения будут очень признательны. спасибо.

1 Ответ

0 голосов
/ 29 июня 2018

так что мне нужно как-то подключиться к этому модулю через API Python

Я почти уверен, что вы неправильно поняли мой ответ , и / или я неправильно понял ваш вопрос. Использовать load_incluster_config следует только тогда, когда ... в кластере ... в противном случае он попытается использовать /var/run/secrets/kubernetes.io/etcetc и не найдет их (помимо отсутствующего env-var в фактической ошибке, которую вы цитировали выше). Однако, если бы вы охраняли load_incluster_config() с помощью if os.getenv('KUBERNETES_SERVICE_HOST'):, как предлагалось, тогда он не запустил бы этот код, и этот вопрос здесь не был бы проблемой.

Если вы создали образ докера, но не развернул его в kubernetes , то это неясно.


Если вы просто хотите использовать Python API для доступа к кластеру, но не из в пределах кластера, config.load_kube_config() на самом деле правильный вызов метода, но вы будете абсолютно необходимо предоставить рабочий kubeconfig, будь то /root/.kube/config или в другом месте, указанном в env-var KUBECONFIG (я имею в виду, как правило; я специально не изучал библиотеку python, чтобы увидеть, является ли это env- это честь).

...