По информации, которой вы поделились, я могу предположить, что вы пытаетесь запустить команду вне кластера.
Если вы делаете это, она не будет работать, потому что вы не можете получить доступ к службам ClusterIP
вне кластера.
ClusterIP
: Предоставляет Сервису внутренний IP-адрес кластера. Выбор этого значения делает Сервис доступным только из кластера. Это значение по умолчанию ServiceType
.
Чтобы проверить, является ли сервер, к которому вы подключены, частью кластера, введите kubectl get nodes -owide
e, попробуйте найти ip в списке.
Я вижу, что ваш сервис service/kong-proxy
с EXTERNAL-IP: <pending>
, возможно, это происходит потому, что вы пытаетесь использовать чистую металлическую установку Kubernetes, в этом случае вам нужно использовать MetalLB , чтобы сделать LoadBalancer
конфигурация работает.
Альтернативой для проверки вашего сервиса является использование kubectl port-foward
, это сопоставит ваш сервис с localhost, и вы можете получить доступ по http://localhost: 8080 . Пример:
kubectl port-forward svc/kong-proxy -n kong 8080:80
Эта команда сопоставит вашу службу с портом 8080 вашего локального хоста.
Ссылки:
Типы услуг
MetalLB
port-forward