본문 바로가기

Computer Science/Kubernetes 정리

Kubernetes 정리 3 : Kube Controller Manager

1. Node Controller

노드 컨트롤러는 애플리케이션이 계속 실행될 수 있도록 노드의 상태를 모니터링하고 필요한 조치를 취한다.
노드 컨트롤러는 이 조치를 Kube API Server를 통해 수행한다.

  • 노드 컨트롤러는 5초마다 노드의 상태를 테스트한다.
  • 만약 노드가 멈추면 노드는 접근할 수 없는 것으로 표시된다.(Unreachable)
  • 하지만 바로 표시하지는 않고, 표시하기 전에 40초 동안 기다린다.
  • 노드가 접근할 수 없는 것으로 표시된다면 회복할 5분의 시간을 준다.
  • 5분안에 회복이 안 될 경우, 노드에 할당된 POD들을 제거하고 POD가 replica set의 일부인 경우, health 노드를 제공한다.

 

2. Replication Controller

Replication Controller는 replica set의 상태를 모티터링하고 replica set내의 정해진 POD 수를 항상 보장하는 역할을 한다.
POD가 죽으면 또 다른 POD를 만들어낸다.

 

3. 타 Controller (Namespace Controller, job-Controller 등)

이외의 컨트롤러들은 'Kubernetes Controller Manager'라는 단일 프로세스로 패키징 되어있다.

Kubernetes Controller Manager를 설치하면 이외의 컨트롤러도 설치된다.

4. Kube-Controller-Manager 설치

kubernetes Realease 페이지에서 Kube-control-manager를 다운받고 압축해제 및 서비스로 실행한다.