Kubernetes 服务 externalIPs 不转发
Kubernetes service externalIPs not forwarding
我有一个 Kubernetes 集群 运行 1.2.3 二进制文件和 flannel 0.5.5。我正在使用启用了 IP 转发的 GCE 后端。出于某种原因,虽然我指定了特定节点的外部 IP 地址,但它不会转发到相应的节点。
此外,我无法创建外部负载平衡器,控制器管理器说它找不到作为节点的 gce 实例,它们处于就绪状态。我查看了创建负载均衡器的来源,我猜是权限问题(我为集群提供了 gce 的完全权限)或者它没有找到元数据。
以下是相关服务的示例:
kind: "Service"
apiVersion: "v1"
metadata:
name: "client"
spec:
ports:
- protocol: "TCP"
port: 80
targetPort: 80
name: "insecure"
- protocol: "TCP"
port: 443
targetPort: 443
name: "secure"
selector:
name: "client"
sessionAffinity: "ClientIP"
externalIPs:
- "<Node External IP>"
当我尝试创建负载平衡器时,它有 type: LoadBalancer
。
为什么转发到节点 IP 不起作用?我对负载平衡器问题有一个想法,但如果有人有任何见解?
所以我最终通过创建外部负载均衡器解决了这个问题。这样我才有了有效的外网IP。
我有一个 Kubernetes 集群 运行 1.2.3 二进制文件和 flannel 0.5.5。我正在使用启用了 IP 转发的 GCE 后端。出于某种原因,虽然我指定了特定节点的外部 IP 地址,但它不会转发到相应的节点。
此外,我无法创建外部负载平衡器,控制器管理器说它找不到作为节点的 gce 实例,它们处于就绪状态。我查看了创建负载均衡器的来源,我猜是权限问题(我为集群提供了 gce 的完全权限)或者它没有找到元数据。
以下是相关服务的示例:
kind: "Service"
apiVersion: "v1"
metadata:
name: "client"
spec:
ports:
- protocol: "TCP"
port: 80
targetPort: 80
name: "insecure"
- protocol: "TCP"
port: 443
targetPort: 443
name: "secure"
selector:
name: "client"
sessionAffinity: "ClientIP"
externalIPs:
- "<Node External IP>"
当我尝试创建负载平衡器时,它有 type: LoadBalancer
。
为什么转发到节点 IP 不起作用?我对负载平衡器问题有一个想法,但如果有人有任何见解?
所以我最终通过创建外部负载均衡器解决了这个问题。这样我才有了有效的外网IP。