0/3 nodes are available: 3 pod has unbound immediate PersistentVolumeClaims.

1.在k8s中创建sc时,发现pod一直在pending状态

2.原因,在k8s 1.20版本后,由于性能影响,自动关闭了 selflink

3.解决办法

                4. 在配置文件中开启selflink

                    vim /etc/kubernetes/manifests/kube-apiserver.yaml

                    

spec:
  containers:
  - command:
    - kube-apiserver
    - --feature-gates=RemoveSelfLink=false #增加此行

                5. helm安装nfs驱动修改成自己的nfs服务器ip和path(属于使用不需要self-link的制备器)

                

 helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
 
 helm install nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \
    --set nfs.server=192.168.118.190 \
    --set nfs.path=/opt/jenkins

               2.修改自己的 StorageClass文件,将驱动修改成 helm安装的驱动接口

                 

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: managed-nfs-storage
  namespace: kube-system
provisioner: cluster.local/nfs-subdir-external-provisioner # 外部制备器提供者,编写为提供者的名称
parameters:
  archiveOnDelete: "false" 
reclaimPolicy: Retain 
volumeBindingMode: Immediate 

先删除所有的yaml文件,然后在重新启动yaml文件

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐