일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- tunneling
- crontab
- ripng
- rip
- 헤더
- ospfv3
- 스위치
- eigrpv2
- Chrony
- 라우터
- GLBP
- NAT
- 장비
- Inter VLAN
- 명령어
- ipv6
- OSI 7 layer
- Redistribute
- eigrp
- DHCP
- Etherchannel
- OSPF
- stp
- vrrp
- Vlan
- ACL
- CKA
- Today
- Total
Net Eng
[CKA] - Deployment & Pod Scale 본문
[선수 지식]
1. Deployment
- Deployment > ReplicaSet > Pod x N
- Rolling Update & Rollback
2. Pod Scale
1) kubectl scale CMD
kubectl scale deploy DEPLOY --replicas=N
2) kubectl edit CMD
kubectl edit deploy DEPLOY
3) kubectl apply CMD
kubectl get deploy DEPLOY -o yaml > deploy.yaml
vi deploy.yaml
kubectl apply -f deploy.yaml
[선수 작업]
kubectl config set-context k8s --user=kubernetes-admin --cluster=kubernetes
kubectl create ns devops
kubectl create deployment eshop-order --image=nginx --replicas=2 -n devops
[문제1]
Expand the number of running Pods in eshop-order to 5.
namespace: devops
deployment: eshop-order
작업 클러스터: k8s
[풀이]
kubectl config current-context
* 현재 context 확인
kubectl config use-context k8s
* k8s 클러스터 사용
kubectl get ns devops
* 네임스페이스 확인
kubectl get deploy -n devops
* deployment 확인
kubectl scale deploy eshop-order --replicas=5 -n devops
* scale 명령어
kubectl get deploy eshop-order -n devops
* deployment 확인
kubectl get pods -n devops
* Pod 확인
[문제2]
Q. Create a deployment as follows:
TASK:
name: webserver
replicas: 2
label: app-env-stage=dev
container name: webserver
container image: nginx:1.14
Scale Out Deployment.
Scale the deployment webserver to 3 pods
[풀이]
kubectl create deploy webserver --image=nginx:1.14 --port=80 --replicas=2 --dry-run=client -o yaml
* dry-run 명령어로 yaml 추출
kubectl create deploy webserver --image=nginx:1.14 --port=80 --replicas=2 --dry-run=client -o yaml > webserver.yaml
* 해당 내용으로 yaml파일 생성
apiVersion: apps/v1
kind: Deployment
metadata:
name: webserver
spec:
replicas: 2
selector:
matchLabels:
app_env_stage: dev
template:
metadata:
labels:
app_env_stage: dev
spec:
containers:
- image: nginx:1.14
name: webserver
* yaml 파일 수정
kubectl apply -f webserver.yaml
* yaml 파일 적용
kubectl get deploy webserve
* 생성된 deploy 확인
kubectl get pods
* Pod 확인
kubectl scale deploy webserver --replicas=3
* scale 명령어
kubectl get pods --show-labels
* Pod 확인
[참고]
Kubectl Reference Docs
kubernetes.io
'Cloud > Kubernetes' 카테고리의 다른 글
[CKA] - Node Labels & nodeSelector (0) | 2024.01.21 |
---|---|
[CKA] - Rolling update & Roll Back (0) | 2024.01.19 |
[CKA] - Side-car Container Pod 생성하기 (0) | 2024.01.19 |
[CKA] - Multi-Container Pod 생성하기 (0) | 2024.01.19 |
[CKA] - Static Pod 생성하기 (0) | 2024.01.18 |