Resource 라고도 부름
<Workload>
pods
<Workload-Controller>
replicationcontrollers
daemonsets
deployments
replicasets
statefulsets
horizontalpodautoscalers
cronjobs
jobs
<Network>
services
endpoints
ingresses
<Storage>
persistentvolumeclaims
persistentvolumes
storageclasses
secrets
configmaps
<RBAC>
clusterrolebindings
clusterroles
rolebindings
roles
serviceaccounts
certificatesigningrequests
<Etc>
nodes
Kubernetes Workload Resource 중에서 만들고 배포할 수 있는 가장 작은 기본 구성 단위
Kubernetes Cluster 내에서 애플리케이션을 배포하며 동작하는 프로세스
애플리케이션 컨테이너이며 하나 이상의 컨테이너로 구성될 수 있다. (그치만 1Pod, 1Container가 원칙)
Pod에 하나 이상의 컨테이너가 있다고 하더라도 Pod의 컨테이너는 같은 노드에서만 동작하고, 하나의 Pod에 있는 다중 컨테이너는 저장소, 네트워크는 IP등을 공유한다.
Pod의 메인 애플리케이션은 1개고, 나머지는 Side Car Pattern. 메인을 보조함
멀티 컨테이너 : Pod 컨테이너끼리 localhost로 통신가능
myapp-pod.yaml 파일 작성
파드 목록 확인 / -o yaml 또는 -o json 으로도 확인 가능
Events는 describe 명령어로만 확인 가능한 정보 / knode1의 kubelet이 docker에게 명령을 내려서 컨테이너를 생성하고 실행했다(docker run)
Pod Log 확인하기전에 node들의 내부 ip를 확인해보니
IP를 바꿔줘야한다
#[k-control & k-nodes]
echo "KUBELET_EXTRA_ARGS='--node-ip 192.168.200.50'" | sudo tee /etc/default/kubelet
sudo systemctl daemon-reload
sudo systemctl restart kubelet
#[k-control]
kubectl get nodes -o wide
다 바꿔줬다
Pod Log 확인