今天升级Kubernetes
到1.24
,发现PVC
创建时一直处于pending
状态,经过检查发现,和之前遇到的问题一样,参考:升级Kubernetes V1.20后,pvc无法创建问题解决
然后检查/etc/kubernetes/manifests/kube-apiserver.yaml
文件,之前设置的RemoveSelfLink=false
,在升级后的确没有了,按照之前的方法增加,等待API Server
重启。
然而,kube-apiserver
启动不了了。
检查kube-apiserver
,发现RemoveSelfLink=false
在新的版本中已经不允许使用了。经过检查和验证,解决办法是更换nfs-client-provisioner
。
需要将nfs-client-provisioner
更换为nfs-subdir-external-provisioner
,我使用的是helm
部署,更换方法如下:
先增加
helm
库1
2helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner
helm repo update删除原来的部署
1
helm uninstall nfs-prod
修改
value
文件,新的文件如下1
2
3
4
5
6
7
8
9
10image:
repository: registry.cn-shanghai.aliyuncs.com/c7n/nfs-subdir-external-provisioner
storageClass:
name: <name>
archiveOnDelete: false
defaultClass: true
nfs:
server: <nfs-ip>
path: <nfs-path>
nodeSelector: {}重新部署
1
helm install <name> nfs-subdir-external-provisioner/nfs-subdir-external-provisioner -f <value file>
测试正常。