Cluster
- Master, Node 2가지 타입의 리소스가 존재한다.
- Master : cluster를 관리한다.
- Node : Worker Machine 으로 제공되는 VM 또는 물리적 컴퓨터이다.
각각의 Node 는 Node 를 관리하고 Kubernetes master와 커뮤니케이션을 할수 있는 Kubelet 이라는 agent 를 가지고 있다.
Node 는 master 가 노출시켜놓은 Kubernetes API 를 사용해서 통신을 한다.
https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/
Pod
- Deployment 를 생성하게 되면 Deployment는 Pod 를 생성하고 그 안에 Container 를 넣는다.
- Pod 는 1개 이상의 어플리케이션 컨테이너와 그 컨테이너들이 공유하는 리소스의 그룹이다.
- 공유 리소스는 volume, clusterIP 가 있다.
- Pod 안에 있는 Container 들은 IP 와 port 를 공유한다.
- Pod 는 Unique IP address 를 가지고 있다.
https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/
Service
- Pod 의 논리적 집합과 그것을 접근 할수 있는 정책을 정의 해준다.
- Service 가 설정하는 Pod 의 논리적 집합은 LabelSelector 로 정의 한다.
- 다음과 같은 type 이 존재한다.
type |
내용 |
ClusterIP |
default 이다. cluster 의 internal IP 만 노출 시키기 때문에 cluster 내부에서만 접근 가능하다. |
NodePort |
각각의 NodeIP 에 서비스를 노출시킨다. NodePort 서비스가 라우팅 할 ClusterIP 서비스가 자동으로 생성된다. 클러스터 외부에서 <NodeIP>:<NodePort> 로 접근 가능하다. |
LoadBalancer |
external IP 를 생성하여 클러스터 외부에서 접근 가능하게 해준다. ClusterIP 와 NodePort는 자동으로 생성된다. |
https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/
'Development > Docker&Kubernetes' 카테고리의 다른 글
[K8S] Replica Set vs Replication Controller 차이 (0) | 2019.05.08 |
---|---|
[K8S] Kubernetes Object Management 에 대해서 살펴보자. (0) | 2018.11.14 |
Docker 로 mysql 설치 및 접속 하기 (3) | 2018.09.18 |
Docker 사용시 sudo 없이 사용하기 (0) | 2018.09.10 |
[K8S] Kubernetes RBAC Authorization & Binding (0) | 2018.08.29 |