k8s ingress-nginx-controller 0.46.0 升级到 1.6.4

官网文档提到,只需替换镜像版本即可升级 ingress-nginx-controller

官方文档升级

寻找对应的ingress-nginx-controller版本

因为是 k8s 版本升级到1.24后导致的不兼容,所以我们要找到对应的版本的ingress
寻找对应版本地址

我们找到了比较合适的1.6.4版本

更新镜像时 @后的id如何查找

bash 复制代码
docker inspect registry.k8s.io/ingress-nginx/controller:v1.6.4 | grep -i sha256

我更新后遇到的权限缺失等问题

编辑权限配置文件

bash 复制代码
kubectl edit clusterrole -n ingress-nginx ingress-nginx

添加以下内容

yaml 复制代码
- apiGroups:
  - coordination.k8s.io
  resources:
  - leases
  verbs:
  - get
  - list
  - watch
  - create
  - update
- apiGroups:
  - discovery.k8s.io
  resources:
  - endpointslices
  verbs:
  - get
  - list
  - watch

Kubernetes v1.18+ 需要 IngressClass,执行以下命令检查

bash 复制代码
kubectl get ingressclass

如果 没有 nginx IngressClass,可以创建一个:

bash 复制代码
kubectl apply -f - <<EOF
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: nginx
spec:
  controller: k8s.io/ingress-nginx
EOF

然后,更新你的 Ingress:

bash 复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
  namespace: default
spec:
  ingressClassName: nginx
相关推荐
梦在深巷、1 小时前
nginx配置之负载均衡
运维·nginx·负载均衡
iRayCheung1 小时前
Kind方式部署k8s单节点集群并创建nginx服务对外访问
nginx·kubernetes·kind
小黑_深呼吸2 小时前
Prometheus实战教程:k8s平台-Mysql监控案例
运维·学习·kubernetes·prometheus
THMAIL2 小时前
mac M芯片运行docker-desktop异常问题
macos·docker·容器
家庭云计算专家3 小时前
还没用过智能文档编辑器吗?带有AI插件的ONLYOFFICE介绍
服务器·人工智能·docker·容器·编辑器
富士康质检员张全蛋4 小时前
云原生|kubernetes|kubernetes的etcd集群备份策略
云原生·kubernetes·etcd
慧一居士4 小时前
Kubernetes 中kind类型和各类型详细配置完整示例介绍
云原生·kubernetes·yaml配置
云手机管家6 小时前
CDN加速对云手机延迟的影响
运维·服务器·网络·容器·智能手机·矩阵·自动化
孤的心了不冷6 小时前
【Docker】CentOS 8.2 安装Docker教程
linux·运维·docker·容器·eureka·centos
头疼的程序员7 小时前
docker学习与使用(概念、镜像、容器、数据卷、dockerfile等)
学习·docker·容器