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
相关推荐
IKun-bug2 小时前
在mac中安装Colima使用docker(替代Docker Desktop)
docker·容器·k8s
凤山老林6 小时前
CentOS 安装 Docker
linux·运维·docker·容器·centos
若云止水9 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_ssl_version 函数
nginx·ubuntu·ssl
一行114 小时前
docker配置国内源
运维·docker·容器
嘻嘻哈哈1715 小时前
docker搭建mysql
mysql·docker·容器
鸵鸟爸爸15 小时前
Kubernetes 最佳实践:Top 10 常见 DevOps/SRE 面试问题及答案
云原生·容器·kubernetes·devops
Мартин.18 小时前
[Meachines] [Easy] Broker Apache MQ RCE+Nginx ngx_http_dav_module权限提升
nginx·http·apache
007php0071 天前
Docker、Ollama、Dify 及 DeepSeek 安装配置与搭建企业级本地私有化知识库实践
运维·服务器·开发语言·后端·docker·容器·云计算
世界尽头与你1 天前
【网络法医】Docker取证
运维·安全·网络安全·docker·容器