Migrer un datastore vers SPBM

Ce document explique comment migrer un datastore vSphere vers la gestion basée sur les règles de stockage (SPBM).

Contexte

Vous pouvez spécifier un datastore dans les fichiers de configuration du cluster à quatre endroits:

L'héritage de ces champs est le suivant:

adminCluster.vCenter.datastore ->
  userCluster.vCenter.datastore ->
    (userCluster.masterNode.vsphere.datastore and userCluster.nodePools[i].vsphere.datastore

Exemples :

  • Si userCluster.vCenter.datastore est vide, il hérite de la valeur de adminCluster.vCenter.datastore.

  • Si userCluster.nodePools[i].vsphere.datastore est vide, il hérite de la valeur de userCluster.vCenter.datastore.

De même, vous pouvez spécifier une règle de stockage à quatre endroits:

L'héritage des champs storagePolicyName est le même que celui des champs datastore.

Avant de commencer

Il s'agit d'une migration à sens unique. Il n'est pas possible de revenir à l'état précédent.

Effectuer la migration d'un cluster d'utilisateur

  1. Obtenez la configuration actuelle du cluster:

    gkectl get-config cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --cluster-name USER_CLUSTER_NAME \
        --output-dir ./gen-files
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG: chemin d'accès au fichier kubeconfig du cluster d'administrateur

    • USER_CLUSTER_NAME : nom du cluster d'utilisateur.

    Dans ./gen-files, localisez user-cluster.yaml.

    Pour savoir comment obtenir le fichier de configuration, consultez Générer des fichiers de configuration à partir d'un cluster.

  2. Pour effectuer la migration de l'un des champs du datastore:

    1. Définissez le champ datastore sur la chaîne vide.
    2. Spécifiez une valeur pour storagePolicyName.
    3. Exécutez gkectl update.

    Voici un exemple de migration pour masterNode.vsphere.datastore:

    Ajustez la user-cluster.yaml récemment générée:

    masterNode.vsphere.datastore=""
    masterNode.vsphere.masterNode.vsphere.storagePolicyName="control-plane-storage-policy"
    

    Mettez à jour le cluster d'utilisateur :

    gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

    • USER_CLUSTER_CONFIG: chemin d'accès au fichier user-cluster.yaml que vous avez généré à l'étape précédente.

Remarques

Si vous créez un pool de nœuds après une migration, il suit les règles d'héritage en fonction du cluster mis à jour.

Par exemple, supposons que vous ayez migré vCenter.datastore vers une règle de stockage.

Si vous créez un pool de nœuds, et laissez les champs nodePools[i].vsphere.datastore et nodePools[i].vsphere.storagePolicyName vides, le nouveau pool hérite de la règle de stockage spécifiée dans vCenter.storagePolicyName.