티스토리 뷰
1. Init Container
Application 컨테이너 실행 전 미리 동작 시킬 컨테이너로, 본 컨테이너 실행 전 사전 작업이 필요한 경우 사용합니다.
그림과 같이 application을 실행하기 위해 DB - login 등으로 여러 작업이 선행되어야 하는 상황이라고 생각하면 됩니다.
이 때 필요한 컨테이너의 개수는 3개로, 우측 상단처럼 3/3으로 표시됩니다.(3/3으로 전부 잘 올라와야 application 정상 실행)
2. Static Container
이제까지는 생성한 pod들을 특정 worknode에 할당할 수 없었고, master node에 의해 자동으로 고르게 분배되어 올라갔습니다.
그러나 Static 컨테이너를 통해 특정 node에서만 실행하도록 pod를 지정해줄 수도 있습니다.
Static 컨테이너는 master node의 API 서버 없이 특정 노드에 있는 kubelet 데몬에 의해 직접 관리되는 컨테이너입니다.
Static container = master가 아니라 kubelet이라는 데몬에 의해 만들어지는 컨테이너
각 worknode의 /var/lib/kubelet/config.yaml
경로 파일을 열면 "staticPodPath"를 확인할 수 있습니다.
config.yaml 파일에서 /etc/kubernetes/manifests
가 staticPodPath로 설정된 것을 알 수 있습니다.
staticPodPath로 설정된 해당 경로에 yaml 파일을 추가하면 바로 컨테이너가 생성되며, 이렇게 생성된 staticpod는 master에서 kubectl delete pods --all
로 지워도 사라지지 않습니다. (Pending → 다시 Running 상태로 무한 재생성)
완전히 생성한 static pod를 삭제하려면 다시 위의 경로(/etc/kubenetes/manifests)로 돌아가 yaml 파일을 삭제해주면 됩니다.
worknode 뿐만 아니라 masternode의 path에도 yaml 파일을 생성하면 마찬가지로 노드 생성이 가능합니다.
masternode의 staticPodPath 경로에는 기본적으로 위와 같은 yaml 파일들이 저장되어 있습니다.
'IaC > Kubernetes' 카테고리의 다른 글
[Kubernetes] livenessProbe (0) | 2023.04.14 |
---|---|
[Kubernetes] Cordon & Drain (0) | 2023.04.07 |
[Kubernetes] Scale-out과 yaml 파일 수정 (0) | 2023.04.06 |
[Kubernetes] kubectl 명령어 정리 (0) | 2023.04.05 |
[Kubernetes] Kubernetes System: 컨테이너 관리의 자동화 (0) | 2023.04.05 |
- Total
- Today
- Yesterday
- kubectl
- Route53 비용 정책
- EKS
- AWS
- Git
- VPC
- Window Server Manager
- redhat
- VM Tools
- Route53
- Google Cloud DNS
- IAM
- Linux
- IAC
- vsphere
- github
- 에티버스러닝
- Vmware
- Local Zones
- kubernetes
- ycampus
- Azure DNS
- aws cli
- RECA
- 클라우드 DNS 서비스
- rocky9
- Ansible
- Docker
- Windows Server
- k8s
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |