...
클러스터를 업그레이드 할 때 업데이트해야하는 두 부분 인 마스터와 노드가 있습니다. 먼저 마스터를 업데이트 한 다음 노드를 따라갈 수 있습니다. Kubernetes Engine을 사용하여 두 가지를 모두 업그레이드하는 방법을 살펴 보겠습니다.
다운 타임없이 마스터를 업그레이드하면
Kubernetes Engine이 포인트 릴리스가 출시 될 때 마스터를 자동으로 업그레이드하지만 일반적으로 새 버전 (예 : 1.7에서 1.8)으로 자동으로 업그레이드되지 않습니다. 새 버전으로 업그레이드 할 준비가되면 Kubernetes Engine 콘솔에서 마스터 업그레이드 버튼을 클릭하기만 하면됩니다.
...
노드를 업그레이드 할 때 사용할 수있는 몇 가지 다른 전략이 있습니다. 집중하고 싶은 두 가지가 있습니다.
- 롤링 업데이트
- 노드 풀을 사용한 마이그레이션
롤링 업데이트
Kubernetes 노드를 업데이트 하는 가장 간단한 방법은 롤링 업데이트를 사용하는 것입니다. 이는 Kubernetes Engine이 노드를 업데이트하는 데 사용하는 기본 업그레이드 메커니즘입니다.
...
롤링 업데이트의 완전 자동화 된 특성으로 인해 쉽게 수행 할 수 있지만 프로세스에 대한 제어 권한이 떨어집니다. 롤링 업데이트를 중지 한 다음 실행 취소해야하므로 문제가있는 경우 이전 버전으로 롤백하는데도 시간이 걸립니다.
노드 풀을 사용한 마이그레이션
롤링 업데이트 에서처럼 '활성'노드 풀을 업그레이드하는 대신 새 노드 풀을 만들고 모든 노드가 실행될 때까지 기다린 다음 한 번에 하나의 노드로 워크로드를 마이그레이션 할 수 있습니다.
...
Code Block |
---|
kubectl get nodes NAME STATUS AGE gke-cluster-1-default-pool-7d6b79ce-0s6z Ready 3h gke-cluster-1-default-pool-7d6b79ce-9kkm Ready 3h gke-cluster-1-default-pool-7d6b79ce-j6ch Ready 3h |
새 노드 풀 만들기
'pool-two'라는 이름으로 새 노드 풀 을 만들려면 다음 명령어를 실행하세요.
...
그러나 포드는 여전히 이전 노드에 있습니다! 이동합시다.
이전 풀 비우기
이제 작업을 새 노드 풀로 이동해야합니다. 롤링 방식으로 한 번에 하나의 노드 위로 이동합시다.
...
마이그레이션 중에 문제가있는 경우 이전 풀의 연결을 해제 한 다음 새 풀을 연결하고 비우십시오. 포드가 이전 풀로 다시 예약됩니다.
이전 풀 삭제
모든 포드가 안전하게 다시 예약되면 이전 풀 을 삭제할 차례입니다.
...