Nginx-ingress controller部署

1.克隆Ingress控制器存储库,然后更改到Deployments文件夹:

$ git clone https://github.com/nginxinc/kubernetes-ingress/ 
$ cd kubernetes-ingress/deployments 
$ git checkout v1.10.0

2.配置RBAC

  1. 为Ingress控制器创建一个名称空间和一个服务帐户:
kubectl apply -f common/ns-and-sa.yaml
  1. 为服务帐户创建集群角色和集群角色绑定:
kubectl apply -f rbac / rbac.yaml

3.创建公共资源

  1. 为NGINX中的默认服务器创建一个包含TLS证书和密钥的密钥:
    注意:对于未定义Ingress规则的所有域请求,默认服务器将返回404状态代码的Not Found页面。为了进行测试,我们包含了我们生成的自签名证书和密钥。但是,我们建议您使用自己的证书和密钥
 kubectl apply -f common/default-server-secret.yaml
  1. 创建用于自定义NGINX配置的配置图:
kubectl apply -f common/nginx-config.yaml
  1. 创建一个IngressClass资源(用于Kubernetes> = 1.18):
kubectl apply -f common/ingress-class.yaml
创建自定义资源
1. 为VirtualServer和VirtualServerRoute,TransportServer和Policy资源创建自定义资源定义:
$ kubectl apply -f common/crds/k8s.nginx.org_virtualservers.yaml
$ kubectl apply -f common/crds/k8s.nginx.org_virtualserverroutes.yaml
$ kubectl apply -f common/crds/k8s.nginx.org_transportservers.yaml
$ kubectl apply -f common/crds/k8s.nginx.org_policies.yaml

4.部署入口控制器

我们包括两个用于部署Ingress控制器的选项:

  • 部署。如果您计划动态更改Ingress控制器副本的数量,请使用Deployment。
  • DaemonSet。使用DaemonSet在每个节点或节点子集上部署Ingress控制器。
    在创建Deployment或Daemonset资源之前,请确保根据您的要求更新相应清单文件中Ingress Controller容器的 命令行参数。
  1. 运行入口控制器
  • 使用部署。默认情况下,当您通过部署运行Ingress Controller时,Kubernetes将创建一个Ingress Controller Pod。
    kubectl apply -f deployment/nginx-ingress.yaml
  • 使用DaemonSet:当您使用DaemonSet运行Ingress Controller时,Kubernetes将在集群的每个节点上创建一个Ingress controller pod。
    kubectl apply -f daemon-set/nginx-ingress.yaml
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值