如何解决无法使用Azure Kubernetes Service中的负载平衡器服务访问应用程序
我已经创建了小的nginx部署,并在Azure Kubernetes服务中键入LoadBalancer,但是我无法使用LoadBalaner服务访问该应用程序。有人可以提供解决方案
我已经更新了安全组,以允许所有流量,但无济于事。
我是否需要更新任何安全组才能访问该应用程序?
请找到部署文件。
cat nginx.yml
apiVersion: v1
kind: Service
metadata:
name: nginx-kubernetes
spec:
type: LoadBalancer
ports:
- port: 8080
targetPort: 8080
selector:
app: hello-kubernetes
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-kubernetes
spec:
replicas: 3
selector:
matchLabels:
app: hello-kubernetes
template:
metadata:
labels:
app: hello-kubernetes
spec:
containers:
- name: hello-kubernetes
image: nginx:latest
ports:
- containerPort: 8080
解决方法
Nginx容器默认情况下使用端口80,并且您尝试连接到端口8080,那里什么也没有监听,因此拒绝连接。
在这里查看nginx conateiner Dockerfile。您看到什么端口?
要使其正常工作,您需要做的就是更改目标端口,如下所示:
apiVersion: v1
kind: Service
metadata:
name: nginx-kubernetes
spec:
ports:
- port: 8080
targetPort: 80
selector:
app: hello-kubernetes
另外,按如下所示更改containerPort会很不错:
spec:
containers:
- name: hello-kubernetes
image: nginx:latest
ports:
- containerPort: 80
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。