728x90
반응형
# pod란 무엇인가?
- pod를 통해 컨테너가 관리되는 이유는 무엇일까? 컨테이너 집합은 때때로 함께 스케줄링되고, 동일노드에서 실행되며, 로컬로 통신을 하거나 저장 공간을 공유해야 하기 때문이다.
예를 들어보면, 블로그 애플리케이션은 컨테이너를 동기화하는 컨테이너와 블로그 콘텐츠를 사용자에게 제공하는 웹서버 컨테이너로 구성이 될 것이다. 두 컨테이너는 데이터를 공유 해야 하기 때문에 pod 하나에 함께 스케줄링 되어야 한다. 그리고 대부분의 애플리케이션은 하나의 pod에서 위의 과정을 수행하게 된다.
- 중요한것은 kubectl run 명령어가 실제로 pod를 직접 생성하지는 않는다. 디플로이먼트가 생성이 되고, 디플로이먼트가 pod를 생성한다.
# yaml 파일을 사용하여 작성
# pod 디스크립터 작성 (마스터 노스에서 실행)
2. 검색창에서 pod Overview 을 검색
3. Pod Overview 로 이동
4. Control + f 후 kind: 찾기
pod 디스크립터 정보를 확인 할 수있음.
# 디스크립터 작성
mkdir yaml
cd yaml
gedit go-http-pod.yaml
# 파일내용
apiVersion: v1
kind: Pod
metadata:
name: http-go
spec:
containers:
- name: http-go
image: gasbugs/http-go
ports:
- containerPort: 8080
# 저장 후 실행
kubectl create -f go-http-pod.yaml
# pod의 정보를 보는 방법
kubectl get pod http-go
kubectl get pod http-go -o wide
kubectl get pod http-go -o yaml
kubectl describe pod http-go
# 서비스 접근하기
kubectl port-forward http-go 8080:8080
127.0.0.1:8080
- 접근해서 서비스 확인하기
# 생성한 pod 삭제하기
kubectl delete -f go-httpp-pod.yaml
kubectl delete pod http-go
# 모든 pod 삭제
kubectl delete all --all
kubectl delete pod --all
# 만약 pod가 terminating 상태에서 삭제가 안될경우 아래의 명령어 사용
kubectl delete pods [pod name] --grace-period=0 --force
kubectl delete pods nginx-6799fc88d8-jb5xc --grace-period=0 --force
# pod에 log 보기
kubectl logs http-go
# pod에 주석달기
kubectl annotate pod http-go test1234=test1234
728x90
반응형
'⭐ Kubernetes & EKS > Kubernetes (쿠버네티스)' 카테고리의 다른 글
쿠버네티스 - pod - 라이브니스 프로브, 레디니스 프로브 구성 (0) | 2021.09.07 |
---|---|
jenkins를 yaml파일로 작성하여 실행하기 (0) | 2021.09.06 |
큐브시스템 컴포넌트와 etcd 데이터베이스 살펴보기 (0) | 2021.09.06 |
Minikube 설치 (0) | 2021.09.06 |
젠킨스 앱을 쿠버네티스에서 실행하기 (0) | 2021.09.05 |