Есть ли способ доступа к сервису promsd, созданному Istio в GKE? - PullRequest
1 голос
/ 05 февраля 2020

Я хотел бы получить доступ к службе Prometheus, запущенной Istio, из другого модуля в моем кластере. В моей локальной среде разработки, использующей Kind , я могу получить к ней доступ http://prometheus.istio-system.svc.cluster.local:9090. Я надеялся сделать то же самое на GKE, поэтому я развернул кластер, используя Istio addon в GKE:

gcloud beta container clusters create $GCLOUD_CLUSTER_NAME \
       --addons=HorizontalPodAutoscaling,Istio \
       --machine-type=n1-standard-2 \
       --num-nodes=4 \
       --cluster-version=latest --zone=$GCLOUD_CLUSTER_ZONE \
       --enable-stackdriver-kubernetes --enable-ip-alias \
       --enable-autorepair \
       --scopes cloud-platform \
       --preemptible

Сначала я был смущен, потому что не увидел prometheus служба в пространстве имен istio-system, а затем я узнал, что они переименовали службу prometheus в promsd для Istio на GKE . Я попытался получить доступ к Прометею в http://promsd.istio-system.svc.cluster.local:9090/, но это не сработало. Я попытался telnet к нему из другого модуля для проверки подключения, но я получил Connection Refused:

root@shiny-wordcloud-69684cd88-lhxc8:/# telnet promsd.istio-system.svc.cluster.local 9090
Trying 10.0.1.215...
telnet: Unable to connect to remote host: Connection refused

Затем я увидел, что есть инструкции по включению Prometheus для Istio на GKE и был довольно смущен, так как я думал, что Прометей пришел с Istio из коробки.

Мой вопрос:

Ответы [ 2 ]

0 голосов
/ 07 февраля 2020

Я рассмотрел ваше дело и следую этой документации:

a) Вы должны включить шлюз istio и виртуальную службу, чтобы разрешить настройку на уровне прокси-сервера посланника, а затем разрешить подключение к prometheus:

Выполнение этой команды и получение переадресации:

$ kubectl -n istio-system port-forward $(kubectl -n istio-system get pod -l app=promsd -o jsonpath='{.items[0].metadata.name}') 9090:9090
Forwarding from 127.0.0.1:9090 -> 9090

Это работает.

Это документация, за которой я следовал:

gke-istio- телеметрия-демо

И для вашего второго вопроса:

Я нашел эту ссылку в документах c от Google: Мониторинг Прометея

Надеюсь, это поможет.

0 голосов
/ 05 февраля 2020

Относительно вашего первого вопроса я бы сказал, что вы должны выставить сервис Promsd, чтобы иметь возможность получить к нему доступ. Предоставление этой услуги означает возможность видеть метрики из кластера из целого rnet. Итак, будьте в курсе этого. Чтобы выполнить sh, вы можете выполнить аналогичную команду, например:

kubectl expose deployment promsd --type=LoadBalancer --name=promsd

Во втором случае цель использования Prometheus зависит от того, какой тип мониторинга инструмент подходит вам лучше всего. И для доступа к этим показателям вы можете использовать Stackdriver Monitoring или Graphana .

...