Nos clusters do Anthos em bare metal, você pode executar verificações de simulação para diferentes situações:
- Os clusters do Anthos em bare metal executam verificações de simulação quando você cria ou
atualiza clusters de administrador, clusters híbridos, clusters independentes ou clusters de usuários e recursos do pool de nós
com
bmctl
. Se as verificações falharem, nenhuma alteração será feita. Também é possível ignorar essas verificações. - Os clusters do Anthos em bare metal também executa verificações de simulação internas quando você aplica recursos do Kubernetes a clusters de usuário de um cluster de administrador ou híbrido. As verificações são executadas antes que as alterações sejam aplicadas aos clusters de usuário afetados. Se as verificações falharem, nenhuma alteração será feita. Também é possível ignorar essas verificações ou executá-las de maneira explícita.
Preparar verificações ao criar clusters usando bmctl
Ao criar clusters de administrador,
híbridos,
autônomos ou
de usuários com o
comando bmctl
, os clusters do Anthos em bare metal executam automaticamente verificações de simulação
antes que sejam feitas alterações.
Quando as verificações são aprovadas, os clusters do Anthos em bare metal criam os clusters.
Ignorar os resultados das verificações automáticas de simulação
Se você quiser ignorar essas verificações de simulação automatizadas, use a sinalização opcional --force
no comando.
Como executar verificações de simulação de maneira independente
Também é possível executar verificações de simulação por conta própria antes de criar um cluster, para garantir que seus recursos da máquina e do nó sejam aprovados nas verificações.
O comando a seguir valida o arquivo de configuração do cluster especificado, mas não tenta criar o próprio cluster:
bmctl check config --cluster CLUSTER_NAME
Esse comando verifica se as máquinas e a rede estão prontas para a criação do cluster:
bmctl check preflight --cluster CLUSTER_NAME
Somente clusters do Anthos em bare metal 1.7.0 e versões posteriores são compatíveis com a criação
de clusters de usuário com bmctl
.
Verificações de simulação para criação do cluster de usuário
Clusters de usuário são criados a partir de um
cluster híbrido ou de administrador existente. Os clusters do Anthos em bare metal executam automaticamente
verificações de simulação antes de fazer qualquer alteração. Também é possível executar verificações de simulação
com kubectl
antes de criar um cluster.
Crie um arquivo de configuração de cluster de usuário seguindo as etapas em Como criar clusters de usuários em uma configuração de vários clusters.
Crie um namespace para o novo cluster de usuário. Por exemplo, para criar um novo cluster de usuário chamado
user1
, crie um namespace chamadocluster-user1
. Este é o comandokubectl
para criar o namespace, em que ADMIN_KUBECONFIG especifica o caminho para o arquivokubeconfig
do cluster de administrador:kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
Faça upload do arquivo de chave privada SSH no novo namespace como um secret para estabelecer suas credenciais. Aqui está o comando de amostra, em que ADMIN_KUBECONFIG especifica o caminho para o arquivo
kubeconfig
do cluster de administrador e SSH_PRIVATE_KEY_FILE_PATH especifica o caminho para o arquivo de chave privada SSH:kubectl --kubeconfig ADMIN_KUBECONFIG create secret generic ssh-key -n cluster-user1 --from-file=id_rsa=SSH_PRIVATE_KEY_FILE_PATH
Crie um novo arquivo YAML de verificação de simulação com a estrutura a seguir: No campo
configYAML
, insira o conteúdo de texto do arquivo de configuração do cluster de usuário criado na etapa 1:apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: cluster-user1 spec: configYAML: | # insert user cluster config file content here.
Use o comando
kubectl
para executar a verificação de simulação para o cluster de usuário:kubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
Substitua:
ADMIN_KUBECONFIG
: o caminho até o arquivo kubeconfig do cluster de administrador.USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
: um caminho para o arquivo YAML de verificação de simulação criado na etapa anterior.
Por exemplo, para um cluster de administrador chamado
cluster1
e uma configuração de verificação de simulação do cluster de usuário chamadauser1-preflight.yaml
, o comando é:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
O sistema retorna a seguinte mensagem, com o ID da verificação de simulação:
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Consulte o status do job de verificação de simulação usando o comando
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
Se o job de verificação de simulação falhar, verifique o status dele e verifique os registros detalhados do job para ver qual falhou. Corrija os problemas mencionados nos jobs adequadamente e execute as verificações novamente.
Verificações de simulação interna em clusters atuais
Os clusters do Anthos em bare metal também faz verificações de simulação interna quando você aplica recursos do Kubernetes a um cluster atual ou híbrido. Se alguma verificação falhar, os clusters do Anthos em matrizes bare metal não alterarão os nós relacionados, a menos que você tenha ignorado as verificações especificamente.
Ignorar verificações de simulação ao aplicar recursos do Kubernetes
Para ignorar as verificações de simulação interna ao aplicar recursos a clusters atuais, você precisa definir o campo BypassPreflightCheck
como true
no arquivo YAML do cluster.
Este é um fragmento de um arquivo YAML de configuração do cluster, mostrando o campo bypassPreflightCheck
definido como true
.
# Sample cluster config to bypass preflight check errors: apiVersion: v1 kind: Namespace metadata: name: cluster-user1 --- apiVersion: baremetal.cluster.gke.io/v1 kind: Cluster metadata: name: user1 namespace: cluster-user1 spec: type: user bypassPreflightCheck: true # Anthos cluster version. anthosBareMetalVersion: 1.7.7 ....
Como reativar verificações de simulação
É possível acionar explicitamente uma nova rodada de verificações de simulação. Assim, os clusters do Anthos em bare metal podem atualizar ou criar novos clusters após a conclusão desse processo.
Crie um novo arquivo YAML de verificação de simulação com o conteúdo a seguir. Preencha os campos
namespace
eclusterName
com o nome do cluster que você está criando:apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: CLUSTER_NAMESPACE spec: clusterName: CLUSTER_NAME
Use o comando
kubectl
para executar a verificação de simulação do cluster:kubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
Substitua:
ADMIN_KUBECONFIG
: o caminho até o arquivo kubeconfig do cluster de administrador.CLUSTER_PREFLIGHT_CHECK_CONFIG
: caminho para o arquivo YAML de verificação de simulação criado anteriormente
Por exemplo, para um cluster de administrador chamado
cluster1
e uma configuração de verificação de simulação do cluster de usuário chamadauser1-preflight.yaml
, o comando é: O sistema responde com o ID do job da verificação de simulação:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Consulte o ID de status do job de verificação de simulação usando o comando
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
Após a conclusão do job de verificação de simulação, os clusters do Anthos em bare metal criam o cluster e os recursos dele.
Detalhes da verificação de simulação da instalação
Os clusters do Anthos em bare metal verificam várias condições de pré-requisito do sistema operacional, do software e da máquina ao executar verificações de simulação.
Saiba mais detalhes em Visão geral dos pré-requisitos de instalação.