본문 바로가기

YAML9

클러스터 외부 서비스 - LoadBalancer ClusterIP cluster 내부용 서비스 NodePort k8s 모든 노드(호스트)에 외부 접근용 포트를 할당. 노드의 포트를 사용하여 외부에서 접근 가능. 노드의 포트로 접근 -> 서비스에 의해 파드로 redirection 파드를 실행하고 있지 않는 노드에도 포트가 할당되고 접근 가능하다. LoadBalancer NodePort의 확장판 클러스터 외부의 loadbalancer를 사용하여 외부에서 접근 가능 외부 loadbalancer로 접근하면 서비스를 통해 파드로 redirection 클라우드 공급업체(AWS, GCP 등)에서 지원하는 기능. External Name 외부에서 접근하기 위한 종류 아님. 외부의 특정 FQDN에 대한 CNAME 매핑을 제공 파드가 CNAME을 이용해 특정 FQDN과.. 2020. 8. 23.
4.4. DaemonSet 1. DaemonSet 소개 노드 레이블과 매칭이 되는 모든 노드 또는 노드 레이블이 없다면 모든 노드에 하나씩의 파드를 동작시키는 컨트롤러. 특정 노드에 파드를 배치되도록 하는 것. 노드가 추가되거나 노드의 레이블이 추가됐을 때 조건이 맞으면 실행★ 실행할 노드가 없으면 죽어버린다. 동일한 노드에 두개의 파드가 만들어지지 않는다. -> 하나에 하나만 만들어진다. 기능은 레플리케이션 컨트롤러와 레플리카셋과 비슷하지만, 복제본을 지정하지 않는다. 노드가 추가되면 자동으로 컨트롤러는 하나의 파드를 배치 노드가 제거되면 삭제된 파드를 다른 노드에 배치하지 않는다. -> 복제본 컨트롤러가 아니기 때문. 2. DaemonSet 생성 데몬셋 오브젝트의 API 버전 역시 apps 그룹의 v1 버전을 사용한다. # m.. 2020. 7. 29.
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.