【问题标题】:unable to connect with pod running in GKE无法连接 GKE 中运行的 pod
【发布时间】:2022-01-18 13:03:46
【问题描述】:
  1. 创建了 3 节点 GKE 集群。

  2. 从 cmd 提示本地登录到 gcloud。

  3. 用 nginx 容器创建了一个 pod 并暴露了 80 端口

apiVersion: v1
kind: Pod
metadata:
  name: basicpod
  labels:
    type: webserver
spec:
  containers:
  - name: webcont
    image: nginx
    ports:
    - containerPort: 80
  1. 现在尝试执行 curl 命令 curl http://<pod-ip> 但超时。 我的问题是为什么 iam 会超时?如果在 pod 内执行,相同的 curl 命令会起作用。喜欢kubectl exec -it basicpod -- /bin/sh and then inside pod execute curl http://<pod-ip>
    GKE 集群详情:
    网络

    私有集群已禁用
    网络默认
    子网默认
    VPC 原生流量路由已禁用
    集群 pod 地址范围(默认) X.X.X.X/X
    服务地址范围 X.X.X.X/X
    节点内可见性已禁用
    NodeLocal DNSCache 已禁用
    启用 HTTP 负载平衡
    L4 内部负载平衡器的子集已禁用
    控制平面授权网络
    已禁用 网络策略已禁用
    Dataplane V2 已禁用
    安全性
    二进制授权已禁用
    已启用屏蔽 GKE 节点 机密 GKE 节点 Beta 版已禁用
    应用层机密加密已禁用
    工作负载标识已禁用
    RBAC 的 Google 网上论坛已停用
    旧版授权已禁用
    基本认证
    已禁用
    客户端证书已禁用

【问题讨论】:

  • 你从哪里开始卷曲?云壳?一个单独的虚拟机?你在卷曲clusterIP吗? [kubectl 获取 svc]
  • 从集群内部卷曲应该可以工作,从外部卷曲(以浏览器为例)您需要确保设置了防火墙。 + 需要通过 LB 暴露服务为例
  • 嗨@danyL,是的,你是对的。我发现,如果服务属于 ClusterIP,那么只有在节点内我们才能访问它。我正在做的是从节点外部访问。
  • 我会把它作为答案发布。

标签: kubernetes google-kubernetes-engine gke-networking


【解决方案1】:

从集群内部卷曲应该可以工作,从外部卷曲(以浏览器为例)您需要确保设置了防火墙。 + 需要通过 LB 暴露服务为例

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-25
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 2018-01-21
    • 1970-01-01
    • 2020-04-25
    • 2020-04-19
    相关资源
    最近更新 更多