代码之家  ›  专栏  ›  技术社区  ›  Jwan622

如何通过url访问k8集群中的pod

  •  0
  • Jwan622  · 技术社区  · 5 年前

    我在命名空间中的集群中运行了一个服务:

    NAME                                    TYPE           CLUSTER-IP       EXTERNAL-IP                                                                     PORT(S)                                                       AGE
    amundsen-frontend                       LoadBalancer   10.100.59.220    a563823867e6f11ea82a90a9c116adac-124ae00284b50400.elb.us-west-2.amazonaws.com   80:31866/TCP                                                  70m
    

    当我运行Pod时:

    kubectl get pods
    NAME                                                  READY   STATUS    RESTARTS   AGE
    amundsen-frontend-595b49d856-mkbjj                    1/1     Running   0          74m
    amundsen-metadata-5df6c6c8d8-nrk9f                    1/1     Running   0          74m
    amundsen-search-c8b7cd9f6-mspzr                       1/1     Running   0          74m
    dsci-amundsen-elasticsearch-client-65f858c656-znjfd   1/1     Running   0          74m
    dsci-amundsen-elasticsearch-data-0                    1/1     Running   0          74m
    dsci-amundsen-elasticsearch-master-0                  1/1     Running   0          74m
    

    我真的不知道在这里做什么。如何访问url?我可以继续开发吗?我在生产中做什么?前端pod是我想访问的,搜索pod也是。

    这就是我的 charts.yaml 掌舵:

    frontEnd:
      ##
      ## frontEnd.serviceName -- The frontend service name.
      ##
      serviceName: frontend
      ##
      ## frontEnd.imageVersion -- The frontend version of the metadata container.
      ##
      imageVersion: 2.0.0
      ##
      ## frontEnd.servicePort -- The port the frontend service will be exposed on via the loadbalancer.
      ##
      servicePort: 80
    
    0 回复  |  直到 5 年前
        1
  •  0
  •   Filip Nikolov    5 年前

    信息这么少,我不知道我是否能解决你的问题,但我会尽力帮助你找到它。

    首先,如果我们能看到你的服务和pod配置,那将很有帮助?

    kubectl get sa amundsen-frontend -o yaml
    kubectl get pod amundsen-frontend-595b49d856-mkbjj -o yaml
    

    你可以尝试从另一个吊舱到达前方,这将有助于确定问题是在吊舱还是入口层。 进入外壳内部 search pod容器运行:

    kubectl exec -it amundsen-search-c8b7cd9f6-mspzr  --container <<name of container>>  -- sh
    

    如果pod中只有一个容器,则可以从上面的命令中省略容器部分

    一旦进入,检查您是否能够联系到 amundsen-frontend-595b49d856-mkbjj 有卷发

    curl amundsen-frontend-595b49d856-mkbjj
    curl amundsen-frontend-595b49d856-mkbjj:31866
    

    如果您能够建立通信,那么请在入口层查找问题。你可能想看看你的入口日志,看看为什么它超时了。

    AWS中的网络安全组也值得探索。

    你的入口配置正确吗?