반응형
Kubernetes란?
쿠버네티스란?
: Container 오케스트레이션 툴 입니다.
- 오케스트레이션은 여러 개의 컴퓨터 시스템, 애플리케이션 및 서비스를 조율하고 관리하는 것
이것이 무슨 뜻이냐면,
Docker는 컨테이너화된 애플리케이션을 패키징하고 배포하는 효율적인 방법을 제공하지만, Docker만으로는 대규모로 컨테이너를 실행하고 관리하기는 어렵습니다.
- ex)여러 서버/클러스터에서 컨테이너를 조정 및 예약하고, 가동 중지 시간 없이 애플리케이션을 업그레이드 또는 배포 등
따라서 이와 같은 여러 문제를 해결하기 위해 컨테이너를 오케스트레이션 하는 솔루션이 바로 Kubernetes 입니다.
- POD는 컨테이너가 모인 집합체의 단위, 적어도 하나 이상의 컨테이너로 구성
- 단일 파드에는 단일 컨테이너만을 권장
- 서비스에 이름을 지정하지 않으면 파드와 동일한 이름으로 생성된다.
- namespace는 자원을 격리 할 수 있다.
쿠버네티스 명령어
쿠버네티스 명령어
kubectl get pod [pod name]: default 네임스페이스에 있는 pod들을 보여준다. * 네임스페이스를 지정해주지 않으면 default 네임스페이스에 있는 것만 보여준다. ex) kubectl get pod nginx -n 1team: 1team 네임스페이즈 지정해서 pod를 보여준다. kubectl get namespaces: 네임스페이스들을 보여준다. kubectl create namespace [namespace name]: 네임스페이스를 만든다. kubectl delete namespace [namespace name]: 네임스페이스를 지운다. kubectl apply -f [yml file name]: yml파일을 실행한다. kubectl run [pod name] --image [image name]: "[image name]"이미지로 "[pod name]"이라는 pod를 실행한다. kubectl delete pod [pod name]: pod를 삭제한다. kubectl expose [pod name] --type=NodePort: NodePort 서비스로 파드를 노출시킨다. * yml 파일로 만든 pod는 label이 없어서 expose 명령을 사용 할 수 없다. kubectl edit pod [pod name]: pod의 설정을 vi로 열어 수정 할 수 있다. kubectl get service: 서비스 항목을 보여준다. kubectl delete service [서비스 명]: 서비스를 지워준다.
yml파일 생성
ansible 처럼 yaml 파일로 만들어서 실행시키면 파드를 만들 수 있다.
apache pod 생성
--- apiVersion: v1 kind: Pod metadata: name: apache spec: containers: - name: httpd image: httpd ports: - containerPort: 80
반응형
'쿠버네티스 > 이론' 카테고리의 다른 글
쿠버네티스 Ingress 란? (0) | 2024.11.04 |
---|---|
쿠버네티스 Service 란? (0) | 2024.11.01 |
쿠버네티스 Job 리소스 란? (0) | 2024.10.31 |
쿠버네티스 라이브니스 프로브, 데몬셋 이란? (0) | 2024.07.18 |
쿠버네티스 클러스터 구조 알아보기 (0) | 2024.04.10 |