본문 바로가기

분류 전체보기55

4.4. DaemonSet 1. DaemonSet 소개 노드 레이블과 매칭이 되는 모든 노드 또는 노드 레이블이 없다면 모든 노드에 하나씩의 파드를 동작시키는 컨트롤러. 특정 노드에 파드를 배치되도록 하는 것. 노드가 추가되거나 노드의 레이블이 추가됐을 때 조건이 맞으면 실행★ 실행할 노드가 없으면 죽어버린다. 동일한 노드에 두개의 파드가 만들어지지 않는다. -> 하나에 하나만 만들어진다. 기능은 레플리케이션 컨트롤러와 레플리카셋과 비슷하지만, 복제본을 지정하지 않는다. 노드가 추가되면 자동으로 컨트롤러는 하나의 파드를 배치 노드가 제거되면 삭제된 파드를 다른 노드에 배치하지 않는다. -> 복제본 컨트롤러가 아니기 때문. 2. DaemonSet 생성 데몬셋 오브젝트의 API 버전 역시 apps 그룹의 v1 버전을 사용한다. # m.. 2020. 7. 29.
4.3. ReplicaSet 1. ReplicaSet 소개 replication controller의 문제점 및 기능을 개선을 위해 추가되었다. replication controller가 제공하는 기능과 거의 비슷하다. 기본적으로 요구하는 복제본 개수만큼 pod를 복제하고 모니터링하며 관리한다. 2. ReplicaSet과 replication controller의 비교 pod의 다중 레이블 지원 파드 들은 레이블이 여러 개 있을 수 있다.ex) app: web, env: dev 레이블이 몇개든 상관없다. 레플리케이션 컨트롤러는 레이블을 하나밖에 모른다. pod에 설정된 레이블의 키만 선택 가능 env라는 레이블의 키만 가지고 있어도 된다.=> 특정 레이블의 키만 가지고 있어도 된다. 레이블은 생성한 직후에는 같지만 나중에 추가하거나.. 2020. 7. 28.
4.2. Replication Controller kubernetes의 컨트롤러는 파드를 올바르게 동작하기 위해 특정 상태를 보장하기 위한 기능이다. 특정 상태는 컨트롤러에 따라 동작하는 방식 및 정의하는 상태에 따라 다르다. 1. replication controller란? 파드가 특정 개수만큼이 복제되고 동작하는 것을 보장한다. 최신 버전에서는 잘 쓰지 않는다. label을 수정하면 label이 달라지기 때문에 복제본을 새로 만든다 -> 복제본이 하나 없어졌다고 판단하기 때문에 노드에 문제가 발생했거나 파드가 문제가 생겨 원하는 수의 파드가 동작하지 않는다면 자동으로 스케줄러에 의해 새로운 노드나 기존 노드에 다시 새로운 파드를 생성해 원하는 수의 파드를 복제해서 동작시킨다. 파드가 원하는 수보다 많은 경우에도 원하는 파드 수로 맞춘다. --> 불필.. 2020. 7. 24.
4.1. Liveness Probe 1. liveness probe 소개 라이브니스 프로브는 pod에 의해 컨테이너를 동작시키고, 동작하고 있는 컨테이너가 잘 동작하는지 주기적으로 모니터링한다. 만약 모니터링 도중 파드의 오류가 발생하면 해당 컨테이너를 재시작한다. 재시작을 했는데도 안된다 -> pod fail .spec.containers에서 지정. 컨테이너마다 지정 라이브니스 프로브는 세 가지 메커니즘을 가지고 컨테이너의 상태를 모니터링한다. HTTP GET probe 특정 경로에 HTTP GET 요청 HTTP 응답 코드가 2XX 또는 3XX인지 확인함 TCP socket probe 특정 TCP 포트 연결을 시도함 Exec probe 컨테이너 내부의 바이너리(명령)를 실행하고 종료 코드 확인 2. liveness probe 생성 ..... 2020. 7. 24.