이 문서에서는 Google Distributed Cloud의 클러스터에서 고정 IP 주소를 삭제하는 방법을 보여줍니다.
노드에 고정 IP 주소를 사용하는 클러스터를 만들 때 IP 블록 파일에서 IP 주소 집합을 지정합니다. 나중에 필요한 것보다 많은 IP 주소를 지정했음을 알게 되면 클러스터에서 일부 IP 주소를 삭제할 수 있습니다.
사용자 클러스터에서 IP 주소 삭제
삭제 후 충분한 IP 주소가 남도록 유의하세요. 각 클러스터 노드당 1개의 IP 주소와 업그레이드 중 임시 노드에 사용할 추가 IP 주소가 필요합니다. 예를 들어 클러스터 노드가 3개인 경우 삭제 후 4개의 IP 주소가 남아 있어야 합니다.
다음 단계를 따르세요.
관리자 클러스터에는 연결된 각 사용자 클러스터에 대한 OnPremUserCluster 커스텀 리소스가 있습니다. 관리자 클러스터에서 사용자 클러스터의 OnPremUserCluster 커스텀 리소스를 수정하세요.
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremusercluster USER_CLUSTER_NAME \ --namespace USER_CLUSTER_NAME-gke-onprem-mgmt
다음을 바꿉니다.
- ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터 kubeconfig 파일의 경로
- USER_CLUSTER_NAME: 사용자 클러스터 이름
ipBlocks
섹션에서 선택한 IP 주소를 삭제합니다.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
수정 세션을 닫습니다.
사용자 클러스터에서 기본 네임스페이스의 모든 Machine 객체를 열람합니다.
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get machines --output yaml
삭제된 IP 주소 중 하나를 사용하는 모든 머신 객체를 삭제하세요. 예를 들어 주소 198.51.100.1을 삭제했는데
my-node-pool-1234
머신 객체가 해당 주소를 사용하는 것을 발견했다고 가정해 보겠습니다.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
그러면
my-node-pool-1234
머신 객체를 삭제해야 합니다.kubectl --kubeconfig USER_CLUSTER_KUBECONFIG delete machine my-node-pool-1234
몇 분 후 클러스터 노드 주소를 열람하세요.
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes --output wide
삭제된 IP 주소가 출력에 표시되지 않는 것을 확인합니다. 예를 들면 다음과 같습니다.
myhost2 Ready ... 198.51.100.2 myhost3 Ready ... 198.51.100.3 myhost4 Ready ... 198.51.100.4
관리자 클러스터에서 IP 주소 삭제
삭제 후 충분한 IP 주소가 남도록 유의하세요. 관리자 클러스터 제어 영역 노드에 IP 주소 1개, 부가기능 노드에 주소 2개, 업그레이드 중 임시 노드에 사용할 추가 IP 주소가 필요합니다. 또한 연결된 각 사용자 클러스터에 대해 사용자 클러스터 제어 영역에 1개 또는 3개의 주소가 필요합니다. 각 고가용성(HA) 사용자 클러스터의 경우는 사용자 클러스터의 제어 영역용 관리자 클러스터에 3개의 노드가 필요합니다. HA가 아닌 각 사용자 클러스터에는 사용자 클러스터의 제어 영역용 관리자 클러스터에 1개의 노드가 필요합니다.
예를 들어 관리자 클러스터가 HA 사용자 클러스터 1개 및 비HA 사용자 클러스터 1개와 연결되어 있다고 가정해 봅시다. 삭제 후에는 다음 노드를 수용할 IP 주소가 8개 남아 있어야 합니다.
- 관리자 클러스터 제어 영역 노드
- 부가기능 노드 2개
- HA 사용자 클러스터의 제어 영역용 노드 3개
- 비HA 사용자 클러스터의 제어 영역용 노드 1개
- 업그레이드 중에 사용할 임시 노드
다음 단계를 따르세요.
관리자 클러스터의 제어 영역 노드용 IP 주소를 확인합니다.
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
출력에서 제어 영역으로 나열된 노드를 찾습니다. IP 주소를 기록해 둡니다.
gke-admin-master-hdn4z Ready control-plane,master … 198.51.100.101 ...
관리자 클러스터에서 OnPremAdminCluster 커스텀 리소스를 수정합니다.
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG edit onpremadmincluster --namespace kube-system
ADMIN_CLUSTER_KUBECONFIG를 관리자 클러스터 kubeconfig 파일의 경로로 바꿉니다.
ipBlocks
섹션에서 선택한 IP 주소를 삭제합니다. 관리자 클러스터의 제어 영역 노드에 사용 중인 IP 주소를 삭제하지 않아야 합니다.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
수정 세션을 닫습니다.
관리자 클러스터에서 기본 네임스페이스의 모든 머신 객체를 확인합니다.
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machines --output yaml
삭제된 IP 주소 중 하나를 사용하는 모든 머신 객체를 삭제하세요. 예를 들어 주소 198.51.100.102를 삭제했는데
gke-admin-node-
머신 객체가 해당 주소를 사용하는 것을 발견했다고 가정해 보겠습니다.Name: gke-admin-node-5678 Namespace: default ... Status: Addresses: Address: 198.51.100.102 Type: ExternalIP ...
그러면
gke-admin-node-5678
머신 객체를 삭제해야 합니다.kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG delete machine gke-admin-node-5678
클러스터 노드 주소를 열람하세요.
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get nodes --output wide
삭제된 IP 주소가 출력에 표시되지 않는 것을 확인합니다. 예를 들면 다음과 같습니다.
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