云原生 | k8s默认StorageClass,无法绑定pv,解决pvc一直处于“Pending”

一.报错问题
[root@k8s-master-1 nfs.4.0]# kubectl get sc
NAME                    PROVISIONER   RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
nfs-storage (default)   nfs-client    Delete          Immediate           false                  21h
二.查看pvc事件详情
[root@k8s-master-1 nfs.4.0]# kubectl describe pvc pmm-v
Name:          pmm-v
Namespace:     default
StorageClass:  nfs-storage
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: nfs-client
               volume.kubernetes.io/storage-provisioner: nfs-client
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type    Reason                Age                    From                         Message
  ----    ------                ----                   ----                         -------
  Normal  ExternalProvisioning  57m (x41 over 67m)     persistentvolume-controller  waiting for a volume to be created, either by external provisioner "nfs-client" or manually created by system administrator
  Normal  ExternalProvisioning  46m (x41 over 56m)     persistentvolume-controller  waiting for a volume to be created, either by external provisioner "nfs-client" or manually created by system administrator
  Normal  ExternalProvisioning  35m (x41 over 45m)     persistentvolume-controller  waiting for a volume to be created, either by external provisioner "nfs-client" or manually created by system administrator
  Normal  ExternalProvisioning  7m55s (x122 over 37m)  persistentvolume-controller  waiting for a volume to be created, either by external provisioner "nfs-client" or manually created by system administrator
  Normal  ExternalProvisioning  13s (x20 over 4m58s)   persistentvolume-controller  waiting for a volume to be created, either by external provisioner "nfs-client" or manually created by system administrator

# 从persistentvolume-controller反馈出来的信息是 没有权限来创建出pvc。
三.查看 nfs-provisioner pod日志
kubectl logs nfs-client-provisioner-5548ffc98f-b5h42 -n default 

# 注:Kubernetes 1.20及以后版本废弃了 selfLink 所致。
四.解决方案
# 修改kube-apiserver.yaml参数
vim /etc/kubernetes/manifests/kube-apiserver.yaml
添加 - --feature-gates=RemoveSelfLink=false 后重启apiserver
systemctl daemon-reload
systemctl restart kubelet

1.发现如下的新报错信息

[root@k8s-master-1 nfs.4.0]# kubectl get nodes
The connection to the server 192.168.112.156:6443 was refused - did you specify the right host or port?
sed -e '/insecure-port/s/^/#/g' -i /etc/kubernetes/manifests/kube-apiserver.yaml

2.问题解决

[root@k8s-master-1 ~]# kubectl get pvc
NAME    STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
pmm-v   Bound    pvc-80f08935-1358-4372-bb5a-737a5708ed67   10Gi       RWO            nfs-storage    3d22h

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值