Archiviazione locale - File e blocco

Impostare l'archiviazione persistente usando volumi locali a blocchi o file per i cluster IBM Cloud Satellite®. È possibile utilizzare i modelli di archiviazione Satellite per creare configurazioni di archiviazione. Quando si assegna una configurazione di memoria ai cluster, i driver di memorizzazione del provider di memoria selezionato vengono installati nel cluster.

Prerequisiti

Prima di poter creare una configurazione di archiviazione locale, devi identificare i nodi di lavoro nei tuoi cluster che hanno i dischi disponibili richiesti. Quindi, etichettare questi nodi di lavoro in modo tale che i driver di archiviazione locali siano installati solo su questi nodi di lavoro.

  1. Assicurati di disporre delle seguenti autorizzazioni.

    • Editor per il servizio di fatturazione.
    • Gestore e Editor per servizio Kubernetes.
    • Satellite Link Amministratore e Lettore per il servizio Satellite.
  2. Crea un'ubicazione Satellite.

  3. Crea un Satellite.

    • Assicurati di selezionare l'opzione Abilita l'accesso di amministratore cluster per Satellite Config quando crei il cluster. Se non abiliti l'accesso amministratore (admin) per la configurazione Satellite durante la creazione del tuo cluster, devi ricreare il tuo cluster e abilitare l'accesso amministratore prima di poter distribuire l'archiviazione.
  4. Distribuire l'operatore di memoria locale. Per configurare l'archiviazione blocchi o file locale, è necessario distribuire l'operatore di archiviazione locale.

  5. Assicurati che i nodi di lavoro nel tuo cluster che vuoi utilizzare nella tua configurazione di archiviazione abbiano almeno un disco locale disponibile oltre ai dischi richiesti da Satellite. I dischi supplementari devono essere non formattati.

  6. Ottieni i dettagli del dispositivo dei tuoi nodi di lavoro.

  7. Etichettare i nodi di lavoro che hanno un disco disponibile e che si desidera utilizzare nella configurazione. I driver di archiviazione locali sono installati solo sui nodi di lavoro etichettati.

Acquisizione dei dettagli del dispositivo per la configurazione dell'archiviazione locale

Quando si crea la configurazione di archiviazione locale, è necessario specificare quali periferiche si desidera utilizzare. I percorsi del dispositivo che richiami nei seguenti passi sono specificati come parametri quando crei la configurazione.

  1. Accedi al cluster e ottieni un elenco di nodi di lavoro disponibili. Prendi nota dei nodi di lavoro che vuoi utilizzare nella configurazione.

    oc get nodes
    
  2. Accedi a ogni nodo di lavoro che vuoi utilizzare per la configurazione dell'archiviazione locale.

    oc debug node/<node-name>
    
  3. Quando il pod di debug viene distribuito sul nodo di lavoro, immetti i seguenti comandi per visualizzare i dischi disponibili sul nodo di lavoro.

    1. Consenti file binari host.
        chroot /host
        ```
    1. Elenca i tuoi dispositivi.
    
    ```sh {: pre}
        lsblk
        ```
    1. Scopri i dettagli dei tuoi dispositivi. Verificare che le periferiche che si desidera utilizzare siano smontate e non formattate.
    
    ```sh {: pre}
        fdisk -l
        ```
    
    
  4. Elenca i dischi di archiviazione blocchi disponibili sul tuo nodo di lavoro. È necessario utilizzare i dischi smontati per la configurazione di archiviazione locale. Nel seguente output di esempio dal comando lsblk, il disco nvme2n1 è smontato e non ha partizioni.

    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    nvme0n1     259:3    0   100G  0 disk
    |-nvme0n1p1 259:4    0     1M  0 part
    `-nvme0n1p2 259:5    0   100G  0 part /
    nvme1n1     259:0    0    20G  0 disk
    nvme2n1     259:1    0    20G  0 disk
    nvme3n1     259:2    0 139.7G  0 disk /var/data
    
  5. Ripeti i passi precedenti per ogni nodo di lavoro che vuoi utilizzare per la configurazione dell'archiviazione locale.

Etichettatura dei tuoi nodi di lavoro

Dopo che hai richiamato i percorsi del dispositivo per i dischi che vuoi utilizzare nella tua configurazione, etichetta i nodi di lavoro in cui si trovano i dischi.

  1. Ottieni gli indirizzi IP del nodo di lavoro.

    oc get nodes
    
  2. Etichetta i nodi di lavoro che hai richiamato in precedenza. I driver di archiviazione locali vengono distribuiti sui nodi di lavoro con questa etichetta. È possibile utilizzare l'etichetta storage=local-block nel comando di esempio oppure è possibile creare la propria etichetta nel formato key=value.

    oc label nodes <worker-IP> <worker-IP> <worker-IP> "storage=local-block"
    

    Output di esempio

    node/<worker-IP> labeled
    node/<worker-IP> labeled
    node/<worker-IP> labeled
    
  3. Verifica che l'etichetta sia aggiunta ai nodi di lavoro che vuoi utilizzare. Esegui il seguente comando per visualizzare le etichette sui tuoi nodi di lavoro ed evidenziare l'etichetta che hai aggiunto al passo precedente.

    oc get nodes --show-labels | grep --color=always storage=local-block
    

Creazione e assegnazione di una configurazione nella console

  1. Esaminare il riferimento del parametro.

  2. Dalla console Ubicazioni, selezionare l'ubicazione in cui si desidera creare una configurazione di memoria.

  3. Selezionare Memoria > Crea configurazione memoria

  4. Inserisci un nome per la tua configurazione.

  5. Selezionare il tipo di archiviazione.

  6. Selezionare Versione e fare clic su Avanti

  7. Se il Tipo di archiviazione selezionato accetta parametri personalizzati, immetterli nella scheda Parametri.

  8. Se il Tipo di archiviazione selezionato richiede segreti, immetterli nella scheda Segreti.

  9. Sulla scheda Classi di archiviazione, esaminare le classi di memoria distribuite dalla configurazione o creare una classe di memoria personalizzata.

  10. Nella scheda Assegna al servizio, selezionare il servizio a cui si desidera assegnare la configurazione.

  11. Fare clic su Completa per assegnare la configurazione di archiviazione.

Creazione di una configurazione nella CLI

  1. Esaminare il riferimento parametro per la versione del template che si desidera utilizzare.

  2. Accedi alla CLI IBM Cloud.

    ibmcloud login
    
  3. Elenca le tue ubicazioni Satellite e prendi nota della colonna Managed from.

    ibmcloud sat location ls
    
  4. Specifica la regione Managed from della tua ubicazione Satellite. Ad esempio, per wdc target us-east. Per ulteriori informazioni, vedi RegioniSatellite.

    ibmcloud target -r us-east
    
  5. Se si utilizza un gruppo di risorse diverso da default, destinarlo.

    ibmcloud target -g RESOURCE_GROUP
    
  6. Copiare uno dei seguenti comandi di esempio per la versione del modello che si desidera utilizzare. Per ulteriori informazioni sul comando, consultare ibmcloud sat storage config create in riferimento comando.

    Comando di esempio per creare una configurazione della versione 1.0.0.

    ibmcloud sat storage config create --location LOCATION --name NAME --template-name local-storage --template-version 1.0.0 --param "install-local-storage-file=INSTALL-LOCAL-STORAGE-FILE"  --param "auto-discover-devices-file=AUTO-DISCOVER-DEVICES-FILE"  --param "file-nodes-label-key=FILE-NODES-LABEL-KEY"  --param "file-nodes-label-value=FILE-NODES-LABEL-VALUE"  --param "file-devicepath=FILE-DEVICEPATH"  --param "fstype=FSTYPE"  --param "install-local-storage-block=INSTALL-LOCAL-STORAGE-BLOCK"  --param "auto-discover-devices-block=AUTO-DISCOVER-DEVICES-BLOCK"  --param "block-nodes-label-key=BLOCK-NODES-LABEL-KEY"  --param "block-nodes-label-value=BLOCK-NODES-LABEL-VALUE"  --param "block-devicepath=BLOCK-DEVICEPATH"
    
  7. Personalizzare il comando in base alle impostazioni che si desidera utilizzare.

  8. Esegui il comando per creare una configurazione.

  9. Verificare che la configurazione sia stata creata.

    ibmcloud sat storage config get --config CONFIG
    

Creazione di una configurazione nell'API

  1. Generare una chiave API, quindi richiedere un token di aggiornamento. Per ulteriori informazioni, consultare la sezione " Generazione di un token IAM di IBM Cloud utilizzando una chiave API ".

  2. Esaminare il riferimento parametro per la versione del template che si desidera utilizzare.

  3. Copiare una delle seguenti richieste di esempio e sostituire le variabili che si desidera utilizzare.

    Richiesta di esempio per creare una configurazione della versione 1.0.0.

    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-storage\", \"storage-template-version\": \"1.0.0\", \"update-assignments\": true, \"user-config-parameters\": { \"entry.name\": \"INSTALL-LOCAL-STORAGE-FILE\", { \"entry.name\": \"AUTO-DISCOVER-DEVICES-FILE\", { \"entry.name\": \"FILE-NODES-LABEL-KEY\", { \"entry.name\": \"FILE-NODES-LABEL-VALUE\", { \"entry.name\": \"FILE-DEVICEPATH\", { \"entry.name\": \"FSTYPE\", { \"entry.name\": \"INSTALL-LOCAL-STORAGE-BLOCK\", { \"entry.name\": \"AUTO-DISCOVER-DEVICES-BLOCK\", { \"entry.name\": \"BLOCK-NODES-LABEL-KEY\", { \"entry.name\": \"BLOCK-NODES-LABEL-VALUE\", { \"entry.name\": \"BLOCK-DEVICEPATH\",\"user-secret-parameters\": }
    

Creazione di un'attività nella CLI

  1. Elencare le configurazioni di archiviazione e prendere nota della configurazione di archiviazione che si desidera assegnare ai cluster.

    ibmcloud sat storage config ls
    
  2. Ottieni l'ID del cluster, del gruppo di cluster o del servizio a cui vuoi assegnare l'archiviazione.

    Per assicurarti che il tuo cluster sia registrato in Satellite Config o per creare gruppi, consulta Configurazione dei cluster da utilizzare con il file di configurazione di Satellite.

    Comando di esempio per elencare i gruppi di cluster.

    ibmcloud sat group ls
    

    Comando di esempio per elencare i cluster.

    ibmcloud oc cluster ls --provider satellite
    

    Comando di esempio per elencare i servizi Satellite.

    ibmcloud sat service ls --location LOCATION
    
  3. Assegna la tua configurazione di archiviazione al cluster, gruppo o servizio che hai richiamato in precedenza. Per ulteriori informazioni, consultare il comando ibmcloud sat storage assignment create .

    Comando di esempio per assegnare una configurazione a un gruppo di cluster.

    ibmcloud sat storage assignment create --group GROUP --config CONFIG --name NAME
    

    Comando di esempio per assegnare una configurazione a un cluster.

    ibmcloud sat storage assignment create --cluster CLUSTER --config CONFIG --name NAME
    

    Comando di esempio per assegnare una configurazione a un cluster di servizio.

    ibmcloud sat storage assignment create --service-cluster-id CLUSTER --config CONFIG --name NAME
    
  4. Verifica che il tuo compito sia stato creato.

    ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER)
    

Creazione di un'assegnazione di memoria nell'API

  1. Copiare una delle seguenti richieste di esempio.

    Richiesta di esempio per assegnare una configurazione a 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\"}"
    

    Richiesta di esempio per assegnare la configurazione a un gruppo di cluster.

    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\"}"
    
  2. Sostituire le variabili con i propri dettagli ed eseguire la richiesta.

  3. Verificare che l'assegnazione sia stata creata elencando le assegnazioni.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignments" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

Aggiornamento delle assegnazioni di memoria nella console

Puoi utilizzare la consoleSatellite per applicare gli ultimi aggiornamenti di patch alle tue assegnazioni.

  1. Dalla pagina Ubicazioni della consoleSatellite, seleziona la tua ubicazione.

  2. Fare clic sulla scheda Archiviazione per visualizzare le configurazioni.

  3. Fai clic sulla configurazione che desideri aggiornare.

  4. Fare clic sull'icona Informazioni (i) per applicare l'ultima revisione o patch.

  5. Facoltativo: abilita gli aggiornamenti patch automatici per l'assegnazione della tua archiviazione. L'abilitazione degli aggiornamenti automatici delle patch garantisce che l'assegnazione abbia sempre le correzioni di sicurezza più recenti.

Se si abilitano gli aggiornamenti patch automatici, è comunque necessario applicare manualmente gli aggiornamenti principali.

Aggiornamento manuale delle assegnazioni nella CLI

Aggiornare un'assegnazione per utilizzare l'ultima revisione del modello di memoria.

  1. Elenca le tue assegnazioni di memoria Satellite, prendi nota dell'assegnazione Satellite che vuoi aggiornare.

    ibmcloud sat storage assignment ls
    
  2. Elencare i modelli di memorizzazione Satellite per vedere le ultime versioni disponibili.

    ibmcloud sat storage template ls
    
  3. Aggiorna l'assegnazione Satellite.

    Comando di esempio per aggiornare un'assegnazione.

    ibmcloud sat storage assignment upgrade --assignment ASSIGNMENT
    

Abilitazione degli aggiornamenti patch automatici per le configurazioni e le assegnazioni nella CLI

Puoi utilizzare la CLI sat storage assignment autopatch enable per abilitare gli aggiornamenti patch automatici per le tue assegnazioni. L'abilitazione degli aggiornamenti automatici delle patch applica automaticamente le ultime revisioni del modello di memoria (patch). È comunque necessario applicare manualmente gli aggiornamenti principali.

  1. Elenca le configurazioni di archiviazione Satellite. Prendere nota dell'ID configurazione.

    ibmcloud sat storage assignment ls
    
  2. Eseguire uno dei seguenti comandi di esempio per abilitare gli aggiornamenti automatici delle patch per la configurazione e le assegnazioni associate. Inserisci l'ID di configurazione che hai recuperato nel passaggio precedente.

    Comando di esempio per abilitare gli aggiornamenti automatici delle correzioni per un'assegnazione.

    ibmcloud sat storage assignment autopatch enable --config CONFIG  (--all | --assignment ASSIGNMENT-ID [--assignment ASSIGNMENT-ID])
    

    Comando di esempio per abilitare gli aggiornamenti di patch automatici per tutte le assegnazioni di memoria in una determinata configurazione.

    ibmcloud sat storage assignment autopatch enable --config CONFIG --all
    

    Comando di esempio per disabilitare gli aggiornamenti patch automatici per tutte le assegnazioni in una configurazione specifica.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --all
    

    Comando di esempio per disabilitare gli aggiornamenti patch automatici per una singola assegnazione e una specifica configurazione.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-ID
    

    Comando di esempio per disattivare gli aggiornamenti automatici delle patch per un'assegnazione multipla e una specifica configurazione.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-ID --assignment ASSIGNMENT-ID
    

Aggiornamento manuale delle configurazioni nella CLI

Puoi aggiornare le tue configurazioni di archiviazione Satellite per ottenere l'ultima revisione del template di archiviazione nella stessa versione principale.

  1. Elenca le configurazioni di archiviazione Satellite, prendi nota della configurazione Satellite che vuoi aggiornare.

    ibmcloud sat storage config ls
    
  2. Aggiorna la configurazione Satellite. Notare che viene aggiornata solo la configurazione. Se si desidera aggiornare le assegnazioni che utilizzano questa configurazione, è possibile specificare l'opzione --include-assignments oppure aggiornare manualmente ciascuna assegnazione utilizzando il comando assignment update.

    Comando di esempio per aggiornare una configurazione all'ultima revisione.

    ibmcloud sat storage config upgrade --config CONFIG [--include-assignments]
    

    Comando di esempio per aggiornare una configurazione e le sue assegnazioni associate all'ultima revisione.

    ibmcloud sat storage config upgrade --config CONFIG --include-assignments
    

Aggiornamento di configurazione e assegnazioni nell'API

È possibile utilizzare l'API /v2/storage/satellite/updateAssignment per aggiornare le assegnazioni con nuovi cluster o gruppi di cluster. Impostare updateConfigVersion su true per applicare l'aggiornamento della revisione.

  1. Copiare la seguente richiesta di esempio e sostituire le variabili per i gruppi di cluster e le assegnazioni che si desidera aggiornare.

    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\"}"
    
  2. Eseguire la richiesta.

  3. Ottenere i dettagli dell'assegnazione per verificare l'aggiornamento.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

Abilitazione degli aggiornamenti patch automatici per le assegnazioni nell'API

È possibile utilizzare l'API /v2/storage/satellite/setAssignmentAutoupgrade per abilitare gli aggiornamenti patch automatici per le proprie assegnazioni. L'abilitazione degli aggiornamenti automatici delle patch applica automaticamente le ultime revisioni del modello di memoria (patch). È comunque necessario applicare manualmente gli aggiornamenti principali.

  1. Copiare la seguente richiesta di esempio e sostituire le variabili per i gruppi di cluster e le assegnazioni che si desidera aggiornare.

    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", ...], } }
    
  2. Eseguire la richiesta.

  3. Ottieni i dettagli dell'assegnazione per verificare l'aggiornamento.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

Distribuzione di un'applicazione che utilizza l'archiviazione locale

Dopo aver creato una configurazione di archiviazione locale e averla assegnata ai tuoi cluster, puoi creare un'applicazione che utilizza la tua archiviazione blocchi locale.

È possibile associare le PVC a volumi persistenti specifici aggiungendo etichette ai volumi persistenti. Per ulteriori informazioni, vedere la documentazione di Kubernetes per i selettori.

  1. Salvare il seguente file YAML PVC sulla macchina locale denominata local-pvc.yaml.

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: local-pvc
    spec:
      accessModes:
      - ReadWriteOnce
      volumeMode: Block
      resources:
      requests:
        storage: 20Gi # Important: Ensure that size of your claim is not larger than the local disk.
      storageClassName: sat-local-block-gold
    
  2. Crea la PVC nel tuo cluster.

    oc create -f local-pvc.yaml
    
  3. Verifica che il tuo PVC sia stato creato. Tenere presente che volumeBindingMode per la classe di archiviazione sat-local-block-gold è waitForFirstConsumer.

    oc get pvc | grep local
    

    Per assicurarti che i tuoi pod siano pianificati per i nodi di lavoro con l'archiviazione o per garantire che le applicazioni che richiedono l'archiviazione non siano precedute da altri pod, puoi specificare nodeAffinity e configurare la priorità dei pod. Per ulteriori informazioni, consultare la documentazione di Kubernetes relativa alla priorità e alla prelazione dei pod e all'impostazione dell'affinità dei nodi.

  4. Distribuisci un pod dell'applicazione che utilizza la tua PVC di archiviazione locale. Salva la seguente applicazione di esempio YAML come file sulla tua macchina locale denominata app.yaml. In questo esempio, la specifica nodeAffinity garantisce che questo pod sia pianificato solo per un nodo di lavoro con l'etichetta specificata.

    apiVersion: v1
    kind: Pod
    metadata:
      name: app
    spec:
      affinity:
      nodeAffinity:
        requiredDuringSchedulingIgnoredDuringExecution:
          nodeSelectorTerms:
          - matchExpressions:
            - key: storage # Enter the 'key' of the worker node label created earlier.
              operator: In
              values:
              - local-block # Enter the 'value' of the worker label that you created earlier.
      containers:
        - name: nginx
          image: nginx
          volumeDevices:
            - name: data
              devicePath: "/dev/nvme2n1" # Enter the path to your local device.
      volumes:
        - name: data
          persistentVolumeClaim:
          claimName: local-pvc
    
  5. Crea il pod dell'applicazione nel tuo cluster.

    oc create -f app.yaml
    
  6. Accedi al tuo pod dell'applicazione e verifica che puoi scrivere sul disco locale.

    kubectl exec <pod_name> -it bash
    
  7. Passare alla cartella dev.

    cd dev
    
  8. Esegui il comando ls -lR <device-path> per verificare i dettagli del tuo dispositivo e che il tuo pod dell'applicazione possa leggere e scrivere le autorizzazioni per il dispositivo a blocchi, che è indicato da brw nell'output del comando.

    ls -lR /dev/nvme2n1
    

    Output di esempio

    brw-rw-rw-. 1 root disk 202, 32 Mar  3 21:24 /dev/nvme2n1
    
  9. Facoltativo Esegui i seguenti comandi per scrivere i dati sul dispositivo a blocchi.

    1. Scrivi "block_data" sul dispositivo di archiviazione locale che hai montato nella tua applicazione. Sostituire <device-path> con il percorso della periferica di archiviazione. Esempio: /dev/nvme2n1.
        kubectl exec <pod_name> -- bash -c "echo "block_data" | dd conv=unblock of=<device-path>"
        ```
    2. Verificare che i dati siano scritti sul dispositivo. Sostituire `<device-path>` con il percorso della periferica di archiviazione. Esempio: `/dev/nvme2n1`.
    
    ```sh {: pre}
        kubectl exec <pod_name> -- bash -c "od -An -c -N 10 <device-path>"
        ```
        Output di esempio
    
        ```sh {: screen}
        b   l   o   c   k   _   d   a   t   a
        ```
    
    
    
  10. Elimina il pod " test ".

    oc delete pod <pod_name>
    

Rimozione di una configurazione di archiviazione dalla console

  1. Dal dashboard di archiviazione Satellite, seleziona la configurazione di archiviazione che vuoi eliminare.
  2. Selezionare Azioni > Elimina.
  3. Immettere il nome della configurazione di archiviazione.
  4. Seleziona Delete.

Rimozione della configurazione dell'archiviazione locale dalla riga comandi

  1. Elenca le risorse nello spazio dei nomi local-storage. Quando si elimina l'assegnazione di memoria, queste risorse vengono rimosse.

    oc get all -n local-storage
    

    Output di esempio

    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
    
  2. Elenca le assegnazioni di archiviazione e trova quella che hai utilizzato per il cluster.

    ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER)
    
  3. Rimuovere l'assegnazione. Una volta rimossa l'assegnazione, i pod del driver di archiviazione locale e le classi di archiviazione vengono rimossi da tutti i cluster che facevano parte dell'assegnazione di archiviazione.

    ibmcloud sat storage assignment rm --assignment <assignment_ID>
    
  4. Elenca le risorse nello spazio dei nomi local-storage e verifica che i pod del driver di archiviazione locale siano rimossi.

    oc get all -n local-storage
    

    Output di esempio

    No resources found in local-storage namespace.
    
  5. Elenco delle classi di archiviazione nel tuo cluster e verifica che le classi di archiviazione locali vengano rimosse.

    oc get sc
    
  6. Facoltativo: rimuovere la configurazione di archiviazione.

    1. Elencare le configurazioni di memoria.
        ibmcloud sat storage config ls
        ```
    2. Rimuovere la configurazione della memoria.
    
    ```sh {: pre}
        ibmcloud sat storage config rm --config <config_name>
        ```
    
  7. Elenca le tue PVC e prendi nota del nome della PVC che vuoi rimuovere.

    oc get pvc
    
  8. Rimuovere eventuali pod che attualmente montano il PVC.

    1. Elenca tutti i pod che attualmente montano la PVC che vuoi eliminare. Se non viene restituito alcun pod, non hai alcun pod che attualmente utilizza la tua PVC.
        oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"
        ```
        Output di esempio
    
        ```sh {: screen}
        app    sat-local-block-gold
        ```
    
    2. Rimuovi il pod che utilizza la PVC. Se il pod fa parte di una distribuzione, rimuovi la distribuzione.
    
    ```sh {: pre}
        oc delete pod <pod_name>
        ```
        ```sh {: pre}
        oc delete deployment <deployment-name>
        ```
    3. Verifica che il pod o la distribuzione siano rimossi.
    
    ```sh {: pre}
        oc get pods
        ```
        ```sh {: pre}
        oc get deployments
        ```
    
  9. Elimina la PVC. Poiché tutte le classi di archiviazione blocchi locali fornite da IBMsono specificate con una politica di recupero Retain, il PV e la PVC non vengono automaticamente eliminati quando elimini la tua applicazione o distribuzione.

    oc delete pvc <pvc-name>
    
  10. Verifica che il PVC sia stato rimosso.

    oc get pvc
    
  11. Elenca i tuoi PV e prendi nota del nome dei PV che vuoi rimuovere.

    oc get pv
    
  12. Eliminare i PV. L'eliminazione dei tuoi PV renderà i dischi disponibili per altri workload.

    oc delete pv <pv-name>
    
  13. Verifica che il PV sia stato rimosso.

    oc get pv
    

Riferimento parametro

Riferimento parametro 1.0.0

Tabella 1. Riferimento dei parametri di 1.0.0
Nome di visualizzazione opzione CLI Immettere Descrizione Valore predefinito
Installa driver di storage di file install-local-storage-file Config Impostare su 'true' per installare il driver di storage di file. true
Rilevamento dei volumi automatico per lo storage di file auto-discover-devices-file Config Impostare su 'true' se si desidera rilevare e utilizzare automaticamente i volumi sui nodi di lavoro per lo storage di file. false
Chiave etichetta nodo di lavoro di storage di file file-nodes-label-key Config La 'chiave' dell'etichetta 'chiave=valore' del nodo di lavoro che si desidera utilizzare per lo storage di file. N/D
Valore etichetta nodo di lavoro di storage di file file-nodes-label-value Config Il 'valore' dell'etichetta del nodo di lavoro 'chiave=valore' che si desidera utilizzare per lo storage di file. N/D
Percorso dispositivo per storage di file file-devicepath Config Il percorso ai dispositivi di storage sul nodo di lavoro che si desidera utilizzare per lo storage di file. Esempio: '/dev/sdc'. Questa opzione è richiesta quando 'auto-discover-devices-file' è impostata su 'false'. N/D
Tipo di file system fstype Config Il tipo di file system. Specificare 'ext3', 'ext4' o 'xfs'. ext4
Installa driver di storage a blocchi install-local-storage-block Config Impostare su 'true' per installare il driver di storage a blocchi. true
Rilevamento dei volumi automatico per lo storage a blocchi auto-discover-devices-block Config Impostare su 'true' se si desidera rilevare e utilizzare automaticamente i volumi sui nodi di lavoro per lo storage a blocchi. false
Chiave etichetta nodo di lavoro di storage a blocchi block-nodes-label-key Config La 'chiave' dell'etichetta 'chiave=valore' del nodo di lavoro che si desidera utilizzare per lo storage a blocchi. N/D
Valore etichetta nodo di lavoro di storage a blocchi block-nodes-label-value Config Il 'valore' dell'etichetta del nodo di lavoro 'chiave=valore' che si desidera utilizzare per lo storage a blocchi. N/D
Percorso dispositivo per blocco di storage locale block-devicepath Config Il percorso ai dispositivi di storage sul nodo di lavoro che si desidera utilizzare per lo storage a blocchi. Esempio: '/dev/sdc'. Questa opzione è richiesta quando 'auto-discover-devices-block' è impostata su false. N/D