首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为helm安装的nginx-ingress添加静态IP

如何为helm安装的nginx-ingress添加静态IP
EN

Stack Overflow用户
提问于 2019-03-30 00:06:21
回答 1查看 2.8K关注 0票数 1

我想创建一个nginx-ingress,我可以链接到一个保留的IP地址。主要原因是,我想最大限度地减少手动步骤。目前,基础设施是用Terraform自动设置的,但我不能让nginx-ingress使用保留的IP。我已经让nginx-ingress工作了,但是它创建了自己的IP地址。

根据nginx-ingress site (https://kubernetes.github.io/ingress-nginx/examples/static-ip/),这应该是可能的。首先,应该创建一个负载均衡器服务:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: nginx-ingress-lb
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
spec:
  externalTrafficPolicy: Local
  type: LoadBalancer
  loadBalancerIP: 34.123.12.123
  ports:
  - port: 80
    name: http
    targetPort: 80
  - port: 443
    name: https
    targetPort: 443
  selector:
    # Selects nginx-ingress-controller pods
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx

但是,用户可以使用--publish-service标志通过nginx-ingress-controller.yaml文件更新IP。不过,我是通过helm安装的:

代码语言:javascript
复制
helm install stable/nginx-ingress --name my-nginx --set rbac.create=true

如何在helm安装(或升级)中将发布服务链接到nginx-ingress lb。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-30 01:50:56

假设您的云提供商支持具有静态IP的LB(例如,AWS将为您提供CNAME而不是IP):

您必须将其设置为标记,如下所示。这样做之后,您可以设置入口注释:kubernetes.io/ingress.class: nginx,您的入口将自动获得相同的IP地址。

代码语言:javascript
复制
helm install stable/nginx-ingress  --set controller.service.loadBalancerIP=XXXX,rbac.create=true
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55421381

复制
相关文章

相似问题

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