如何在Aks中为大使服务设置静态公共IP?

时间:2020-06-12 08:35:56

标签: azure kubernetes-ingress azure-kubernetes ambassador

出现以下问题:
-我的设置是天蓝色。内部几乎没有服务,ambassador在它们前面工作。
-我知道如何为“常规”负载平衡器(https://docs.microsoft.com/en-us/azure/aks/static-ip)设置公共静态ip
-当我尝试在我的Yaml大使中做同样的事情时:

apiVersion: v1
kind: Service
(..)
spec:
  type: LoadBalancer
  loadBalancerIP: XX.XXX.XX.XXX // <= line from microsoft documentation
  ports:
  - name: ambassador
    port: 80
    targetPort: 8080
  - name: ambassador-secure
    port: 443
    targetPort: 443
  selector:
    service: my-selector

传递的静态ip ive似乎被忽略,并且每次创建新的ip ip ive时都会被忽略。 任何想法我做错了什么? 预先感谢。

1 个答案:

答案 0 :(得分:1)

资源组位置似乎是这里的根本原因。如果您尚未将公共IP放入AKS创建的MC_xxxx资源组中,那么Kubernetes的控制器管理器将无法找到它,因为它是它所在的默认资源组。除非在服务清单中使用正确的服务注释指定了一个。

service.beta.kubernetes.io/azure-load-balancer-resource-group: myResourceGroup

apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-resource-group: myResourceGroup
  name: azure-load-balancer
spec:
  loadBalancerIP: 40.121.183.52
  type: LoadBalancer
  ports:
  - port: 80
  selector:
    app: azure-load-balancer