일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- PETERICA
- MySQL
- Java
- kotlin querydsl
- 정보처리기사 실기
- 정보처리기사실기 기출문제
- 기록으로 실력을 쌓자
- kotlin
- 오블완
- CloudWatch
- Elasticsearch
- kotlin spring
- Spring
- aws
- 티스토리챌린지
- AWS EKS
- 코틀린 코루틴의 정석
- Pinpoint
- 공부
- mysql 튜닝
- minikube
- IntelliJ
- Linux
- CKA 기출문제
- APM
- 정보처리기사 실기 기출문제
- AI
- CKA
- Kubernetes
- kotlin coroutine
- Today
- Total
피터의 개발이야기
[kubernetes] Pod 생성 과정으로 쿠버네티스 오브젝트 역할이해하기 본문
ㅁ 들어가며
이전 글, [kubernetes]쿠버네티스 아키텍처에서 쿠버네티스의 아키텍처를 살펴보았다. 이 글에서는 od를 생성하는 과정을 예로 들어 쿠버네티스의 오브젝트들의 역할을 살펴보았다.
ㅁ Pod 생성 과정
각 모듈은 서로 통신하지 않고 오직 API Server와 통신한다. API Server를 통해 etcd에 저장된 상태를 체크하고 현재 상태와 원하는 상태가 다르면 필요한 작업을 수행한다.
1. Pod 생성요청
ㄴ kubectl을 이용하여 ReplicaSet 명세를 yml파일로 정의하여 API Server에게 전달한다.
2. etcd에 기록
ㄴ API Server는 새로운 Pod Object를 etcd에 저장한다.
3. Pod 생성 요청 감시
ㄴAPI Server는 unscheduled pod event를 생성
ㄴ Scheduler는 할당되지 않은 Pod가 있는지 event를 체크한다.
4. Node에 Pod 할당
ㄴ 할당되지 않은 Pod가 있으면 조건에 맞는 Node를 할당한다.
5. etcd에 기록
ㄴ Node에 할당된 정보를 etcd에 저장한다.
6. Pod 할당 감시
ㄴ API Server은 kublet에게 Pod 스팩 정보를 전달하고 생성요청을 한다.
7. 컨테이너 생성
ㄴ Container runtime 중 예를 들어 Docker가 켄테이너를 생성한다.
8. Pod 상태 업데이트
ㄴ 컨테이너가 생성되면 생성된 정보를 API Server에게 전달한다.
9. etcd 기록
ㄴ 생성된 Pod의 상태 정보를 etcd에 저장한다.
ㅇ 간단하게 Nigix를 생성해 보았다.
ㅇ pod 생성 events를 확인할 수 있다.
ㅁ control-plane
ㅇ 테스트를 위해 minikube 환경에서 진행하였다.
ㅁ 함께 보면 좋은 사이트
ㄴ apiserver, controller-manager, scheduler, etcd debug모드로 로그분석함
'Kubernetes > 기초공부' 카테고리의 다른 글
[kubernetes] 쿠버네티스 컨트롤러 (0) | 2024.01.13 |
---|---|
[kubernetes] 쿠버네티스 리소스 (0) | 2024.01.13 |
[kubernetes] 쿠버네티스 아키텍처 (0) | 2024.01.05 |
[kubernetes] 쿠버네티스 아이콘 모음 (0) | 2024.01.05 |
[kubernetes] 쿠버네티스 개념 정리 (1) | 2023.12.27 |