(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Openshift】dataSourceによるPVC指定のバックアップがPending状態となる事象

スポンサーリンク

事象

作成済のPVCに対して

$ oc get pvc
NAME              STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
test-data   Bound    pvc-test-73e902635620   1Gi        RWO            XX   ...

pvc.spec.dataSource(RESOURCE: dataSource )を利用してクローンコピーを作成するもPVが作成されない。

$ oc get pvc
NAME              STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
test-data   Bound    pvc-test-73e902635620   1Gi        RWO            XX   ...
test-clone            Pending                                                                        XX ...
環境情報
$ oc get clusterversion
NAME      VERSION   AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.7.X    True        False        ...    Cluster version is 4.7.X

原因/解決策

コピー元のPVCのリソースよりも下記で指定しているリソースが小さいため

spec.resources.requests.storage

PVCのプロビジョニングフェーズで失敗している。

Warning  ProvisioningFailed    9s (x8 over 72s)  openshift-storage.rbd.csi.ceph.com_csi-rbdplugin-provisioner-b88dbc4c6-mnpbh_f0cce10b-e8f4-4ea2-b3f7-bc9ed64f7fbb  failed to provision volume with StorageClass "ocs-storagecluster-ceph-rbd": error getting handle for DataSource Type PersistentVolumeClaim by Name test-data: error, new PVC request must be greater than or equal in size to the specified PVC data source, requested 536870912 but source is 1073741824

リソースの値をあわせる,または大きく設定するとPVCのPending状態は解消し、PVが作成される。

$ oc get pvc
NAME              STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
test-data   Bound    pvc-test-73e902635620   1Gi        RWO            XX   ...
test-colne            Bound     pvc-test-c1ee946291e7   1Gi        RWO            XX ..

以下、補足です。

補足

以下のようにPVCを指定したPersistentVolumeのバックアップを行いましたが

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
        name: test-clone
  labels:
    app: xx
spec:
  storageClassName: xxx
  accessModes:
    - ReadWriteOnce
  dataSource:
    kind: PersistentVolumeClaim
    name: test-data
  resources:
    requests:
      storage: 0.5Gi

リクエストに指定した数値が低い場合はPendig状態で止まってしまいます。

尚、PVCが正常に作成できた際のEventは以下となっていました。

Events:
  Type    Reason                 Age   From                                                                                                               Message
  ----    ------                 ----  ----                                                                                                               -------
  Normal  Provisioning           4m3s  openshift-storage.rbd.csi.ceph.com_csi-rbdplugin-provisioner-b88dbc4c6-mnpbh_f0cce10b-e8f4-4ea2-b3f7-bc9ed64f7fbb  External provisioner is provisioning volume for claim "backup-review/test-1"
  Normal  ExternalProvisioning   4m3s  persistentvolume-controller                                                                                        waiting for a volume to be created, either by external provisioner "openshift-storage.rbd.csi.ceph.com" or manually created by system administrator
  Normal  ProvisioningSucceeded  4m2s  openshift-storage.rbd.csi.ceph.com_csi-rbdplugin-provisioner-b88dbc4c6-mnpbh_f0cce10b-e8f4-4ea2-b3f7-bc9ed64f7fbb  Successfully provisioned volume pvc-d611ee29-cb53-453a-8958-c1ee946291e7

以上です。