Neste documento, mostramos como migrar um repositório de dados do vSphere para o gerenciamento baseado em políticas de armazenamento (SPBM, na sigla em inglês).
Contexto
Há quatro locais em que é possível especificar um armazenamento de dados nos arquivos de configuração do cluster:
Cluster de administrador vCenter.datastore
Cluster de usuário vCenter.datastore
Cluster de usuário masterNode.vsphere.datastore
Cluster de usuário nodePools[i].vsphere.datastore
A herança desses campos é a seguinte:
adminCluster.vCenter.datastore -> userCluster.vCenter.datastore -> (userCluster.masterNode.vsphere.datastore and userCluster.nodePools[i].vsphere.datastore
Exemplos:
Se
userCluster.vCenter.datastore
estiver vazio, ele herdará o valor deadminCluster.vCenter.datastore
.Se
userCluster.nodePools[i].vsphere.datastore
estiver vazio, ele herdará o valor deuserCluster.vCenter.datastore
.
Da mesma forma, há quatro locais para especificar uma política de armazenamento:
Cluster de administrador vCenter.storagePolicyName
Cluster de usuário vCenter.storagePolicyName
Cluster de usuário masterNode.vsphere.storagePolicyName
Cluster de usuário nodePools[i].vsphere.storagePolicyName
A herança dos campos storagePolicyName
é a mesma dos campos datastore
.
Antes de começar
Essa é uma migração unidirecional. Não oferecemos suporte à migração de volta ao estado anterior.
Executar a migração de um cluster de usuário
Consiga a configuração atual do cluster:
gkectl get-config cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster-name USER_CLUSTER_NAME \ --output-dir ./gen-files
Substitua:
ADMIN_CLUSTER_KUBECONFIG pelo caminho do arquivo kubeconfig do cluster de administrador.
USER_CLUSTER_NAME: o nome do cluster do usuário
No
./gen-files
, localizeuser-cluster.yaml
.Para mais informações sobre como acessar o arquivo de configuração, consulte Gerar arquivos de configuração com base em um cluster.
Para executar uma migração para um dos campos do repositório de dados:
- Defina o campo
datastore
como a string vazia. - Especifique um valor para
storagePolicyName
. - Execute
gkectl update
.
Confira um exemplo de como realizar uma migração para
masterNode.vsphere.datastore
:Ajuste o
user-cluster.yaml
gerado recentemente:masterNode.vsphere.datastore="" masterNode.vsphere.masterNode.vsphere.storagePolicyName="control-plane-storage-policy"
Atualize o cluster de usuário:
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
Substitua:
ADMIN_CLUSTER_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador
USER_CLUSTER_CONFIG: o caminho de
user-cluster.yaml
que você gerou na etapa anterior.
- Defina o campo
Observações
Se você criar um novo pool de nós após uma migração, ele seguirá as regras de herança de acordo com o cluster atualizado.
Por exemplo, suponha que você migrou vCenter.datastore
para uma política de armazenamento.
Agora, se você criar um novo pool de nós e deixar nodePools[i].vsphere.datastore
e nodePools[i].vsphere.storagePolicyName
vazios, o novo pool de nós herdará a política de armazenamento especificada em vCenter.storagePolicyName
.