Как получить доступ к IP-адресу minikube и служебному порту в контейнере?

#kubernetes #keycloak #kubectl #minikube

#kubernetes #поиск ключей #kubectl #minikube

Вопрос:

У меня есть кластер minikube, содержащий несколько сервисов:

 # kubectl get services
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
service1     NodePort    10.96.123.85     <none>        8080:32157/TCP   13d
service2     ClusterIP   10.96.0.1        <none>        8081/TCP         13d


# minikube ip
172.18.77.222

# kubectl get pods
NAME                        READY   STATUS             RESTARTS   AGE
application1-aaaaa-bbbbb    1/1     Running            1          121m
application2-aaaaa-bbbbb    1/1     Running            1          112m
  

Я хочу вызвать application1 из application2 через IP-адрес minikube и порт узла. (http://172.18.77.222:32157 )

(Application1 является сервером перехвата ключей. Поле «эмитент» в ACCESS_TOKEN содержит «внешний» URL-адрес мини-куба»http://172.18.77.222:32157 «, поэтому keycloak принимает только вызовы, отправленные на 172.18.77.222:32157)

Как я могу получить доступ

  • ip-адрес мини-куба и
  • порт узла service1

из application2?

Ответ №1:

Вы можете использовать consul для обнаружения службы, если хотите вызвать функциональность из другой службы. Схема управления Consul должна быть развернута (один раз в кластере), чтобы разрешить обнаружение служб между вашими службами. https://www.consul.io/docs/k8s