首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在azure AKS上忽略了loadBalancerIP和HelmRelease中的注释。

在azure AKS上忽略了loadBalancerIP和HelmRelease中的注释。
EN

Stack Overflow用户
提问于 2020-01-31 15:50:17
回答 1查看 2.9K关注 0票数 0

我是在Azure集群上操作的,在这里fluxcd正在正常工作。我正在尝试通过fluxcd CDR HelmRelease配置nginx-ingress图表。具体来说,告诉nginx入口使用已经创建的静态公共IP,它作为AKS节点资源组位于另一个资源组中。

基础AKS服务主体在ip所在的资源组中具有网络贡献者角色。

当使用以下HelmRelease配置文件时,将忽略loadBalancerIP属性(以及任何注释),并在azure中创建一个分配给azure负载均衡器的新公共IP。

代码语言:javascript
复制
apiVersion: helm.fluxcd.io/v1
kind: HelmRelease
metadata:
  name: helm-nginx-ingress
  namespace: nginx-ingress
spec:
  releaseName: nginx-ingress
  targetNamespace: nginx-ingress
  chart:
    repository: https://kubernetes-charts.storage.googleapis.com/
    name: nginx-ingress
    version: 1.24.4
  values:
    controller.service:
      loadBalancerIP: "12.234.162.41"
      annotations:
        service.beta.kubernetes.io/azure-load-balancer-resource-group: "name-of-resource-group"

为了使事情变得更简单,我还尝试使用一个ip,它与AKS节点直接存在于同一个资源组中(但没有结果)。顺便说一句:从来没有任何错误。它只会忽略该属性并创建一个新的ip。

有趣的是,使用helm 3直接发布相同的图表(因此没有fluxcd)非常有效,即使在ip不在同一资源组的特殊情况下也是如此:

代码语言:javascript
复制
helm upgrade nginx-ingress --install --wait --namespace nginx-ingress \
--set controller.service.loadBalancerIP="12.234.162.41" \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-resource-group"="name-of-resource-group" \
stable/nginx-ingress

所以我猜问题就在CDR HelmRelease和值规范的转换上。有人遇到过类似的问题吗?

AKS Kubernetes版本: v1.14.8

磁通/通量图像标签: 1.17.0

本地Helm版本: v3.0.3

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-02 08:09:13

应该是这样:

代码语言:javascript
复制
values:
  controller:
    service:
      loadBalancerIP: "12.234.162.41"
      xxx

https://github.com/helm/charts/blob/master/stable/nginx-ingress/values.yaml#L246

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60007179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档