k8s 部署 Nginx Ingress Controller

一.下载yaml 文件

wget  https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.30.0/deploy/static/mandatory.yaml

二.修改 yaml

1.把文件中所有的 v1beta1 修改为 v1 ,因为 v1beta1 在 V1.17 之后就不推荐使用了,在V1.22之后将不可用

2.找到 nginx-ingress-controller 的配置,在 spec:template:spec: 节点下添加 hostNetwork: true

3.将 Deployment 改为 DaemonSet , 注释掉 replicas 属性, Deployment 部署的副本 Pod 会分布在各个 Node 上,每个 Node 都可能运行好几个副本。DaemonSet 的不同之处在于:每个 Node 上最多只能运行一个副本。

k8s 部署 Nginx Ingress Controller_第1张图片

三.拉取镜像

#查询需要拉取的镜像
cat mandatory.yaml | grep image    

在这里插入图片描述

#第一个下载速度很慢,推荐用第二个,**需要在每个 Worker Node上都拉取镜像,否则会有Pod 不能正常运行**
docker pull quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0

#或者
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:0.30.0

四.部署ingress-controller

kubectl apply -f mandatory.yaml

五.检查部署结果

kubectl -n ingress-nginx get all 

在这里插入图片描述

你可能感兴趣的:(运维,K8s,k8s,Ingress)