Este documento mostra como remover endereços IP estáticos de um cluster no Google Distributed Cloud.
Quando cria um cluster que usa endereços IP estáticos para os nós, especifica um conjunto de endereços IP num ficheiro de bloco de IP. Se, mais tarde, se aperceber de que especificou mais endereços IP do que o necessário, pode remover alguns dos endereços IP do cluster.
Remova endereços IP de um cluster de utilizadores
Certifique-se de que tem endereços IP suficientes após a remoção. Precisa de um endereço IP para cada nó do cluster, além de um endereço IP adicional a usar para um nó temporário durante as atualizações. Por exemplo, se tiver três nós de cluster, precisa de ter quatro endereços IP restantes após a remoção.
Siga estes passos:
O cluster de administrador tem um recurso personalizado OnPremUserCluster para cada cluster de utilizador associado. No cluster de administrador, edite o recurso personalizado OnPremUserCluster para o cluster de utilizadores:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremusercluster USER_CLUSTER_NAME \ --namespace USER_CLUSTER_NAME-gke-onprem-mgmt
Substitua o seguinte:
- ADMIN_CLUSTER_KUBECONFIG: o caminho do ficheiro kubeconfig do cluster de administrador
- USER_CLUSTER_NAME: o nome do seu cluster de utilizadores
Remova os endereços IP selecionados da secção
ipBlocks
:network: ... ipMode: ipBlocks: - gateway: 198.51.100.254 ips: - hostname: user-host1 ip: 198.51.100.1 - hostname: user-host2 ip: 198.51.100.2 - hostname: user-host3 ip: 198.51.100.3 - hostname: user-host4 ip: 198.51.100.4 - hostname: user-host5 ip: 198.51.100.5 netmask: 255.255.255.0 type: static
Feche a sessão de edição.
No cluster de utilizadores, veja todos os objetos Machine no espaço de nomes predefinido:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get machines --output yaml
Elimine todos os objetos Machine que usam um dos endereços IP removidos. Por exemplo, suponhamos que removeu o endereço 198.51.100.1 e descobre que o objeto
my-node-pool-1234
Machine usa esse endereço:Name: my-node-pool-1234 Namespace: default Labels: kubernetes.googleapis.com/cluster-name=my-cluster kubernetes.googleapis.com/cluster-namespace=default ... Annotations: ... vm-ip-address: 198.51.100.1
Em seguida, tem de remover o objeto
my-node-pool-1234
Machine.kubectl --kubeconfig USER_CLUSTER_KUBECONFIG delete machine my-node-pool-1234
Após alguns minutos, veja os endereços dos nós do cluster:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes --output wide
Verifique se os endereços IP removidos não aparecem no resultado. Por exemplo:
myhost2 Ready ... 198.51.100.2 myhost3 Ready ... 198.51.100.3 myhost4 Ready ... 198.51.100.4
Remova endereços IP de um cluster de administrador
Certifique-se de que tem endereços IP suficientes após a remoção. Precisa de um endereço IP para o nó do plano de controlo do cluster de administrador, dois endereços para os nós de suplementos e um endereço IP adicional a usar para um nó temporário durante as atualizações. Além disso, para cada cluster de utilizadores associado, precisa de um ou três endereços para o plano de controlo do cluster de utilizadores. Cada cluster de utilizadores de alta disponibilidade (HA) requer três nós no cluster de administrador para o plano de controlo do cluster de utilizadores. Cada cluster de utilizadores não de HA requer um nó no cluster de administrador para o plano de controlo do cluster de utilizadores.
Por exemplo, suponhamos que o cluster de administrador está associado a um cluster de utilizadores de HA e a um cluster de utilizadores sem HA. Depois da remoção, tem de ter oito endereços IP restantes para acomodar os seguintes nós:
- Nó do plano de controlo do cluster de administrador
- Dois nós suplementares
- Três nós para o plano de controlo do cluster de utilizadores de HA
- Um nó para o plano de controlo do cluster de utilizadores não de HA
- Um nó temporário a usar durante as atualizações
Siga estes passos:
Determine o endereço IP que está a ser usado para o nó do plano de controlo do cluster de administrador:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Na saída, encontre o nó apresentado como plano de controlo. Tome nota do respetivo endereço IP.
gke-admin-master-hdn4z Ready control-plane,master … 198.51.100.101 ...
No cluster de administrador, edite o recurso personalizado OnPremAdminCluster:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremadmincluster --namespace kube-system
Substitua ADMIN_CLUSTER_KUBECONFIG pelo caminho do ficheiro kubeconfig do cluster de administrador.
Remova os endereços IP selecionados da secção
ipBlocks
. Certifique-se de que não remove o endereço IP que está a ser usado para o nó do plano de controlo do cluster de administrador.network: ... ipMode: ipBlocks: - gateway: 198.51.100.254 ips: - hostname: admin-host1 ip: 198.51.100.101 - hostname: admin-host2 ip: 198.51.100.102 - hostname: admin-host3 ip: 198.51.100.103 - hostname: admin-host4 ip: 198.51.100.104 - hostname: admin-host5 ip: 198.51.100.105 - hostname: admin-host6 ip: 198.51.100.106 - hostname: admin-host7 ip: 198.51.100.107 - hostname: admin-host8 ip: 198.51.100.108 - hostname: admin-host9 ip: 198.51.100.109 netmask: 255.255.255.0 type: static
Feche a sessão de edição.
No cluster de administrador, veja todos os objetos Machine no espaço de nomes predefinido:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machines --output yaml
Elimine todos os objetos Machine que usam um dos endereços IP removidos. Por exemplo, suponhamos que removeu o endereço 198.51.100.102 e descobre que o objeto
gke-admin-node-
Machine usa esse endereço:Name: gke-admin-node-5678 Namespace: default ... Status: Addresses: Address: 198.51.100.102 Type: ExternalIP ...
Em seguida, tem de remover o objeto
gke-admin-node-5678
Machine.kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG delete machine gke-admin-node-5678
Veja os endereços dos nós do cluster:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Verifique se os endereços IP removidos não aparecem no resultado. Por exemplo:
gke-admin-master-hdn4z Ready control-plane,master 198.51.100.101 gke-admin-node-abcd Ready ... 198.51.100.103 gke-admin-node-efgh Ready ... 198.51.100.104 my-user-cluster-ijkl Ready ... 198.51.100.105 my-user-cluster-mnop Ready ... 198.51.100.106 my-user-cluster-qrst Ready ... 198.51.100.107 my-user-cluster-uvwx Ready ... 198.51.100.108