无法使用 Azure Kubernetes 服务中的负载均衡器服务访问应用程序

Not able to access the application using Load Balancer service in Azure Kubernetes Service

我在 Azure Kubernetes 服务中创建了小型 nginx 部署并键入 LoadBalancer,但我无法使用 LoadBalaner 服务访问该应用程序。有人可以提供解决方案

我已经更新了安全组以允许所有流量,但没有用。

我是否需要更新任何安全组才能访问该应用程序?

请找到部署文件。

猫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