쿠버네틱스
[K8S] 나만의 명령어 모음집 (진행중)
피리음
2023. 5. 3. 13:40
미니큐브 실행
$ minikube start
실행이 되면 미니큐브(마스터노드)가 kubectl 명령의 대상이 된다.
미니큐브는 내 호스트 내 가상 클러스터이다.
이미지를 설정하여 deployment 만들기
# kubectl create deployment {deployment-name} --image={image-name}
$ kubectl create deployment first-dep --image=sororiri/simple-node-app
deployment의 Pod를 3개로 만들기
$ kubectl scale deployment/{deployment-name} --replicas=3
$ kubectl scale deployment/{deployment-name} --replicas=3
결과값
deployment.apps/first-dep scaled
미니큐브의 service 에 IP 할당하기
# minikube service {deployment-name}
$ minikube service first-app
결과값
HOST에서 접근할 수 있는 IP를 할당 받음
|-----------|-----------|-------------|---------------------------|
| NAMESPACE | NAME | TARGET PORT | URL |
|-----------|-----------|-------------|---------------------------|
| default | first-dep | 8080 | http://192.168.49.2:30486 |
|-----------|-----------|-------------|---------------------------|
서비스 확인
$ kubectl get services
결과값
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
first-dep LoadBalancer 10.110.29.253 <pending> 8080:31616/TCP 13s
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4h26m
배포 이미지 변경하기 (변경시에는 이미지의 태그가 달라야 변경된다)
# kubectl set image deployment/{deployment_ID} {containerID}={image_ID}:{tag}
$ kubectl set image deployment/first-dep simple-node-app=sororiri/simple-node-app:2
결과값
deployment.apps/first-dep image updated
배포 상태 확인하기 (정상적으로 진행됨을 확인함)
$ kubectl rollout status deployment/first-dep
> deployment "first-dep" successfully rolled out
최근의 deployment 작업을 롤백시키기
$ kubectl rollout undo deployment/first-dep
개정 3의 정보 보기
$ kbctl rollout history deployment/first-dep --revision 3
결과값
deployment.apps/first-dep with revision #3
Pod Template:
Labels: app=first-dep
pod-template-hash=65cb68cd9c
Containers:
kb-app:
Image: sororiri/kb-app
Port: <none>
Host Port: <none>
Environment: <none>
Mounts: <none>
Volumes: <none>