Local Storage Operator - Fichier
Configurer un stockage persistant à l'aide de volumes locaux pour IBM Cloud Satellite® Les clusters.You s peuvent utiliser les modèles de stockage Satellite pour créer des configurations de stockage. Lorsque vous affectez une configuration de stockage à vos clusters, les pilotes de stockage du fournisseur de stockage sélectionné sont installés dans votre cluster.
Lorsque vous créez une configuration de stockage de fichiers local, vous spécifiez les périphériques de stockage local que vous souhaitez mettre à disposition sous forme de volumes persistants (PV) dans vos clusters. Une fois que vous avez affecté
la configuration de stockage à un cluster, Satellite déploie l'opérateur de stockage local qui monte les disques locaux que vous avez spécifiés dans votre configuration. L'opérateur crée également les volumes persistants avec le type de système
de fichiers que vous spécifiez et crée la classe de stockage sat-local-file-gold que vous pouvez utiliser pour créer des réservations de volume persistant (PVC). Vous pouvez alors faire référence à vos réservations de volume persistant
dans vos charges de travail Kubernetes.
Avant de pouvoir déployer des modèles de stockage dans les clusters de votre site, assurez-vous d'avoir configuré Satellite Config en sélectionnant l'option Enable cluster admin access for Satellite Config dans la console ou en
incluant l'option --enable-config-admin lorsque vous créez votre cluster.
Vous ne pouvez pas étendre le service de stockage Satellite aux groupes de ressources. Toutefois, si vous attribuez des groupes de ressources à d'autres ressources telles que l'emplacement et le cluster, vous devez ajouter le lecteur Satellite et le rôle d'administrateur de liens pour toutes les ressources du compte.
Prérequis pour le stockage de fichiers local
Avant de créer une configuration de stockage de fichiers local, vous devez identifier les noeuds worker de vos clusters qui disposent des disques disponibles requis. Libellez ensuite ces noeuds worker de sorte que les pilotes de stockage local ne soient installés que sur ces noeuds worker.
-
Si vous ne disposez pas de clusters dans votre emplacement, créez un cluster Red Hat OpenShift on IBM Cloud ou connectez des clusters Red Hat OpenShift on IBM Cloud existants à votre emplacement. Vérifiez que les noeuds worker de votre cluster que vous souhaitez utiliser dans votre configuration de stockage disposent d'au moins un disque local disponible en plus des disques requis par Satellite. Les disques supplémentaires ne doivent pas être formatés.
-
Libellez les noeuds worker qui disposent d'un disque disponible et que vous souhaitez utiliser dans votre configuration. Les pilotes de stockage local ne sont installés que sur les noeuds worker libellés.
Obtention des détails des périphériques pour votre configuration de stockage de fichiers local
Lorsque vous créez votre configuration de stockage de fichiers, vous devez spécifier les périphériques à utiliser. Les chemins d'accès aux périphériques que vous extrayez dans les étapes ci-après sont spécifiés en tant que paramètres lorsque vous créez votre configuration.
-
Connectez-vous à votre cluster pour obtenir une liste des noeuds worker disponibles. Notez les noeuds worker à utiliser dans votre configuration.
oc get nodes -
Connectez-vous à chaque noeud worker à utiliser pour votre configuration de stockage local.
oc debug node/<node-name> -
Une fois que le pod de débogage a été déployé sur le noeud worker, exécutez les commandes ci-après pour répertorier les disques disponibles sur le noeud worker.
- Autorisez les binaires hôte.
chroot /host ``` 2. Répertoriez vos périphériques. ```sh {: pre} lsblk ``` 3. Obtenez les détails de vos périphériques. Vérifiez que les périphériques à utiliser sont non montés et non formatés. ```sh {: pre} fdisk -l ``` -
Recherchez les disques disponibles dans la sortie de la commande. Vous devez utiliser des disques non montés pour la configuration de stockage local. Dans l'exemple de sortie ci-après de la commande
lsblk, le disquexvdcn'est pas monté et ne possède pas de partition.NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 100G 0 disk |-xvda1 202:1 0 1G 0 part /boot `-xvda2 202:2 0 99G 0 part / xvdb 202:16 0 2G 0 disk `-xvdb1 202:17 0 2G 0 part xvdc 202:32 0 100G 0 disk xvde 202:64 0 50G 0 disk /var/data xvdh 202:112 0 64M 0 disk -
Répétez les étapes précédentes pour chaque noeud worker à utiliser pour votre configuration de stockage de fichiers local.
Etiquetage de vos noeuds worker lors de l'utilisation du stockage de fichiers local
Une fois que vous avez extrait les chemins d'accès aux disques à utiliser dans votre configuration, libellez les noeuds worker contenant les disques.
-
Obtenez les adresses IP des noeuds worker.
oc get nodes -
Libellez les noeuds worker que vous avez extraits précédemment. Les pilotes du stockage local sont déployés sur les noeuds worker avec ce libellé. Vous pouvez utiliser le libellé
storage=local-filede l'exemple de commande ou créer votre propre libellé au formatkey=value.oc label nodes <worker-IP> <worker-IP> "storage=local-file"Exemple de sortie
node/<worker-IP> labeled node/<worker-IP> labeled -
Vérifiez que le libellé est ajouté aux noeuds worker à utiliser. Exécutez la commande suivante pour afficher les libellés sur vos noeuds worker et mettre en évidence le libellé que vous avez ajouté à l'étape précédente.
oc get nodes --show-labels | grep --color=always storage=local-file
Création et affectation d'une configuration dans la console
-
Dans la console Locations, sélectionnez l'emplacement où vous souhaitez créer une configuration de stockage.
-
Sélectionnez Stockage > Créer une configuration de stockage
-
Entrez un nom pour votre configuration.
-
Sélectionnez le type de stockage.
-
Sélectionnez la version, puis cliquez sur Suivant
-
Si le Type de stockage que vous avez sélectionné accepte des paramètres personnalisés, entrez-les dans l'onglet Paramètres.
-
Si le Type de stockage que vous avez sélectionné requiert des secrets, entrez-les dans l'onglet Secrets.
-
Dans l'onglet Classes de stockage, consultez les classes de stockage déployées par la configuration ou créez une classe de stockage personnalisée.
-
Dans l'onglet Affecter au service, sélectionnez le service auquel vous souhaitez affecter votre configuration.
-
Cliquez sur Terminé pour affecter votre configuration de stockage.
Création d'une configuration dans l'interface de ligne de commande (CLI)
-
Passez en revue la référence de paramètre pour la version de modèle que vous souhaitez utiliser.
-
Connectez-vous à l'interface de ligne de commande IBM Cloud.
ibmcloud login -
Répertoriez vos emplacements Satellite et notez la colonne
Managed from.ibmcloud sat location ls -
Ciblez la région
Managed fromde votre emplacement Satellite. Par exemple, pourwdc, ciblezus-east. Pour plus d'informations, voir Régions Satellite.ibmcloud target -r us-east -
Si vous utilisez un groupe de ressources autre que
default, ciblez-le.ibmcloud target -g RESOURCE_GROUP -
Copiez l'un des exemples de commande suivants pour la version de modèle que vous souhaitez utiliser. Pour plus d'informations sur la commande, voir
ibmcloud sat storage config createdans la référence de commande.Exemple de commande permettant de créer une configuration de version 4.9.
ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-volume-file --template-version 4.9 --param "auto-discover-devices=AUTO-DISCOVER-DEVICES" --param "label-key=LABEL-KEY" --param "label-value=LABEL-VALUE" --param "devicepath=DEVICEPATH" --param "fstype=FSTYPE"Exemple de commande permettant de créer une configuration de version 4.10.
ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-volume-file --template-version 4.10 --param "auto-discover-devices=AUTO-DISCOVER-DEVICES" --param "label-key=LABEL-KEY" --param "label-value=LABEL-VALUE" --param "devicepath=DEVICEPATH" --param "fstype=FSTYPE"Exemple de commande permettant de créer une configuration de version 4.11.
ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-volume-file --template-version 4.11 --param "auto-discover-devices=AUTO-DISCOVER-DEVICES" --param "label-key=LABEL-KEY" --param "label-value=LABEL-VALUE" --param "devicepath=DEVICEPATH" --param "fstype=FSTYPE"Exemple de commande permettant de créer une configuration de version 4.12.
ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-volume-file --template-version 4.12 --param "auto-discover-devices=AUTO-DISCOVER-DEVICES" --param "label-key=LABEL-KEY" --param "label-value=LABEL-VALUE" --param "devicepath=DEVICEPATH" --param "fstype=FSTYPE"Exemple de commande permettant de créer une configuration de version 4.13.
ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-volume-file --template-version 4.13 --param "auto-discover-devices=AUTO-DISCOVER-DEVICES" --param "label-key=LABEL-KEY" --param "label-value=LABEL-VALUE" --param "devicepath=DEVICEPATH" --param "fstype=FSTYPE" -
Personnalisez la commande en fonction des paramètres que vous souhaitez utiliser.
-
Exécutez la commande pour créer une configuration.
-
Vérifiez que votre configuration a bien été créée.
ibmcloud sat storage config get --config CONFIG
Création d'une configuration dans l'interface de programmation d'application (API)
-
Générez une clé d'API, puis demandez un jeton d'actualisation. Pour plus d’informations, consultez la section Génération d’un jeton IAM(IBM Cloud Identity and Access Management)à l’aide d’une clé API.
-
Passez en revue la référence de paramètre pour la version de modèle que vous souhaitez utiliser.
-
Copiez l'un des exemples de demande suivants et remplacez les variables que vous souhaitez utiliser.
Exemple de demande de création d'une configuration de version 4.9.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"local-volume-file\", \"storage-template-version\": \"4.9\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"AUTO-DISCOVER-DEVICES\", { \"entry.name\": \"LABEL-KEY\", { \"entry.name\": \"LABEL-VALUE\", { \"entry.name\": \"DEVICEPATH\", { \"entry.name\": \"FSTYPE\",\"user-secret-parameters\": }Exemple de demande de création d'une configuration de version 4.10.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"local-volume-file\", \"storage-template-version\": \"4.10\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"AUTO-DISCOVER-DEVICES\", { \"entry.name\": \"LABEL-KEY\", { \"entry.name\": \"LABEL-VALUE\", { \"entry.name\": \"DEVICEPATH\", { \"entry.name\": \"FSTYPE\",\"user-secret-parameters\": }Exemple de demande de création d'une configuration de version 4.11.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"local-volume-file\", \"storage-template-version\": \"4.11\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"AUTO-DISCOVER-DEVICES\", { \"entry.name\": \"LABEL-KEY\", { \"entry.name\": \"LABEL-VALUE\", { \"entry.name\": \"DEVICEPATH\", { \"entry.name\": \"FSTYPE\",\"user-secret-parameters\": }Exemple de demande de création d'une configuration de version 4.12.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"local-volume-file\", \"storage-template-version\": \"4.12\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"AUTO-DISCOVER-DEVICES\", { \"entry.name\": \"LABEL-KEY\", { \"entry.name\": \"LABEL-VALUE\", { \"entry.name\": \"DEVICEPATH\", { \"entry.name\": \"FSTYPE\",\"user-secret-parameters\": }Exemple de demande de création d'une configuration de version 4.13.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"local-volume-file\", \"storage-template-version\": \"4.13\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"AUTO-DISCOVER-DEVICES\", { \"entry.name\": \"LABEL-KEY\", { \"entry.name\": \"LABEL-VALUE\", { \"entry.name\": \"DEVICEPATH\", { \"entry.name\": \"FSTYPE\",\"user-secret-parameters\": }
Création d'une affectation dans l'interface de ligne de commande (CLI)
-
Répertoriez vos configurations de stockage et notez celle que vous souhaitez attribuer à vos clusters.
ibmcloud sat storage config ls -
Récupérez l'ID du cluster, du groupe de clusters ou du service auquel vous souhaitez attribuer un espace de stockage.
Pour vous assurer que votre cluster est enregistré dans Satellite Config ou pour créer des groupes, reportez-vous à la rubrique Configuration des clusters à utiliser avec Satellite Config.
Exemple de commande permettant de répertorier les groupes de clusters.
ibmcloud sat group lsExemple de commande permettant de répertorier les clusters.
ibmcloud oc cluster ls --provider satelliteExemple de commande permettant de répertorier les services Satellite.
ibmcloud sat service ls --location LOCATION -
Affectez votre configuration de stockage au cluster, au groupe ou au service que vous avez extrait précédemment. Pour plus d'informations, consultez la commande
ibmcloud sat storage assignment create.Exemple de commande permettant d'affecter une configuration à un groupe de clusters.
ibmcloud sat storage assignment create --group GROUP --config CONFIG --name NAMEExemple de commande permettant d'affecter une configuration à un cluster.
ibmcloud sat storage assignment create --cluster CLUSTER --config CONFIG --name NAMEExemple de commande permettant d'affecter une configuration à un cluster de services.
ibmcloud sat storage assignment create --service-cluster-id CLUSTER --config CONFIG --name NAME -
Vérifiez que votre affectation a été créée.
ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER)
Création d’une affectation de stockage dans l’interface de programmation d’application (API)
-
Copiez l'un des exemples de demande suivants.
Exemple de demande d'affectation d'une configuration à un cluster.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createAssignmentByCluster" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"channelName\": \"CONFIGURATION-NAME\", \"cluster\": \"CLUSTER-ID\", \"controller\": \"LOCATION-ID\", \"name\": \"ASSIGNMENT-NAME\"}"Exemple de demande d' affectation de la configuration à un groupe de clusters.
curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createAssignment" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"channelName\": \"CONFIGURATION-NAME\", \"cluster\": \"string\", \"groups\": [ \"CLUSTER-GROUP\" ], \"name\": \"ASSIGNMENT-NAME\"}" -
Remplacez les variables par vos détails et exécutez la demande.
-
Vérifiez que l'affectation a été créée en répertoriant vos affectations.
curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignments" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
Mise à jour des affectations de stockage dans la console
Vous pouvez utiliser la consoleSatellite pour appliquer les dernières mises à jour de correctif à vos affectations.
-
Dans la page Emplacements de la console Satellite, sélectionnez votre emplacement.
-
Cliquez sur l'onglet Stockage pour afficher vos configurations.
-
Cliquez sur la configuration que vous souhaitez mettre à jour.
-
Cliquez sur l'icône Informations (i) pour appliquer la dernière révision ou le dernier correctif.
-
Facultatif: activez les mises à jour de correctif automatiques pour votre affectation de stockage. L'activation des mises à jour de correctifs automatiques garantit que votre affectation dispose toujours des derniers correctifs de sécurité.
Si vous activez les mises à jour de correctifs automatiques, vous devez toujours appliquer les mises à jour majeures manuellement.
Mise à niveau manuelle des affectations dans l'interface de ligne de commande
Mettez à niveau une affectation pour utiliser la dernière révision de modèle de stockage.
-
Répertoriez vos affectations de stockage Satellite, notez l'affectation Satellite que vous souhaitez mettre à niveau.
ibmcloud sat storage assignment ls -
Répertoriez les modèles de stockage Satellite pour afficher les dernières versions disponibles.
ibmcloud sat storage template ls -
Mettez à niveau l'affectation Satellite.
Exemple de commande permettant de mettre à niveau une affectation.
ibmcloud sat storage assignment upgrade --assignment ASSIGNMENT
Activation des mises à jour de correctifs automatiques pour les configurations et les affectations dans l'interface de ligne de commande
Vous pouvez utiliser l'interface de ligne de commande sat storage assignment autopatch enable pour activer les mises à jour de correctif automatiques pour vos affectations. L'activation des mises à jour de correctif automatiques
applique automatiquement les dernières révisions de modèle de stockage (correctifs). Vous devez toujours appliquer les mises à jour majeures manuellement.
-
Permet d'afficher la liste des configurations de stockage Satellite. Notez l'identifiant de configuration.
ibmcloud sat storage assignment ls -
Exécutez l'un des exemples de commande suivants pour activer les mises à jour de correctifs automatiques pour votre configuration et les affectations qui lui sont associées. Saisissez l'ID de configuration que vous avez récupéré à l'étape précédente.
Exemple de commande permettant d'activer les mises à jour de correctif automatiques pour une affectation.
ibmcloud sat storage assignment autopatch enable --config CONFIG (--all | --assignment ASSIGNMENT-ID [--assignment ASSIGNMENT-ID])Exemple de commande permettant d'activer les mises à jour de correctifs automatiques pour toutes les affectations de stockage dans une configuration donnée.
ibmcloud sat storage assignment autopatch enable --config CONFIG --allExemple de commande permettant de désactiver les mises à jour de correctifs automatiques pour toutes les affectations sous une configuration spécifique.
ibmcloud sat storage assignment autopatch disable --config CONFIG --allExemple de commande permettant de désactiver les mises à jour de correctifs automatiques pour une affectation unique et une configuration spécifique.
ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-IDExemple de commande permettant de désactiver les mises à jour de correctifs automatiques pour une affectation multiple et une configuration spécifique.
ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-ID --assignment ASSIGNMENT-ID
Mise à niveau manuelle des configurations dans l'interface de ligne de commande
Vous pouvez mettre à niveau vos configurations de stockage Satellite afin d'obtenir la dernière révision du modèle de stockage au sein de la même version majeure.
-
Répertoriez vos configurations de stockage Satellite, notez la configuration Satellite à mettre à niveau.
ibmcloud sat storage config ls -
Mettez à niveau la configuration Satellite. Notez que seule la configuration est mise à jour. Si vous souhaitez mettre à niveau les affectations qui utilisent cette configuration, vous pouvez spécifier l'option
--include-assignmentsou mettre à jour manuellement chaque affectation à l'aide de la commandeassignment update.Exemple de commande permettant de mettre à niveau une configuration vers la dernière révision.
ibmcloud sat storage config upgrade --config CONFIG [--include-assignments]Exemple de commande permettant de mettre à jour une configuration et les affectations qui y sont associées vers la dernière révision.
ibmcloud sat storage config upgrade --config CONFIG --include-assignments
Mise à niveau d'une configuration et d'affectations dans l'API
Vous pouvez utiliser l'API /v2/storage/satellite/updateAssignment pour mettre à jour vos affectations avec de nouveaux clusters
ou groupes de clusters. Définissez updateConfigVersion sur true pour appliquer la mise à jour de la révision.
-
Copiez l'exemple de demande suivant et remplacez les variables pour les groupes de clusters et les affectations que vous souhaitez mettre à jour.
curl -X PATCH "https://containers.cloud.ibm.com/global/v2/storage/satellite/updateAssignment" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"groups\": [ \"CLUSTER-GROUPS\" ], \"name\": \"ASSIGNMENT-NAME\", \"updateConfigVersion\": true, \"uuid\": \"ASSIGNMENT-ID\"}" -
Exécutez la demande.
-
Obtenez les détails de votre affectation pour vérifier la mise à jour.
curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
Activation des mises à jour de correctif automatiques pour les affectations dans l'API
Vous pouvez utiliser l'API /v2/storage/satellite/setAssignmentAutoupgrade pour activer les mises à jour de correctif automatiques pour vos affectations. L'activation des mises à jour de correctif automatiques applique automatiquement
les dernières révisions de modèle de stockage (correctifs). Vous devez toujours appliquer les mises à jour majeures manuellement.
-
Copiez l'exemple de demande suivant et remplacez les variables pour les groupes de clusters et les affectations que vous souhaitez mettre à jour.
curl -X PATCH "https://containers.cloud.ibm.com/global/v2/storage/satellite/setAssignmentAutoupgrade" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d { "config": "string", "controller": "string", "autopatch": boolean,"assignment" : { "all": boolean, "uuid": ["string", "string", ...], } } -
Exécutez la demande.
-
Obtenez les détails de votre affectation pour vérifier la mise à niveau.
curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -
Vérifiez que les ressources de configuration de stockage sont déployées. Obtenez une liste de toutes les ressources de l'espace de noms
local-storage.oc get all -n local-storageExemple de sortie
NAME READY STATUS RESTARTS AGE pod/local-disk-local-diskmaker-cpk4r 1/1 Running 0 30s pod/local-disk-local-provisioner-xstjh 1/1 Running 0 30s pod/local-storage-operator-96c444dfc-ttpmq 1/1 Running 0 35s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/local-storage-operator ClusterIP 172.21.173.238 <none> 60000/TCP 32s NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE daemonset.apps/local-disk-local-diskmaker 1 1 1 1 1 <none> 31s daemonset.apps/local-disk-local-provisioner 1 1 1 1 1 <none> 31s NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/local-storage-operator 1/1 1 1 36s NAME DESIRED CURRENT READY AGE replicaset.apps/local-storage-operator-96c444dfc 1 1 1 37s -
Répertoriez les classes de stockage disponibles.
oc get sc -n local-storage | grep localExemple de sortie
sat-local-file-gold kubernetes.io/no-provisioner Delete WaitForFirstConsumer false 21m -
Répertoriez les volumes persistants et vérifiez que le statut est
Available. Les disques locaux que vous avez spécifiés lors de la création de votre configuration sont disponibles en tant que volumes persistants.oc get pvExemple de sortie
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1d14680 50Gi RWO Delete Available sat-local-file-gold 50s
Déploiement d'une application qui utilise votre stockage de fichiers local
Une fois que vous avez créé une configuration de stockage de fichiers local et l'avez affectée à vos clusters, vous pouvez créer une application qui utilise votre stockage de fichiers local.
Vous pouvez mapper vos réservations de volume persistant à des volumes persistants spécifiques en ajoutant des libellés à ces derniers. Pour plus d'informations, voir la documentation Kubernetes relative aux sélecteurs.
-
Sauvegardez le fichier YAML ci-après dans un fichier appelé
local-pvc.yamlsur votre machine locale.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: local-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem resources: requests: storage: 20Gi # Important: Ensure that size of your claim is not larger than the local disk. storageClassName: sat-local-file-gold -
Créez la PVC dans votre cluster.
oc create -f local-pvc.yaml -
Vérifiez que votre réservation de volume persistant a été créée.
oc get pvc | grep localPour vous assurer que vos pods sont planifiés sur des noeuds worker disposant de stockage ou que les applications qui requièrent du stockage ne sont pas préemptées par d'autres pods, vous pouvez spécifier
nodeAffinityet configurer la priorité des pods. Pour plus d'informations, reportez-vous à la documentation Kubernetes relative à la préemption et la priorité des pods et à la définition de l'affinité des noeuds. -
Déployez un pod d'application qui utilise votre réservation de volume persistant de stockage local. Sauvegardez l'exemple de fichier YAML d'application ci-après dans un fichier appelé
app.yamlsur votre machine locale. Ce pod écrit la date dans un fichier appelétest.txt. Veillez à saisir le nom de la réservation de volume persistant que vous avez créée précédemment. Dans cet exemple, la spécificationnodeAffinitygarantit que ce pod n'est planifié que sur un noeud worker possédant le libellé spécifié.apiVersion: v1 kind: Pod metadata: name: app spec: affinity: null nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: storage operator: In values: - local-file volumes: - name: local-pvc persistentVolumeClaim: claimName: local-pvc containers: - name: local-disks image: nginx ports: - containerPort: 80 name: http-server volumeMounts: - mountPath: <mount-path-to-local-disk> name: local-pvc -
Créez le pod d'application dans votre cluster.
oc create -f app.yaml -
Connectez-vous à votre pod d'application et vérifiez que vous pouvez écrire sur votre disque local.
kubectl exec <app-pod> -it bash -
Exécutez la commande ci-après pour accéder à l'emplacement de votre disque local, écrire le fichier test.txt et afficher le contenu de ce fichier.
cd /<mount-path-to-local-disk> && echo "This is a test." >> test.txt && cat test.txtExemple de sortie
This is a test. -
Supprimez le fichier de test et déconnectez-vous du pod.
rm test.txt && exit
Suppression de la configuration de stockage de fichiers local de votre cluster
Si vous n'avez plus l'intention d'utiliser le stockage de fichiers local dans votre cluster, vous pouvez annuler l'affectation de votre cluster de la configuration de stockage.
Notez que si vous supprimez la configuration de stockage, les ressources de l'opérateur de stockage local et la classe de stockage sat-local-file-gold sont désinstallées de tous les clusters affectés. Vos réservations de volume
persistant, vos volumes persistants et vos données ne sont pas supprimés. Cependant, vous ne pourrez pas accéder à vos données tant que vous n'aurez pas réinstallé le pilote dans votre cluster.
Suppression de la configuration de stockage de fichiers local à partir de la console
Utilisez la console pour supprimer une configuration de stockage.
- Dans le tableau de bord de stockage Satellite; sélectionnez la configuration de stockage à supprimer.
- Sélectionnez Actions > Supprimer
- Entrez le nom de votre configuration de stockage.
- Sélectionnez Supprimer.
Suppression de la configuration de stockage de fichiers local à partir de l'interafce de ligne de commande
-
Répertoriez les ressources de l'espace de noms
local-storage. Lorsque vous supprimez votre affectation de stockage, ces ressources sont supprimées.oc get all -n local-storageExemple de sortie
NAME READY STATUS RESTARTS AGE pod/local-disk-local-diskmaker-clvg6 1/1 Running 0 29h pod/local-disk-local-diskmaker-kqddq 1/1 Running 0 29h pod/local-disk-local-diskmaker-p6z9q 1/1 Running 0 29h pod/local-disk-local-provisioner-dw5g7 1/1 Running 0 29h pod/local-disk-local-provisioner-hxd9n 1/1 Running 0 29h pod/local-disk-local-provisioner-tfg95 1/1 Running 0 29h pod/local-storage-operator-df4994656-7826l 1/1 Running 0 29h NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/local-storage-operator ClusterIP 172.21.147.17 <none> 60000/TCP 29h NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE daemonset.apps/local-disk-local-diskmaker 3 3 3 3 3 <none> 29h daemonset.apps/local-disk-local-provisioner 3 3 3 3 3 <none> 29h NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/local-storage-operator 1/1 1 1 29h NAME DESIRED CURRENT READY AGE replicaset.apps/local-storage-operator-df4994656 1 1 1 29h -
Répertoriez vos affectations de stockage et recherchez celle que vous avez utilisée pour votre cluster.
ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER) -
Supprimez l'affectation. Une fois que l'affectation a été supprimée, les pods du pilote de stockage local et les classes de stockage sont supprimés de tous les clusters qui faisaient partie de l'affectation de stockage.
ibmcloud sat storage assignment rm --assignment <assignment_ID> -
Répertoriez les ressources de l'espace de noms
local-storageet vérifiez que les pods du pilote de stockage local ont été supprimés.oc get all -n local-storageExemple de sortie
No resources found in local-storage namespace. -
Répertoriez les classes de stockage de votre cluster et vérifiez que les classes de stockage local ont été supprimées.
oc get sc -
Facultatif : supprimez la configuration de stockage.
- Répertoriez les configurations de stockage.
ibmcloud sat storage config ls ``` 2. Supprimez la configuration de stockage. ```sh {: pre} ibmcloud sat storage config rm --config <config_name> ``` -
Répertoriez vos réservations de volume persistant et notez le nom de celle à supprimer.
oc get pvc -
Supprimez les pods qui montent actuellement la réservation de volume persistant.
- Répertoriez tous les pods qui montent actuellement la réservation de volume persistant à supprimer. Si aucun pod n'est renvoyé, aucun pod n'utilise actuellement votre réservation de volume persistant.
oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>" ``` Exemple de sortie ```sh {: screen} app sat-local-file-gold ``` 2. Supprimez le pod utilisant la PVC. Si le pod fait partie d'un déploiement, retirez ce déploiement. ```sh {: pre} oc delete pod <pod_name> ``` ```sh {: pre} oc delete deployment <deployment-name> ``` 3. Vérifiez que le pod ou le déploiement a été supprimé. ```sh {: pre} oc get pods ``` ```sh {: pre} oc get deployments ``` -
Supprimez la réservation de volume persistant. Étant donné que toutes les classes de stockage de fichiers locaux fournies par IBM sont associées à une politique de récupération
Retain, les PV et PVC ne sont pas automatiquement supprimés lorsque vous supprimez votre application ou votre déploiement.oc delete pvc <pvc-name> -
Vérifiez que votre réservation de volume persistant a été supprimée.
oc get pvc -
Répertoriez vos volumes persistants et notez le nom de celui à supprimer.
oc get pv -
Supprimez les volumes persistants. Une fois que vos volumes persistants ont été supprimés, vos disques deviennent disponibles pour les autres charges de travail.
oc delete pv <pv-name> -
Vérifiez que votre volume persistant a été supprimé.
oc get pv
Référence de paramètre
Référence du paramètre 4.9
| Nom d'affichage | Option CLI | Type | Description | Valeur par défaut |
|---|---|---|---|---|
| Reconnaissance automatique des volumes de stockage | auto-discover-devices |
Config | Affectez la valeur 'true' si vous souhaitez reconnaître et utiliser automatiquement les volumes de stockage sur vos noeuds worker. | false |
| Clé de libellé de noeud | label-key |
Config | La 'clé' du libellé 'clé=valeur' du noeud worker. | N/A |
| Valeur de clé de libellé de noeud | label-value |
Config | La 'valeur' du libellé 'clé=valeur' du noeud worker. | N/A |
| Chemin d'accès à l'unité | devicepath |
Config | Chemin de l'unité de stockage locale. Exemple : '/dev/sdc'. Obligatoire si 'auto-discover-devices' est défini sur 'false'. | N/A |
| Type de système de fichiers | fstype |
Config | Type du système de fichiers. Spécifiez 'ext3', 'ext4' ou 'xfs'. | ext4 |
Référence du paramètre 4.10
| Nom d'affichage | Option CLI | Type | Description | Valeur par défaut |
|---|---|---|---|---|
| Reconnaissance automatique des volumes de stockage | auto-discover-devices |
Config | Affectez la valeur 'true' si vous souhaitez reconnaître et utiliser automatiquement les volumes de stockage sur vos noeuds worker. | false |
| Clé de libellé de noeud | label-key |
Config | La 'clé' du libellé 'clé=valeur' du noeud worker. | N/A |
| Valeur de clé de libellé de noeud | label-value |
Config | La 'valeur' du libellé 'clé=valeur' du noeud worker. | N/A |
| Chemin d'accès à l'unité | devicepath |
Config | Chemin de l'unité de stockage locale. Exemple : '/dev/sdc'. Obligatoire si 'auto-discover-devices' est défini sur 'false'. | N/A |
| Type de système de fichiers | fstype |
Config | Type du système de fichiers. Spécifiez 'ext3', 'ext4' ou 'xfs'. | ext4 |
Référence du paramètre 4.11
| Nom d'affichage | Option CLI | Type | Description | Valeur par défaut |
|---|---|---|---|---|
| Reconnaissance automatique des volumes de stockage | auto-discover-devices |
Config | Affectez la valeur 'true' si vous souhaitez reconnaître et utiliser automatiquement les volumes de stockage sur vos noeuds worker. | false |
| Clé de libellé de noeud | label-key |
Config | La 'clé' du libellé 'clé=valeur' du noeud worker. | N/A |
| Valeur de clé de libellé de noeud | label-value |
Config | La 'valeur' du libellé 'clé=valeur' du noeud worker. | N/A |
| Chemin d'accès à l'unité | devicepath |
Config | Chemin de l'unité de stockage locale. Exemple : '/dev/sdc'. Obligatoire si 'auto-discover-devices' est défini sur 'false'. | N/A |
| Type de système de fichiers | fstype |
Config | Type du système de fichiers. Spécifiez 'ext3', 'ext4' ou 'xfs'. | ext4 |
Référence des paramètres 4.12
| Nom d'affichage | Option CLI | Type | Description | Valeur par défaut |
|---|---|---|---|---|
| Reconnaissance automatique des volumes de stockage | auto-discover-devices |
Config | Affectez la valeur 'true' si vous souhaitez reconnaître et utiliser automatiquement les volumes de stockage sur vos noeuds worker. | false |
| Clé de libellé de noeud | label-key |
Config | La 'clé' du libellé 'clé=valeur' du noeud worker. | N/A |
| Valeur de clé de libellé de noeud | label-value |
Config | La 'valeur' du libellé 'clé=valeur' du noeud worker. | N/A |
| Chemin d'accès à l'unité | devicepath |
Config | Chemin de l'unité de stockage locale. Exemple : '/dev/sdc'. Obligatoire si 'auto-discover-devices' est défini sur 'false'. | N/A |
| Type de système de fichiers | fstype |
Config | Type du système de fichiers. Spécifiez 'ext3', 'ext4' ou 'xfs'. | ext4 |
Référence du paramètre 4.13
| Nom d'affichage | Option CLI | Type | Description | Valeur par défaut |
|---|---|---|---|---|
| Reconnaissance automatique des volumes de stockage | auto-discover-devices |
Config | Affectez la valeur 'true' si vous souhaitez reconnaître et utiliser automatiquement les volumes de stockage sur vos noeuds worker. | false |
| Clé de libellé de noeud | label-key |
Config | La 'clé' du libellé 'clé=valeur' du noeud worker. | N/A |
| Valeur de clé de libellé de noeud | label-value |
Config | La 'valeur' du libellé 'clé=valeur' du noeud worker. | N/A |
| Chemin d'accès à l'unité | devicepath |
Config | Chemin de l'unité de stockage locale. Exemple : '/dev/sdc'. Obligatoire si 'auto-discover-devices' est défini sur 'false'. | N/A |
| Type de système de fichiers | fstype |
Config | Type du système de fichiers. Spécifiez 'ext3', 'ext4' ou 'xfs'. | ext4 |
Référence de classe de stockage pour le stockage de fichiers local
Examinez les classes de stockage Satellite du stockage de fichiers local. Vous pouvez décrire des classes de stockage dans la ligne de commande à l'aide de la commande oc describe sc <storage-class-name>.
| Nom de la classe de stockage | Système de fichiers | Stratégie de récupération |
|---|---|---|
sat-local-file-gold |
ext4 ou xfs |
Conserver |
Obtenir de l'aide et du support pour le stockage de fichiers locaux
- Consultez la foire aux questions dans la documentationRed Hat OpenShift.
- Consultez la documentation relative au traitement des incidents pour identifier et résoudre les problèmes courants.
- Vérifiez l'état de la plateforme et des ressources d' IBM Cloud en vous rendant sur la page d'état.
- Consultez Stack Overflow pour voir si d'autres utilisateurs ont rencontré le même problème. Etiquetez les questions avec ibm-cloud afin qu'elles soient vues par les équipes de développement IBM Cloud.
- Si vous rencontrez un problème avec l’opérateur Local File Storage, vous pouvez ouvrir un ticket sur le portail client Red Hat.