【问题标题】:How to set static public ip for ambassador service in aks?如何在aks中为大使服务设置静态公共IP?
【发布时间】:2020-10-02 01:14:14
【问题描述】:

遇到以下问题:
- 我的设置是天蓝色的。里面的服务很少,ambassador 在他们面前工作。
- 我知道如何为“常规”负载均衡器设置公共静态 IP (https://docs.microsoft.com/en-us/azure/aks/static-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 似乎被忽略了,并且每次都在创建新的。 任何想法我做错了什么? 提前致谢。

【问题讨论】:

  • 您在哪个资源组中创建公共 IP 地址?能否也显示部署 YAML 文件?
  • 您是否在服务的注释中传递资源组? (根据微软文档示例)元数据:注释:service.beta.kubernetes.io/azure-load-balancer-resource-group: myResourceGroup

标签: azure kubernetes-ingress azure-aks ambassador


【解决方案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

【讨论】:

    猜你喜欢
    • 2014-06-14
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    • 2014-09-10
    • 1970-01-01
    • 2021-06-19
    • 2016-01-18
    • 2016-06-20
    相关资源
    最近更新 更多