3/4
1
아키텍처?
2
용어 설명?
API Server : kubectl 에서 오는 명령을 처리한다.
스케줄러 : 파드가 실행 가능한 노드를 찾는다.
컨터롤러 : 컨트롤 관리
etcd : k8s 의 모든 데이터 저장.
kubelet : 각 노드에서 수행 . 파드와 컨테이너 실행 등
kube-proxy : 각 노드에서 동작 , 로드밸런싱을 제공한다.
coredns : Pod가 서비스로 부터 ip 주소를 얻는 dns
3
각 node의 Pod 알아보기 ?
Master node에 동작하는 Pod
Work node에 동작하는 pod
Node : 제어를 하는 Master , 실행을 하는 node1 과 nodes2가 있다.
NAME : 실행 단위인 Pod이름
Image : 컨테이너 이미지와 태그
Pending : 파드 생성 중 , 아직 미생성 상태
Running : 파드의 모든 컨테이너가 생성됨. 실행됨. 파드에는 1개 이상의 컨터이너가 생성 가능하다.
Succeeded : 파드 안의 모든 컨테이너가 정상 종료 되었다는 뜻.
Failed : 파드 내에 적어도 하나의 컨테이너가 이상 종료 되었다는 뜻.
1
Flannel ?
L3 네트워크를 노드 간 구축한다.
서브넷 구성해서 한 노드의 파드가 다른 노드의 파드와 통신 할수 있도록 한다.
네트워크 기능만 있다.
접근 제어 기능을 제공하지는 않는다.
데몬셋 컨트롤러에 의해 배포 된다.
// 데몬셋은 모든 노드에 같은 파드를 실행하는데 주로 사용한다.
새로운 노드가 생성되면 공통으로 필요한 모니터링 시스템이 생겨야 할때 좋다.
2
Callico ?
칼리코.
접근제어 기능을 제공한다.
네임스페이스간 통신을 금지하는것이 가능하다.
// 네임스페이스는 별도의 공간으로 생각하면 된다.
예) 백앤드 서비스 네임스페이스를 만들고 어플리케이션을 설치한다.
서비스는 L4라고 생각하면 쉽다.
로드 밸런서이다.
외부에 서비스를 제공하는 것이다.
대표 IP 주소를 제공한다.
서비스 이름은 DNS이름으로 주소를 알수 있다.
컨트롤러를 알아야 제대 된 운영을 할수 있다.
실제 운영되는 Pod는 컨트롤러 기반에서 동작한다.
디폴로이먼트
레플리카셋
데몬셋
크론잡
https://brunch.co.kr/@topasvga/1904
https://brunch.co.kr/@topasvga/1827
감사합니다.