Pourquoi l'état de mon cluster de stockage Data Foundation d' OpenShift reste-t-il bloqué sur « Failed to reconcile »?
Cloud privé virtuel Infrastructure classique
Lorsque vous créez votre cluster de stockage OpenShift Data Foundation et que vous exécutez la commande oc describe storagecluster <storage-cluster-name>, une erreur s'affiche indiquant que les noms des PVC dépassent la limite
de caractères Kubernetes.
Les ensembles de périphériques sont des groupes de démons OSD ( Object Storage ) qu’ OpenShift Data Foundation utilise pour répartir les données au sein de votre cluster. Lorsque vous créez un cluster de stockage, OpenShift Data Foundation crée automatiquement des PVC pour ces ensembles de périphériques.
Lorsque vous exécutez la commande « describe », un message d'erreur similaire à celui de l'exemple suivant s'affiche.
ceph-cluster-controller: failed to reconcile. failed to reconcile cluster "ocs-storagecluster-cephcluster": failed to configure local ceph cluster: failed to create cluster: failed to start ceph osds: 3 failures encountered while running osds in namespace openshift-storage: failed to create "provision" job for node "ocs-deviceset-ibmc-vpc-block-metro-retain-10iops-tier-0-datnv6k". Job.batch "rook-ceph-osd-prepare-aaa000aaa111a1a0e10ba1a11aa1a119" is invalid: [spec.template.spec.volumes[8].name: Invalid value: "ocs-deviceset-ibmc-vpc-block-metro-retain-10iops-tier-0-aaaaa1b-bridge": must be no more than 63 characters
Les noms de réservation de volume persistant (PVC) Kubernetes doivent comporter moins de 63 caractères. Si vous disposez d'un cluster VPC multizone et que vous créez votre cluster de stockage Data Foundation d' OpenShift à l'aide d'une classe
de stockage de type « retain » (par exemple : ibmc-vpc-block-metro-retain-10iops-tier), les PVC du jeu de périphériques correspondant se voient attribuer des noms qui dépassent la limite de 63 caractères.
Créez une classe de stockage personnalisée avec un nom plus court afin de vous assurer que les noms des PVC générés respectent la limite de caractères imposée par Kubernetes.
-
Obtenez la configuration YAML de la classe de stockage à utiliser dans votre cluster de stockage ODF et sauvegardez-la dans un fichier de votre machine locale.
oc get sc ibmc-vpc-block-metro-retain-10iops-tier -o yaml -
Editez le nom de la classe de stockage. Assurez-vous que le nom de votre classe de stockage comporte moins de 30 caractères afin que les identifiants des ensembles de périphériques du cluster de stockage d' OpenShift Data Foundation respectent la limite de 63 caractères Kubernetes. Créez la classe de stockage dans votre cluster.
oc create -f <custom-storage-class.yaml> -
Nettoyez votre déploiement de Data Foundation d' OpenShift.
-
Créez un déploiement Data Foundation d' OpenShift qui utilise la classe de stockage que vous avez créée.