Назад | Перейти на главную страницу

GCP: запустить kubectl exec в частном кластере через прокси

У меня есть частный кластер Kubernetes с частным ip. Чтобы получить к нему доступ, я установил хост-бастион с прокси-сервером squid. Выглядит это так:

My host -> bastion -> private cloud

Обычные команды kubectl работают с прокси-сервером, как и ожидалось:

$ HTTPS_PROXY=socks5://127.0.0.1:1080 kubectl get pods 
No resources found.

Проблема в том, что вы пытаетесь использовать ssh для модуля:

$ HTTPS_PROXY=socks5://127.0.0.1:1080 kubectl exec -it "some-pod" -- /bin/bash
error: error sending request: Post https://<master-ip>/api/v1/namespaces/ns/pods/some-pod/exec?command=%2Fbin%2Fbash&container=xxx&container=xxx&stdin=true&stdout=true&tty=true: EOF

Что я делаю не так?

Как сказано в этом другом Stackdriver сообщение, команда EXEC использует SPDY2 так что это не может быть реализовано.

Подробнее в этом Сообщение GitHub