In diesem Dokument wird gezeigt, wie Sie statische IP-Adressen aus einem Cluster in Google Distributed Cloud entfernen können.
Wenn Sie einen Cluster erstellen, der statische IP-Adressen für die Knoten verwendet, geben Sie einen Satz von IP-Adressen in einer IP-Blockdatei an. Wenn Sie später feststellen, dass Sie mehr IP-Adressen als erforderlich angegeben haben, können Sie einige der IP-Adressen aus dem Cluster entfernen.
IP-Adressen aus einem Nutzercluster entfernen
Achten Sie darauf, dass nach dem Entfernen genügend IP-Adressen verbleiben. Sie benötigen eine IP-Adresse für jeden Clusterknoten sowie eine zusätzliche IP-Adresse, die während Upgrades für einen temporären Knoten verwendet wird. Wenn Sie beispielsweise drei Clusterknoten haben, benötigen Sie nach dem Entfernen vier verbleibende IP-Adressen.
Gehen Sie so vor:
Der Administratorcluster hat für jeden zugeordneten Nutzercluster eine benutzerdefinierte OnPremUserCluster-Ressource. Bearbeiten Sie im Administratorcluster die benutzerdefinierte OnPremUserCluster-Ressource für Ihren Nutzercluster:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremusercluster USER_CLUSTER_NAME \ --namespace USER_CLUSTER_NAME-gke-onprem-mgmt
Dabei gilt:
- ADMIN_CLUSTER_KUBECONFIG: der Pfad der kubeconfig-Datei des Administratorclusters
- USER_CLUSTER_NAME: der Name Ihres Nutzerclusters
Entfernen Sie ausgewählte IP-Adressen aus dem Abschnitt
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
Schließen Sie die Bearbeitungssitzung.
Sehen Sie sich in Ihrem Nutzercluster alle Maschinenobjekte im Standard-Namespace an:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get machines --output yaml
Löschen Sie alle Maschinenobjekte, die eine der entfernten IP-Adressen verwenden. Angenommen, Sie haben die Adresse 198.51.100.1 entfernt und Sie stellen fest, dass das Maschinenobjekt
my-node-pool-1234
diese Adresse verwendet: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
Anschließend müssen Sie das Maschinenobjekt
my-node-pool-1234
entfernen.kubectl --kubeconfig USER_CLUSTER_KUBECONFIG delete machine my-node-pool-1234
Rufen Sie nach einigen Minuten die Adressen des Clusterknotens auf:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes --output wide
Achten Sie darauf, dass entfernte IP-Adressen nicht in der Ausgabe angezeigt werden. Beispiel:
myhost2 Ready ... 198.51.100.2 myhost3 Ready ... 198.51.100.3 myhost4 Ready ... 198.51.100.4
IP-Adressen aus einem Administratorcluster entfernen
Achten Sie darauf, dass nach dem Entfernen genügend IP-Adressen verbleiben. Sie benötigen eine IP-Adresse für den Knoten der Administratorclusterebene, zwei Adressen für Add-on-Knoten und eine zusätzliche IP-Adresse, die während eines Upgrades für einen temporären Knoten verwendet wird. Außerdem benötigen Sie für jeden zugeordneten Nutzercluster entweder eine oder drei Adressen für die Steuerungsebene des Nutzerclusters. Jeder HA-Nutzercluster (Hochverfügbarkeit) erfordert drei Knoten im Administratorcluster für die Steuerungsebene des Nutzerclusters. Jeder Nicht-HA-Nutzercluster erfordert einen Knoten im Administratorcluster für die Steuerungsebene des Nutzerclusters.
Angenommen, Ihr Administratorcluster ist einem HA-Nutzercluster und einem Nicht-HA-Nutzercluster zugeordnet. Nach dem Entfernen müssen Sie acht IP-Adressen haben, um die folgenden Knoten unterzubringen:
- Knoten der Administratorcluster-Steuerungsebene
- Zwei Add-on-Knoten
- Drei Knoten für die Steuerungsebene des HA-Nutzerclusters
- Einen Knoten für die Steuerungsebene des Nicht-HA-Nutzerclusters
- Ein temporärer Knoten, der während der Upgrades verwendet werden soll
Gehen Sie so vor:
Ermitteln Sie die IP-Adresse, die für den Knoten der Steuerungsebene des Administratorclusters verwendet wird:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Suchen Sie in der Ausgabe den Knoten, der als Steuerungsebene aufgeführt ist. Notieren Sie sich die IP-Adresse.
gke-admin-master-hdn4z Ready control-plane,master … 198.51.100.101 ...
Bearbeiten Sie im Administratorcluster die benutzerdefinierte OnPremAdminCluster-Ressource:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremadmincluster --namespace kube-system
Ersetzen Sie ADMIN_CLUSTER_KUBECONFIG durch den Pfad der kubeconfig-Datei des Administratorclusters.
Entfernen Sie ausgewählte IP-Adressen aus dem Abschnitt
ipBlocks
: Achten Sie darauf, die IP-Adresse, die für den Knoten der Steuerungsebene des Administratorclusters verwendet wird, nicht zu entfernen.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
Schließen Sie die Bearbeitungssitzung.
Sehen Sie sich in Ihrem Administratorcluster alle Maschinenobjekte im Standard-Namespace an:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machines --output yaml
Löschen Sie alle Maschinenobjekte, die eine der entfernten IP-Adressen verwenden. Angenommen, Sie haben die Adresse 198.51.100.102 entfernt und Sie stellen fest, dass das Maschinenobjekt
gke-admin-node-
diese Adresse verwendet:Name: gke-admin-node-5678 Namespace: default ... Status: Addresses: Address: 198.51.100.102 Type: ExternalIP ...
Anschließend müssen Sie das Maschinenobjekt
gke-admin-node-5678
entfernen.kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG delete machine gke-admin-node-5678
Rufen Sie die Adressen des Clusterknotens auf:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
Achten Sie darauf, dass entfernte IP-Adressen nicht in der Ausgabe angezeigt werden. Beispiel:
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