首页 > 解决方案 > 我的 Azure AKS 服务无法从 Internet 访问

问题描述

我在 AKS 中部署了一个 pod,我正在尝试通过公共 IP 连接到我的服务。当我从 kubectl 命令或 K8 仪表板检查我的服务时,我的部署是成功的。Service 和 Pod 运行良好。

当我想使用端口访问我的公共 IP 时,我的服务没有响应。我的公共 IP 和端口已显示在正确的 Azure 网络安全组中。

我是否需要在 Azure 端添加任何其他设置?

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: sample-service
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: sample-service
    spec:
      containers:
      - name: sample-service
        image: container/sample-service:#{Build.BuildId}#
        ports:
        - containerPort: 80
          name: sample-service
      dnsPolicy: xxxxx
      restartPolicy: Always

apiVersion: v1
kind: Service
metadata:
  name: sample-service
spec:
  type: LoadBalancer
  ports:
  - port: 80
  selector:
    app: sample-service

标签: azurekubernetesazure-aks

解决方案


对于您的问题,可能的原因是您没有targetPort在服务中设置。因此,您可以尝试更改服务,如下所示:

apiVersion: v1
kind: Service
metadata:
  name: sample-service
spec:
  type: LoadBalancer
  ports:
  - port: 80
    targetPort: 80
    name: sample-service
  selector:
    app: sample-service

然后再次重新创建服务。


推荐阅读