部署在 EKS 上的服务不在其 EXTERNAL-IP 上应答
Service deployed on EKS does not answer on its EXTERNAL-IP
- 我创建了一个小应用程序,制作了一个 docker 图像,运行s
在本地使用 docker 运行.
很好
- 我在亚马逊上创建了一个 EKS 集群。
- 我将镜像放在 ECR 上,为部署和负载均衡器服务编写了一个 yaml 文件,并使用 kubectl apply -f 部署到我的集群
我可以看到我的服务:
$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
frd-front LoadBalancer 10.100.199.8 a2c269b1619ee11ea90f20636eb75c46-1160809648.us-east-2.elb.amazonaws.com 80:32594/TCP 40m
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 22h
但是如果我去 http://a2c269b1619ee11ea90f20636eb75c46-1160809648.us-east-2.elb.amazonaws.com 没有回复
- 我该如何开始解决这个问题?
- 你有什么想法吗?
谢谢=)
问题可能是以下两个原因之一:
Docker 图像:图像可能未按预期在上述端口上显示输出。
K8s服务:服务YAML可能配置了错误的目标端口或服务端口
如果你发现这两个原因都没有问题。
尝试在您的 pod 上使用端口转发并检查天气是否可用。
用法:
检查 pod
kubectl port-forward pod-name-765d459796-258hz 8080:8080 // host-port:container-port
检查服务
kubectl port-forward svc/myservice 80:8080
如果两者都工作正常,则说明负载均衡器端或服务出站或网络策略存在问题。
如果在端口转发后仍无法正常工作,请使用 docker 图像或部署 yaml 发布。
- 我创建了一个小应用程序,制作了一个 docker 图像,运行s 在本地使用 docker 运行. 很好
- 我在亚马逊上创建了一个 EKS 集群。
- 我将镜像放在 ECR 上,为部署和负载均衡器服务编写了一个 yaml 文件,并使用 kubectl apply -f 部署到我的集群
我可以看到我的服务:
$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
frd-front LoadBalancer 10.100.199.8 a2c269b1619ee11ea90f20636eb75c46-1160809648.us-east-2.elb.amazonaws.com 80:32594/TCP 40m
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 22h
但是如果我去 http://a2c269b1619ee11ea90f20636eb75c46-1160809648.us-east-2.elb.amazonaws.com 没有回复
- 我该如何开始解决这个问题?
- 你有什么想法吗?
谢谢=)
问题可能是以下两个原因之一:
Docker 图像:图像可能未按预期在上述端口上显示输出。
K8s服务:服务YAML可能配置了错误的目标端口或服务端口
如果你发现这两个原因都没有问题。
尝试在您的 pod 上使用端口转发并检查天气是否可用。
用法: 检查 pod
kubectl port-forward pod-name-765d459796-258hz 8080:8080 // host-port:container-port
检查服务
kubectl port-forward svc/myservice 80:8080
如果两者都工作正常,则说明负载均衡器端或服务出站或网络策略存在问题。
如果在端口转发后仍无法正常工作,请使用 docker 图像或部署 yaml 发布。