Migrazione dei nodi worker Satellite a RHCOS

Satellite

Segui i passaggi riportati di seguito per eseguire la migrazione dei nodi di lavoro di Satellite a RHCOS

Per migrare a RHCOS, è necessario eseguire il provisioning di un nuovo pool di lavoratori, quindi eliminare il precedente pool di lavoratori RHEL. Il nuovo pool di lavoratori deve risiedere nella stessa zona del pool di lavoratori precedente.

Passo 1: Aggiornare il master del cluster

Esegui il seguente comando per aggiornare il master.

ibmcloud ks cluster master update --cluster CLUSTERNAMEORID --version 4.18_openshift

Passo 2: Creare un nuovo pool di lavoratori RHCOS

  • Assicurarsi di specificare RHCOS come --operating-system del nuovo pool.
  • Assicurarsi che il numero di nodi specificato con l'opzione --size-per-zone corrisponda al numero di lavoratori per zona del pool di lavoratori RHEL. Per elencare le zone di un pool di lavoratori e il numero di lavoratori per zona, eseguire ibmcloud oc worker-pool get --worker-pool WORKER_POOL --cluster CLUSTER.
  • Assicuratevi di includere l'opzione --entitlement ocp_entitled se avete diritto a Cloud Pak.
  1. Eseguire il comando ibmcloud oc worker-pool create per creare un nuovo pool di lavoratori.

    Esempio di comando per creare un pool di lavoratori RHCOS. Si noti che per i cluster Satellite, è necessario collegare gli host alla posizione prima di poter creare un pool di lavoratori.

    ibmcloud oc worker-pool create satellite --cluster CLUSTER --host-label "os=RHCOS" --name NAME --size-per-zone SIZE --operating-system RHCOS --zone ZONE [--label LABEL]
    
  2. Verificare che il pool di lavoratori sia stato creato e annotare l'ID del pool di lavoratori.

    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    

    Output di esempio

    Name            ID                              Flavor                 OS              Workers
    my_workerpool   aaaaa1a11a1aa1aaaaa111aa11      b3c.4x16.encrypted     REDHAT_8_64    0
    
  3. Aggiungere una o più zone al pool di lavoratori. Quando si aggiunge una zona, il numero di nodi worker specificato con l'opzione --size-per-zone viene aggiunto alla zona. Questi nodi worker eseguono il sistema operativo RHCOS. Si raccomanda che le zone aggiunte al pool di lavoratori RHCOS corrispondano alle zone aggiunte al pool di lavoratori RHEL che si sta sostituendo. Per visualizzare le zone collegate a un pool di lavoratori, eseguire ibmcloud oc worker-pool zones --worker-pool WORKER_POOL --cluster CLUSTER. Se si aggiungono zone che non corrispondono a quelle del worker pool di RHEL, assicurarsi che i carichi di lavoro non vengano influenzati dallo spostamento in una nuova zona. Si noti che l'archiviazione di file o blocchi non è supportata tra le zone.

Passo 3: Aggiungere i nodi worker al pool di worker RHCOS

Vedere Aggiunta di una zona a un pool di lavoratori in un cluster VPC.

Passo 4: Migrare i carichi di lavoro

Se si dispone di soluzioni SDS (software-defined storage) come OpenShift Data Foundation o Portworx, aggiornare le configurazioni di storage per includere i nuovi nodi worker e verificare i carichi di lavoro prima di rimuovere i nodi worker RHEL.

Per ulteriori informazioni sulla riprogrammazione dei carichi di lavoro, vedere Scarico sicuro di un Node nei documenti Kubernetes o Capire come evacuare i pod sui nodi nei documenti Red Hat OpenShift.

  • Migrare per pod cordonando il nodo ed eliminando i singoli pod.

    oc adm cordon no/<nodeName>
    oc delete po -n <namespace> <podName>
    
  • Migrare per Node drenando i nodi. Per ulteriori informazioni, vedere Drenaggio sicuro di un nodo.

  • Migrare per pool di lavoratori eliminando l'intero pool di lavoratori di RHEL.

    ibmcloud ks worker-pool rm --cluster CLUSTER_NAME_OR_ID --worker-pool WORKER_POOL_NAME_OR_ID
    

Passo 5: Rimuovere i nodi worker RHEL

Rimuovere il pool di lavoratori che contiene i lavoratori RHEL.

Considerate di ridimensionare il vostro pool di lavoratori RHEL e di mantenerlo per diversi giorni prima di rimuoverlo. In questo modo, è possibile scalare facilmente il pool di lavoratori se il carico di lavoro subisce interruzioni durante il processo di migrazione. Quando si è stabilito che il carico di lavoro è stabile e funziona normalmente, si può rimuovere con sicurezza il pool di lavoratori RHEL.

  1. Elencare i pool di lavoratori e annotare il nome del pool di lavoratori che si desidera rimuovere.
    ibmcloud oc worker-pool ls --cluster CLUSTER
    
  2. Eseguire il comando per rimuovere il pool di lavoratori.
    ibmcloud oc worker-pool rm --worker-pool WORKER_POOL --cluster CLUSTER
    

Passo opzionale 5: disinstallare e reinstallare il plug-in Object Storage

Se si utilizza il plug-in COS nel cluster, dopo la migrazione da RHEL a RHCOS, è necessario disinstallarlo e reinstallarlo perché il percorso kube-driver è diverso tra i due sistemi operativi. Se non si esegue questa operazione, è possibile che venga visualizzato un errore simile a Error: failed to mkdir /usr/libexec/kubernetes: mkdir /usr/libexec/kubernetes: read-only file system.