Ce document explique comment supprimer les adresses IP statiques d'un cluster dans GKE sur VMware.
Lorsque vous créez un cluster qui utilise des adresses IP statiques pour les nœuds, vous spécifiez un ensemble d'adresses IP dans un fichier de bloc d'adresses IP. Si vous constatez par la suite que vous avez spécifié plus d'adresses IP que nécessaire, vous pouvez supprimer certaines des adresses IP du cluster.
Supprimer des adresses IP d'un cluster utilisateur.
Vérifiez que vous disposez de suffisamment d'adresses IP après la suppression. Vous avez besoin d'une adresse IP pour chaque nœud de cluster et d'une adresse IP supplémentaire à utiliser pour un nœud temporaire lors des mises à niveau. Par exemple, si vous disposez de trois nœuds de cluster, vous devrez avoir quatre adresses IP restantes après la suppression.
Procédez comme suit :
Le cluster admin dispose d'une ressource personnalisée OnPremUserCluster pour chaque cluster utilisateur associé. Dans le cluster admin, modifiez la ressource personnalisée OnPremUserCluster pour votre cluster utilisateur :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremusercluster USER_CLUSTER_NAME \ --namespace USER_CLUSTER_NAME-gke-onprem-mgmt
Remplacez les éléments suivants :
- ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
- USER_CLUSTER_NAME : nom de votre cluster utilisateur
Supprimez les adresses IP sélectionnées de la section
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
Fermez la session de modification.
Dans votre cluster utilisateur, affichez tous les objets Machine dans l'espace de noms par défaut :
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get machines --output yaml
Supprimez tous les objets Machine utilisant l'une des adresses IP supprimées. Par exemple, supposons que vous ayez supprimé l'adresse 198.51.100.1 et que vous ayez découvert que l'objet Machine
my-node-pool-1234
utilise cette adresse :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
Vous devez ensuite supprimer l'objet Machine
my-node-pool-1234
.kubectl --kubeconfig USER_CLUSTER_KUBECONFIG delete machine my-node-pool-1234
Attendez quelques minutes, puis affichez les adresses du nœud de cluster :
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes --output wide
Vérifiez que les adresses IP supprimées n'apparaissent pas dans le résultat. Exemple :
myhost2 Ready ... 198.51.100.2 myhost3 Ready ... 198.51.100.3 myhost4 Ready ... 198.51.100.4
Supprimer des adresses IP d'un cluster d'administrateur
Vérifiez que vous disposez de suffisamment d'adresses IP après la suppression. Vous avez besoin d'une adresse IP pour le nœud de plan de contrôle du cluster d'administrateur, de deux adresses pour les nœuds complémentaires et d'une adresse IP supplémentaire à utiliser pour un nœud temporaire lors des mises à niveau. En outre, pour chaque cluster utilisateur associé, vous avez besoin d'une ou trois adresses pour le plan de contrôle du cluster utilisateur. Chaque cluster utilisateur à haute disponibilité nécessite trois nœuds dans le cluster admin pour le plan de contrôle du cluster utilisateur. Chaque cluster utilisateur standard nécessite un nœud du cluster d'administrateur pour le plan de contrôle du cluster utilisateur.
Par exemple, supposons que votre cluster d'administrateur soit associé à un cluster utilisateur à haute disponibilité et à un cluster utilisateur standard. Après la suppression, vous devez disposer de huit adresses IP pour les nœuds suivants :
- Nœud du plan de contrôle du cluster d'administrateur
- Deux nœuds complémentaires
- Trois nœuds pour le plan de contrôle du cluster utilisateur haute disponibilité
- Un nœud pour le plan de contrôle du cluster utilisateur standard
- Un nœud temporaire à utiliser lors des mises à niveau
Procédez comme suit :
Déterminez l'adresse IP utilisée pour le nœud de plan de contrôle du cluster d'administrateur :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Dans le résultat, recherchez le nœud répertorié en tant que plan de contrôle. Notez son adresse IP.
gke-admin-master-hdn4z Ready control-plane,master … 198.51.100.101 ...
Dans le cluster admin, modifiez la ressource personnalisée OnPremAdminCluster :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremadmincluster --namespace kube-system
Remplacez ADMIN_CLUSTER_KUBECONFIG par le chemin d'accès au fichier kubeconfig du cluster d'administrateur.
Supprimez les adresses IP sélectionnées de la section
ipBlocks
. Assurez-vous de ne pas supprimer l'adresse IP utilisée pour le nœud du plan de contrôle du cluster d'administrateur.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
Fermez la session de modification.
Dans votre cluster d'administrateur, affichez tous les objets Machine de l'espace de noms par défaut :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machines --output yaml
Supprimez tous les objets Machine utilisant l'une des adresses IP supprimées. Par exemple, supposons que vous ayez supprimé l'adresse 198.51.100.102 et que vous ayez découvert que l'objet Machine
gke-admin-node-
utilise cette adresse :Name: gke-admin-node-5678 Namespace: default ... Status: Addresses: Address: 198.51.100.102 Type: ExternalIP ...
Vous devez ensuite supprimer l'objet Machine
gke-admin-node-5678
.kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG delete machine gke-admin-node-5678
Affichez les adresses du nœud de cluster :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Vérifiez que les adresses IP supprimées n'apparaissent pas dans le résultat. Exemple :
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