2022. 5. 29. 19:55ㆍkubernetes
Pod(파드)
- 쿠버네티스가 관리할 수 있는 가장 작은 워크로드를 파드라한다.
- 컨테이너의 모음
파드 생성 및 관리
- 명령형 커맨드
▶ 파드 생성
kubectl run myweb --image 이미지명
▶ 파드 목록 확인
kubectl get pods
▶ 특정 파드 확인
kubectl get pods myweb
▶ 파드 상세 정보 확인
# 파드들의 다양한 상세정보 확인
kubectl get pods -o wide
# yaml형식으로 상세정보 확인
kubectl get pods -o yaml
# json형식으로 상세정보 확인
kubectl get pods -o json
지정한 파드의 자세한 정보 확인
kubectl describe pods myweb
▶ 파드(애플리케인션) 로그 확인
kubectl logs <파드명>
▶ 파드 삭제
kubectl delete pods 파드명
▶ 파드의 기본 형식을 확인
kubectl explain pods
YAML 파일형식으로 파드 정의
파일명.yaml
apiVersion: v1
kind: Pod
metadata:
name: myweb
spec:
containers:
- name: myweb
image: httpd
ports:
- containerPort: 80
protocol: TCP
▶ 정의한 yaml파일의 파드 생성
kubectl create -f 파일명.yaml
▶ 생성한 yaml파일의 파드의 상태 확인
kubectl get -f 파일명.yaml
▶ 생성한 yaml파일의 자세한 상태 및 정보 확인
kubectl describe -f 파일명.yaml
▶ 생성한 yaml파일의 pod의 삭제
kubectl delete -f 파일명.yaml
> 참고 자료
http:// https://kubernetes.io/ko/docs/concepts/workloads/pods/
kubectl 명령의 서브 명령
- create : 생성
- get : 정보 확인
- describe : 자세한 정보 확인
- logs : 로그 정보 확인
- delete : 삭제 및 제거
- replace : 변경 된 사항 수정
- patch : 변경된 사항 패치(적용 및 겹쳐쓰기 혹은 덮어쓰기)
- apply : 변경한 사항 적용
> replace, patch, apply는 변경된 파일에 사용에 관한 서브 명령어
- diff : 변경된 사항과 다른 부분 표시
파드 디자인
> 파드 디자인 형태 구조 그림
- 단일 컨테이너 : 일반적인 형태
- 멀티 컨테이너 : 메인 애플리케이션이 존재하고 그 메인 애플리케이션의
기능을 확장하기 위한 컨테이너를 배치한 형태
▶ 사이드카 패턴
- sidecar : 기능의 확장
- ambassador : 프록시/LB
- adpator : 출력의 표준사항
포트 및 포트 포워딩
- 테스트 및 디버깅의 목적으로 사용한다.
- 포트 포워딩 : 포트를 원하는 포트로 설정하는 것
파드의 포트 포워딩
kubectl port-forward pods/파드명 8080:80
이름과 UID의 지정 규칙
- 이름 : 한 네임스페이스(사용 및 지정된 공간)에서 유일해야 한다.
(다른 네임스페이스에서는 중복된 이름 사용 가능)
- UID : 클러스터에서 유일해야 한다. (중복되어 사용할 수 없음)
'kubernetes' 카테고리의 다른 글
Label과 LabelSelector, Annotations (0) | 2022.05.29 |
---|---|
Namespace (0) | 2022.05.29 |
Kubernetes Objects (0) | 2022.05.19 |
Kubespray로 Kubernetes 설치 (0) | 2022.05.17 |
K8s(kubernetes) 설치 (0) | 2022.05.17 |