Невозможно открыть службу через прокси-сервер kubectl

➜ kubectl get svc  
NAME                     TYPE           CLUSTER-IP       EXTERNAL-IP                             PORT(S)    AGE
airflow-flower-service   ClusterIP      172.20.119.107   <none>                                  5555/TCP   54d
airflow-service          ClusterIP      172.20.76.63     <none>                                  80/TCP     54d
backend-service          ClusterIP      172.20.39.154    <none>                                  80/TCP     54d

➜ kubectl proxy

xdg-open http://127.0.0.1:8001/api/v1/namespaces/edna/services/http:airflow-service:/proxy/#q=ip-192-168-114-35

и это не срабатывает с

Error trying to reach service: 'dial tcp 10.0.102.174:80: i/o timeout'

Однако, если я открываю службу через kubectl port-forward, я могу открыть службу в браузере.

kubectl port-forward service/backend-service 8080:80 -n edna
xdg-open HTTP://localhost:8080

Итак, как открыть службу через этот длинный URL-адрес (аналогично тому, как мы открываем панель управления Kubernetes?

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/overview?namespace=default

Если я запрашиваю API с помощью CURL, я вижу результат

➜ curl http://127.0.0.1:8001/api/v1/namespaces/edna/services/backend-service/
{
  "kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "backend-service",
    "namespace": "edna",
    "selfLink": "/api/v1/namespaces/edna/services/backend-service",
    "uid": "7163dd4e-e76d-4517-b0fe-d2d516b5dc16",
    "resourceVersion": "6433582",
    "creationTimestamp": "2020-08-14T05:58:45Z",
    "labels": {
      "app.kubernetes.io/instance": "backend-etl"
    },
    "annotations": {
      "argocd.argoproj.io/sync-wave": "10",
      "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"argocd.argoproj.io/sync-wave\":\"10\"},\"labels\":{\"app.kubernetes.io/instance\":\"backend-etl\"},\"name\":\"backend-service\",\"namespace\":\"edna\"},\"spec\":{\"ports\":[{\"port\":80,\"protocol\":\"TCP\",\"targetPort\":80}],\"selector\":{\"app\":\"edna-backend\"},\"type\":\"ClusterIP\"}}\n"
    }
  },
  "spec": {
    "ports": [
      {
        "protocol": "TCP",
        "port": 80,
        "targetPort": 80
      }
    ],
    "selector": {
      "app": "edna-backend"
    },
    "clusterIP": "172.20.39.154",
    "type": "ClusterIP",
    "sessionAffinity": "None"
  },
  "status": {
    "loadBalancer": {
      
    }
  }
}  

person DmitrySemenov    schedule 08.10.2020    source источник


Ответы (1)


Вместо вашего URL:

http://127.0.0.1:8001/api/v1/namespaces/edna/services/http:airflow-service:/proxy

Попробуйте без http:

http://127.0.0.1:8001/api/v1/namespaces/edna/services/airflow-service/proxy

person peterzinho16    schedule 09.10.2020
comment
тайм-аут с ошибкой в ​​браузере Ошибка при попытке связаться с сервисом: 'dial tcp 10.0.102.33:80: I / O timeout' - person DmitrySemenov; 09.10.2020