일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- 리액트
- DBSCAN
- bigquery
- r
- Kaggle
- React
- 클러스터링
- 프론트엔드
- ADP
- 파이썬
- Kubernetes
- do it
- ADP 실기
- 캐글
- 최적화
- 구글
- 머신러닝
- 심층신경망
- TooBigToInnovate
- python
- docker
- 대감집 체험기
- 대감집
- 빅쿼리
- Machine Learning
- frontend
- 쿠버네티스
- 차원 축소
- 타입스크립트
- LDA
- Today
- Total
No Story, No Ecstasy
쿠버네티스 오브젝트 ( Kubernetes Object ) 본문
1. Deployment
- 컨테이너가 실행 중인지 계속해서 확인하고 관리하는 쿠버네티스 관리자
- 각 프로그램을 관리하기 위해 deployment object를 생성한다.
- Deployment가 Pod를 생성하고, 쿠버네티스는 요청된 파드를 실행한다.
- kubectl get/describe deployments로 조회할 수 있다.
- Controller object가 생성되어 deployment resource를 관리한다.
2. Pod (어원: 고래의 무리)
- 쿠버네티스의 기본 작업 단위
- 하나 이상의 컨테이너 그룹으로 구성된 쿠버네티스 오브젝트
- 함께 스케줄링, 동일 노드에서 실행, 저장 공간 공유 등의 목적으로 집합으로 묶인다.
3. Replica Set
- Pod 집합이나 레플리카들을 관리하는 오브젝트 (직접 다룰 일은 거의 없음)
- Deployment > Replica Set > Pod > Node로 이어진다.
4. Scheduler
- Pod 생성 및 실행 과정을 책임지는 컴포넌트
- 대기열에서 스케줄링되지 않은 Pod을 찾아 배치하고 실행할 노드를 찾는 역할
- Pod가 노드에 스케줄링되면 노드에서 실행 중인 kubelet이 실제로 컨테이너를 실행한다.
5. YAML 형식의 리소스 매니페스트
- 쿠버네티스는 선언형 시스템 > 실제 상태와 의도한 상태를 계속 조정해서 맞춰나감
- Deployment, Pod와 같은 리소스는 모두 내부 DB에 기록 > 조정 루프가 DB의 변경을 감지 및 대응
- 쿠버네티스 제어를 위해서 kubectl run 명령어를 사용하지 않고, YAML 파일을 직접 생성하고 수정
- kubectl apply -f YAML_FILE 명령어를 통해 클러스터에 전달
6. Service Resource
- 웹 브라우저에서 파드에 연결하기 위하여 필요
- 서비스 리소스는 Pod에 자동으로 라우팅되는 영구적인 IP Address / DNS 를 제공한다.
- 쿠버네티스 서비스는 웹 프록시나 로드 밸런서와 같이 요청을 Backend Pods에게 전달
- Deployment는 App의 Pod set를 관리하고, Service는 요청을 Pod에 전달하는 단일 Entry Point 제공
- kubectl port-forward service/demo 9999:8888과 같이 포트 포워딩
7. Helm: 쿠버네티스 패키지 매니저
- chart: 쿠버네티스에서 App을 실행하는 데 필요한 모든 리소스 정의를 포한한 패키지
- repository: 차트가 모여 있는 공유할 수 있는 공간
- release: 쿠버네티스 클러스터에서 실행되는 차트의 특정 인스턴스
'Shallow Series' 카테고리의 다른 글
Python 2차원 배열 (list of list) 선언 방법 (0) | 2021.01.21 |
---|---|
React 기초 (0) | 2021.01.15 |
쿠버네티스 클러스터 아키텍처 (0) | 2021.01.09 |
Kubernetes 관련 내용 (0) | 2021.01.08 |
Docker 관련 내용 (0) | 2021.01.08 |