簡體   English   中英

無法通過Kubectl代理使用服務訪問kubernetes吊艙

[英]Can't reach kubernetes pods using a service via kubectl proxy

我有一個定義的惡魔

ports:
- containerPort: 24231

規格上

部署集合后,我可以在本地主機上(容器中)卷曲/metrics端點,並可以從同一集合的另一個容器中卷曲一個容器的端點。

然后,我定義這樣的服務:

apiVersion: v1
kind: Service
metadata:
  name: fluentd
  labels:
    app: fluentd
spec:
  ports:
    - name: prometheus
      port: 80
      targetPort: 24231
  selector:
    app: fluentd

我希望這將使我能夠: kubectl proxy --port=8001

然后點擊以下鏈接: http://127.0.0.1:8001/api/v1/namespaces/default/services/fluentd:prometheus/proxy/metrics : http://127.0.0.1:8001/api/v1/namespaces/default/services/fluentd:prometheus/proxy/metrics : http://127.0.0.1:8001/api/v1/namespaces/default/services/fluentd:prometheus/proxy/metrics : http://127.0.0.1:8001/api/v1/namespaces/default/services/fluentd:prometheus/proxy/metrics

我看到的是:

Error: 'dial tcp 10.136.4.30:24231: i/o timeout'
Trying to reach: 'http://10.136.4.30:24231/metrics'

但是http://127.0.0.1:8001/api/v1/namespaces/default/services/fluentd按預期返回服務信息,其中包括:

"spec": {
    "ports": [
      {
        "name": "prometheus",
        "protocol": "TCP",
        "port": 80,
        "targetPort": 24231

我究竟做錯了什么。 這項服務一周前已經有效,但在重新部署后停止了工作。

這是我必須在他們的支持下解決的GKE問題。

您應該檢查的幾件事:

  1. 端點-如果您可以通過服務到達端點
  2. 檢查選擇器和標簽-如果正確
  3. 如果上述幾點沒有幫助,請使用kubectl port-forward而不是kubectl port-forward 在這里了解更多。

我從最可能的建議到最小的列出了我的建議。 請讓我知道是否有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM