Невозможно запустить kubectl и helm из терминала / запуска pycharm - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть скрипт, который пытается запустить подпроцесс с помощью команды kubectl, например:

params = [
            "kubectl",
            "get",
            "svc",
            "-o=jsonpath='{.items[*].spec.ports[*].port}'"
          ]
sp = subprocess.run(params, capture_output=True)

Но я всегда получаю эту ошибку:

    >               raise child_exception_type(errno_num, err_msg, err_filename)
E               FileNotFoundError: [Errno 2] No such file or directory: 'kubectl': 'kubectl'

/usr/lib/python3.7/subprocess.py:1522: FileNotFoundError

С терминала Pycharm я не могу запустить kubectl тоже, но в моем Linux терминале эта работа без нареканий без root пользователя. Идентификатор пользователя для терминала Pycharm и bash совпадают. Как я могу решить эту проблему?

Я попытался переместить kubectl и helm в проект и использовать вместо этого «./kubectl», это несколько работает, но я думаю, что kubectl не удалось использовать его конфиги, потому что я получить ошибку соединения:

    >           raise ConnectionError(e, request=request)
E           requests.exceptions.ConnectionError: HTTPConnectionPool(host='host', port=8090): Max retries exceeded with url: /xss/1027019261true.1.php?test=%3Cscript%3Ealert(0);%3C/script%3E (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f1daaf4b090>: Failed to establish a 

новое соединение: [Errno 111] Соединение отклонено '))

(хост, отредактированный мной в вопросе)

1 Ответ

0 голосов
/ 13 апреля 2020

Попробуйте использовать полный путь к бинарному kubectl.

Я бы использовал клиент Kubernetes python для любых взаимодействий с Kubernetes.

...