3.2. 컨트롤러
어떨 때 보는가
- 애플리케이션이 몇 개 떠 있는지 확인할 때
- 새 버전이 제대로 배포되었는지 볼 때
- 파드 수를 늘리거나 줄일 때
- 배포한 뒤 문제가 생겨 되돌려야 할 때
컨트롤러란 무엇인가
파드는 그 자체로는 다시 만들어지지 않습니다. 파드를 직접 만들어 두면, 그 파드가 종료되는 순간 애플리케이션도 함께 사라집니다. 노드가 내려가도 마찬가지입니다.
컨트롤러는 이 문제를 해결합니다. 사용자가 "원하는 상태" 를 정해 두면, 컨트롤러가 클러스터를 계속 지켜보며 실제 상태를 그 상태에 맞춥니다.
예를 들어 "복제본 3개" 라고 정해 두면 이렇게 동작합니다.
| 실제로 일어난 일 | 컨트롤러가 하는 일 |
|---|---|
| 파드 하나가 종료됐다 (2개 남음) | 새 파드를 하나 만들어 3개로 맞춥니다 |
| 노드가 내려가 파드 2개가 사라졌다 | 남은 노드에 2개를 새로 띄웁니다 |
| 누군가 파드를 손으로 지웠다 | 다시 만듭니다 |
| 복제본을 5로 바꿨다 | 2개를 더 만듭니다 |
사람이 지켜보지 않아도 됩니다. 이것이 Kubernetes 를 쓰는 가장 큰 이유 중 하나입니다.
선언형이라는 말의 뜻
Kubernetes 를 설명할 때 "선언형" 이라는 말이 나옵니다. 명령형과 비교하면 이해하기 쉽습니다.
| 방식 | 지시 내용 |
|---|