Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- tunneling
- ospfv3
- 장비
- 스위치
- OSPF
- Chrony
- OSI 7 layer
- ripng
- rip
- Redistribute
- Inter VLAN
- 명령어
- 헤더
- DHCP
- ACL
- eigrpv2
- ipv6
- stp
- Etherchannel
- GLBP
- NAT
- eigrp
- CKA
- Vlan
- 라우터
- vrrp
- crontab
Archives
- Today
- Total
Net Eng
[CKA] - Static Pod 생성하기 본문
Static Pod 란?
- kubernetes 클러스터에 직접 정의된 Pod, 일반적으로 API 서버에 의해 생성되지 않는다.
- kubelet에 의해 관리되는 Pod
- 지정된 노드에 관리용으로 생성되어야 하는 파드를 기동할 때 사용한다.
Manifest 파일
정적 Pod을 정의하기 위해서는 해당 Pod의 구성을 담은 manifest 파일이 필요합니다. 이 파일은 보통 YAML 또는 JSON 형식으로 작성되며, Pod의 메타데이터, 컨테이너, 볼륨 및 기타 설정을 정의합니다.
kubelet의 디렉토리
정적 Pod을 실행하려면 kubelet이 정적 manifest 파일을 읽을 수 있는 디렉토리를 설정해야 합니다. 이 디렉토리는 일반적으로 kubelet의 구성 파일에 정의되어 있습니다.
/var/lib/kubelet/config.yaml 파일
Static Pod의 경로(ex: staticPodPath: /etc/kubernetes/manifests)
[문제]
Q. Configure kubelet hosting to start a pod on the node
TASK:
- Node: node01
- Pod Name: web
- Image: nginx
[풀이]
kubectl get nodes
kubectl run web --image=nginx --dry-run=client -o yaml
* dry-run으로 yaml 파일을 추출
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: web
name: web
spec:
containers:
- image: nginx
name: web
resources: {}
dnsPolicy: ClusterFirst
restartPolicy: Always
status: {}
ssh node01
* node01에 접속
sudo -i
* 관리자 권한
cat /var/lib/kubelet/config.yaml
* config.yaml 파일 확인
staticPodPath: /etc/kubernetes/manifests
* staticPodPath 확인
cd /etc/kubernetes/manifests
* 해당 위치로 이동
cat > web-pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: web
spec:
containers:
- image: nginx
name: web
'Cloud > Kubernetes' 카테고리의 다른 글
[CKA] - Deployment & Pod Scale (0) | 2024.01.19 |
---|---|
[CKA] - Side-car Container Pod 생성하기 (0) | 2024.01.19 |
[CKA] - Multi-Container Pod 생성하기 (0) | 2024.01.19 |
[CKA] - Pod 생성하기 (0) | 2024.01.18 |
[CKA] - etcd Backup & Restore (0) | 2024.01.18 |