Este tópico descreve como atualizar a configuração de um cluster de utilizadores existente.
Vista geral
Com os clusters de utilizadores a executar a versão 1.20 e superior do Kubernetes, pode modificar os seguintes atributos:
- Os grupos de segurança de um cluster de utilizadores, descritos neste tópico.
- Versões do cluster e do node pool. Para mais informações, consulte o artigo Atualizar o GKE no AWS.
- Definições de proxy. Para mais informações, consulte o artigo Alterar as definições de proxy.
- O tamanho de um node pool. Para mais informações, consulte o artigo Redimensione um conjunto de nós.
Com o Kubernetes 1.22 e superior, pode atualizar os tipos de instâncias do EC2.
Para atualizar estes recursos, edite os recursos AWSCluster e AWSNodePool.
Depois de atualizar a configuração, o GKE on AWS coloca o cluster ou o conjunto de nós no estado Updating
. Quando a atualização estiver concluída, o cluster ou o conjunto de nós é devolvido ao estado Provisioned
.
Antes de começar
Para modificar os clusters de utilizadores, o cluster e o conjunto de nós têm de executar o Kubernetes versão 1.20 ou superior. Se o seu cluster não estiver a executar o Kubernetes 1.20, atualize primeiro o cluster de utilizadores.
Para modificar os grupos de segurança do cluster, a função do AWS IAM (definida como spec.authentication.awsIAM.adminIdentityARNs
em anthos-gke.yaml
) que gere os clusters de utilizadores do GKE no AWS tem de ter a autorização ec2:ModifyNetworkInterfaceAttribute
.
Atualize grupos de segurança
Nesta secção, atualiza os grupos de segurança de um cluster e de um node pool. Para atualizar os grupos de segurança, siga estes passos:
No diretório do
anthos-aws
, useanthos-gke
para mudar o contexto para o seu serviço de gestão.cd anthos-aws anthos-gke aws management get-credentials
Abra o ficheiro YAML que criou o seu AWSCluster num editor de texto. Se não tiver o ficheiro YAML inicial, pode usar
kubectl edit
.Edite o YAML
Se seguiu as instruções em Criar um cluster de utilizadores, o seu ficheiro YAML tem o nome
cluster-0.yaml
. Abra este ficheiro num editor de texto.kubectl edit
Para usar o
kubectl edit
para editar o seu AWSCluster, execute o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl edit awscluster cluster-name
Substitua cluster-name pelo seu AWSCluster. Por exemplo, para editar o cluster predefinido,
cluster-0
, execute o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl edit awscluster cluster-0
Edite o campo
spec.controlPlane.securityGroupIDs
do seuAWSCluster
.apiVersion: multicloud.cluster.gke.io/v1 kind: AWSCluster ... spec: controlPlane: securityGroupIDs: - SECURITY_GROUP_ID ...
Substitua SECURITY_GROUP_ID pelo ID do novo grupo de segurança. Para adicionar vários grupos de segurança, adicione valores adicionais à matriz em
spec.controlPlane.securityGroupIDs
.O exemplo seguinte inclui os grupos de segurança
sg-12345678ab
esg-abcdef1234
:apiVersion: multicloud.cluster.gke.io/v1 kind: AWSCluster spec: controlPlane: securityGroupIDs: - sg-12345678ab - sg-abcdef1234 ...
Edite o campo
spec.securityGroupIDs
dos seus recursosAWSNodePool
.apiVersion: multicloud.cluster.gke.io/v1 kind: AWSNodePool spec: securityGroupIDs: - SECURITY_GROUP_ID ...
Guarde o ficheiro. Se estiver a usar o
kubectl edit
, okubectl
aplica as alterações automaticamente. Se estiver a editar o ficheiro YAML, aplique-o ao seu serviço de gestão com o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl apply -f cluster-0.yaml
Verifique o estado da atualização junto do
kubectl
. Quando a atualização estiver concluída, o estado do objeto muda deUpdating
paraProvisioned
.env HTTPS_PROXY=http://localhost:8118 \ kubectl get AWSClusters,AWSNodePools
Por exemplo, enquanto o cluster está no estado de atualização, o resultado assemelha-se ao seguinte:
NAME STATE AGE VERSION ENDPOINT cluster-0 Updating 10m41s 1.25.5-gke.2100 gke-xyz.elb.us-east-1.amazonaws.com NAME CLUSTER STATE AGE VERSION cluster-0-pool-0 cluster-0 Updating 10m40s 1.25.5-gke.2100
Atualize os tipos de instâncias
Nesta secção, atualiza os tipos de instâncias para um cluster e um node pool. Para atualizar os tipos de instâncias, siga estes passos:
No diretório do
anthos-aws
, useanthos-gke
para mudar o contexto para o seu serviço de gestão.cd anthos-aws anthos-gke aws management get-credentials
Abra o ficheiro YAML que criou o seu AWSCluster num editor de texto. Se não tiver o ficheiro YAML inicial, pode usar
kubectl edit
.Edite o YAML
Se seguiu as instruções em Criar um cluster de utilizadores, o seu ficheiro YAML tem o nome
cluster-0.yaml
. Abra este ficheiro num editor de texto.kubectl edit
Para usar o
kubectl edit
para editar o seu AWSCluster, execute o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl edit awscluster cluster-name
Substitua cluster-name pelo seu AWSCluster. Por exemplo, para editar o cluster predefinido,
cluster-0
, execute o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl edit awscluster cluster-0
Edite o campo
spec.controlPlane.instanceType
do seuAWSCluster
.apiVersion: multicloud.cluster.gke.io/v1 kind: AWSCluster ... spec: controlPlane: instanceType: AWS_INSTANCE_TYPE ...
Substitua AWS_INSTANCE_TYPE pelo novo tipo de instância. Para mais informações, consulte o artigo Tipos de instâncias suportados.
Edite o campo
spec.instanceType
dos seus recursosAWSNodePool
.apiVersion: multicloud.cluster.gke.io/v1 kind: AWSNodePool spec: instanceType: AWS_INSTANCE_TYPE ...
Guarde o ficheiro. Se estiver a usar o
kubectl edit
, okubectl
aplica as alterações automaticamente. Se estiver a editar o ficheiro YAML, aplique-o ao seu serviço de gestão com o seguinte comando:env HTTPS_PROXY=http://localhost:8118 \ kubectl apply -f cluster-0.yaml
Verifique o estado da atualização junto do
kubectl
. Quando a atualização estiver concluída, o estado do objeto muda deUpdating
paraProvisioned
.env HTTPS_PROXY=http://localhost:8118 \ kubectl get AWSClusters,AWSNodePools
Por exemplo, enquanto o cluster está no estado de atualização, o resultado assemelha-se ao seguinte:
NAME STATE AGE VERSION ENDPOINT cluster-0 Updating 10m41s 1.25.5-gke.2100 gke-xyz.elb.us-east-1.amazonaws.com NAME CLUSTER STATE AGE VERSION cluster-0-pool-0 cluster-0 Updating 10m40s 1.25.5-gke.2100
O que se segue?
- Para mais informações sobre a atualização de um cluster de utilizadores, consulte o artigo Atualizar o GKE no AWS.