์ฟ ๋ฒ๋คํฐ์ค ๊ธฐ๋ณธ ํ์ต
2021.05.22 ~ 2021.07.10 (8์ฃผ)
์งํ๊ณํ
- ch1
- ์ค๋ฆฌ์ํ
์ด์
- ๋์ปค(ํ์ํ๋ฉด)
- ์ฟ ๋ฒ๋คํฐ์ค(vmware)
- ์ฐจ์ฃผ๊ณํ์ธ์ฐ๊ธฐ, ์คํฐ๋๊ท์น๋ง๋ค๊ธฐ
- ์ค๋ฆฌ์ํ
์ด์
- ch2
- ์ฟ ๋ฒ๋คํฐ์ค ์ํคํ
์ฒ(๊ฐ๊ฐ ์ด๋ค ์ญํ์ ํ๋์ง?)
- kubelet
- kubeapi
- ๋ฑ๋ฑ
- ์ฟ ๋ฒ๋คํฐ์ค ์ํคํ
์ฒ(๊ฐ๊ฐ ์ด๋ค ์ญํ์ ํ๋์ง?)
- ch3
- 06์ฅ:์ฟ ๋ฒ๋คํฐ์ค ์์ํ๊ธฐ
- ch4
- 07์ฅ:_์ฟ ๋ฒ๋คํฐ์ค_๋ฆฌ์์ค์_๊ด๋ฆฌ์_์ค์
- 08์ฅ:_์ธ๊ทธ๋ ์ค(Ingress)
- ch5
- 09์ฅ:_ํผ์์คํดํธ_๋ณผ๋ฅจ(PV)๊ณผ_ํผ์์คํดํธ_๋ณผ๋ฅจ_ํด๋ ์(PVC)
- ch6
- 10์ฅ
- ch7
- 11์ฅ
- ch8
- 12์ฅ 13์ฅ
์งํ์๊ฐ
- ๋งค์ฃผ ํ ์์ผ(9~12์)
- ์ฐธ์ฌ๊ฐ ๋ถ๊ฐ๋ฅํ ์ํฉ์ด ์๊ธธ๊ฒฝ์ฐ ๋ค๊ฐ์ด ํ์ ํ์ ๋ ์ง ๋ณ๊ฒฝ ๊ณ ๋ ค
- ์ฝ 3~4์๊ฐ(์ถํ ๋ณ๊ฒฝ๊ฐ๋ฅ)
์งํ๋ฐฉ๋ฒ
-
์ ํ์ฐจ์ ๋ฐํ์ ๋ฐํ ์งํ + ์ง๋ฌธ
-
์ ์ฃผ์ ๊ณต๋ถํ ๋ด์ฉ์ ๋ํด์ ์ดํด๊ฐ ์๊ฐ๊ฑฐ๋ ๊ฐ์ด ์๊ฐํด๋ณด๊ณ ์ถ์ ๋ด์ฉ๋ค ํ ๋ก
-
์ฐจ์ฃผ ๊ณต๋ถ ๋ฒ์ ๋ฐ ๋ฐํ์ ์ ์
- ์์ํ์ธ์ ๋์ปค/์ฟ ๋ฒ๋คํฐ์ค
- http://www.yes24.com/Product/Goods/84927385
6.1 ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์์ํ๊ธฐ ์ ์
6.2 ํฌ๋(Pod) : ์ปจํ ์ด๋๋ฅผ ๋ค๋ฃจ๋ ๊ธฐ๋ณธ ๋จ์
- 6.2.1 ํฌ๋ ์ฌ์ฉํ๊ธฐ
- 6.2.2 ํฌ๋ vs. ๋์ปค ์ปจํ ์ด๋
- 6.2.3 ์์ ํ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก์์ ํฌ๋
6.3 ๋ ํ๋ฆฌ์นด์ (Replica Set) : ์ผ์ ๊ฐ์์ ํฌ๋๋ฅผ ์ ์งํ๋ ์ปจํธ๋กค๋ฌ
- 6.3.1 ๋ ํ๋ฆฌ์นด์ ์ ์ฌ์ฉํ๋ ์ด์
- 6.3.2 ๋ ํ๋ฆฌ์นด์ ์ฌ์ฉํ๊ธฐ
- 6.3.3 ๋ ํ๋ฆฌ์นด์ ์ ๋์ ์๋ฆฌ
- 6.3.4 ๋ ํ๋ฆฌ์ผ์ด์ ์ปจํธ๋กค๋ฌ vs. ๋ ํ๋ฆฌ์นด์
6.4 ๋ํ๋ก์ด๋จผํธ(Deployment) : ๋ ํ๋ฆฌ์นด์ , ํฌ๋์ ๋ฐฐํฌ๋ฅผ ๊ด๋ฆฌ
- 6.4.1 ๋ํ๋ก์ด๋จผํธ ์ฌ์ฉํ๊ธฐ
- 6.4.2 ๋ํ๋ก์ด๋จผํธ๋ฅผ ์ฌ์ฉํ๋ ์ด์
6.5 ์๋น์ค(Service) : ํฌ๋๋ฅผ ์ฐ๊ฒฐํ๊ณ ์ธ๋ถ์ ๋ ธ์ถ
- 6.5.1 ์๋น์ค(Service)์ ์ข ๋ฅ
- 6.5.2 ClusterIP ํ์ ์ ์๋น์ค - ์ฟ ๋ฒ๋คํฐ์ค ๋ด๋ถ์์๋ง ํฌ๋์ ์ ๊ทผํ๊ธฐ
- 6.5.3 NodePort ํ์ ์ ์๋น์ค - ์๋น์ค๋ฅผ ์ด์ฉํด ํฌ๋๋ฅผ ์ธ๋ถ์ ๋ ธ์ถํ๊ธฐ
- 6.5.4 ํด๋ผ์ฐ๋ ํ๋ซํผ์ ๋ก๋ ๋ฐธ๋ฐ์์ ์ฐ๋ํ๊ธฐ - LoadBalancer ํ์ ์ ์๋น์ค
- 6.5.5 ํธ๋ํฝ์ ๋ถ๋ฐฐ๋ฅผ ๊ฒฐ์ ํ๋ ์๋น์ค ์์ฑ - externalTrafficPolicy
- 6.5.6 ์์ฒญ์ ์ธ๋ถ๋ก ๋ฆฌ๋ค์ด๋ ํธํ๋ ์๋น์ค - ExternalName
7.1 ๋ค์์คํ์ด์ค(Namespace) : ๋ฆฌ์์ค๋ฅผ ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ตฌ๋ถํ๋ ์ฅ๋ฒฝ
7.2 ์ปจํผ๊ทธ๋งต(Configmap), ์ํฌ๋ฆฟ(Secret) : ์ค์ ๊ฐ์ ํฌ๋์ ์ ๋ฌ
- 7.2.1 ์ปจํผ๊ทธ๋งต(Configmap)
- 7.2.2 ์ํฌ๋ฆฟ(Secret)
8.1 ์ธ๊ทธ๋ ์ค๋ฅผ ์ฌ์ฉํ๋ ์ด์
8.2 ์ธ๊ทธ๋ ์ค์ ๊ตฌ์กฐ
8.3 ์ธ๊ทธ๋ ์ค์ ์ธ๋ถ ๊ธฐ๋ฅ : annotation์ ์ด์ฉํ ์ค์
8.4 Nginx ์ธ๊ทธ๋ ์ค ์ปจํธ๋กค๋ฌ์ SSL/TLS ๋ณด์ ์ฐ๊ฒฐ ์ ์ฉ
8.5 ์ฌ๋ฌ ๊ฐ์ ์ธ๊ทธ๋ ์ค ์ปจํธ๋กค๋ฌ ์ฌ์ฉํ๊ธฐ
9.1 ๋ก์ปฌ ๋ณผ๋ฅจ : hostPath, emptyDir
- 9.1.1 ์์ปค ๋ ธ๋์ ๋ก์ปฌ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ณผ๋ฅจ์ผ๋ก ์ฌ์ฉ : hostPath
- 9.1.2 ํฌ๋ ๋ด์ ์ปจํ ์ด๋ ๊ฐ ์์ ๋ฐ์ดํฐ ๊ณต์ : emptyDir
9.2 ๋คํธ์ํฌ ๋ณผ๋ฅจ
9.3 PV, PVC๋ฅผ ์ด์ฉํ ๋ณผ๋ฅจ ๊ด๋ฆฌ
- 9.3.1 ํผ์์คํดํธ ๋ณผ๋ฅจ๊ณผ ํผ์์คํดํธ ๋ณผ๋ฅจ ํด๋ ์์ ์ฌ์ฉํ๋ ์ด์
- 9.3.2 ํผ์์คํดํธ ๋ณผ๋ฅจ๊ณผ ํผ์์คํดํธ ๋ณผ๋ฅจ ํด๋ ์ ์ฌ์ฉํ๊ธฐ
- 9.3.3 ํผ์์คํดํธ ๋ณผ๋ฅจ์ ์ ํํ๊ธฐ ์ํ ์กฐ๊ฑด ๋ช ์
- 9.3.4 ํผ์์คํดํธ ๋ณผ๋ฅจ์ ๋ผ์ดํ์ฌ์ดํด๊ณผ Reclaim Policy
- 9.3.5 StorageClass์ Dynamic Provisioning
10.1 ์ฟ ๋ฒ๋คํฐ์ค์ ๊ถํ ์ธ์ฆ ๊ณผ์
10.2 ์๋น์ค ์ด์นด์ดํธ์ ๋กค(Role), ํด๋ฌ์คํฐ ๋กค(Cluster Role)
10.3 ์ฟ ๋ฒ๋คํฐ์ค API ์๋ฒ์ ์ ๊ทผ
- 10.3.1 ์๋น์ค ์ด์นด์ดํธ์ ์ํฌ๋ฆฟ์ ์ด์ฉํด ์ฟ ๋ฒ๋คํฐ์ค API ์๋ฒ์ ์ ๊ทผ
- 10.3.2 ํด๋ฌ์คํฐ ๋ด๋ถ์์ kubernetes ์๋น์ค๋ฅผ ํตํด API ์๋ฒ์ ์ ๊ทผ
- 10.3.3 ์ฟ ๋ฒ๋คํฐ์ค SDK๋ฅผ ์ด์ฉํด ํฌ๋ ๋ด๋ถ์์ API ์๋ฒ์ ์ ๊ทผ
10.4 ์๋น์ค ์ด์นด์ดํธ์ ์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ ์ ๊ทผ์ ์ํ ์ํฌ๋ฆฟ ์ค์
10.5 kubeconfig ํ์ผ์ ์๋น์ค ์ด์นด์ดํธ ์ธ์ฆ ์ ๋ณด ์ค์
10.6 ์ ์ (User)์ ๊ทธ๋ฃน(Group)์ ๊ฐ๋
10.7 x509 ์ธ์ฆ์๋ฅผ ์ด์ฉํ ์ฌ์ฉ์ ์ธ์ฆ
11.1 ํฌ๋์ ์์ ์ฌ์ฉ๋ ์ ํ
- 11.1.1 ์ปจํ ์ด๋์ ํฌ๋์ ์์ ์ฌ์ฉ๋ ์ ํ : Limit
- 11.1.2 ์ปจํ ์ด๋์ ํฌ๋์ ์์ ์ฌ์ฉ๋ ์ ํํ๊ธฐ : Request
- 11.1.3 CPU ์์ ์ฌ์ฉ๋์ ์ ํ ์๋ฆฌ
- 11.1.4 QoS ํด๋์ค์ ๋ฉ๋ชจ๋ฆฌ ์์ ์ฌ์ฉ๋ ์ ํ ์๋ฆฌ
- 11.1.5 ResourceQuota์ LimitRanger
- 11.1.6 ResourceQuota, LimitRanger์ ์๋ฆฌ : Admission Controller
11.2 ์ฟ ๋ฒ๋คํฐ์ค ์ค์ผ์ค๋ง
- 11.2.1 ํฌ๋๊ฐ ์ค์ ๋ก ๋ ธ๋์ ์์ฑ๋๊ธฐ๊น์ง์ ๊ณผ์
- 11.2.2 ํฌ๋๊ฐ ์์ฑ๋ ๋ ธ๋๋ฅผ ์ ํํ๋ ์ค์ผ์ค๋ง ๊ณผ์
- 11.2.3 NodeSelector์ Node Affinity, Pod Affinity
- 11.2.4 Taints์ Tolerations ์ฌ์ฉํ๊ธฐ
- 11.2.5 Cordon, Drain ๋ฐ PodDistributionBudget
- 11.2.6 ์ปค์คํ ์ค์ผ์ค๋ฌ ๋ฐ ์ค์ผ์ค๋ฌ ํ์ฅ
11.3 ์ฟ ๋ฒ๋คํฐ์ค ์ ํ๋ฆฌ์ผ์ด์ ์ํ์ ๋ฐฐํฌ
- 11.3.1 ๋ํ๋ก์ด๋จผํธ๋ฅผ ํตํด ๋กค๋ง ์ ๋ฐ์ดํธ
- 11.3.2 ํฌ๋์ ์์ ์ฃผ๊ธฐ(Lifecycle)
- 11.3.3 HPA๋ฅผ ํ์ฉํ ์คํ ์ค์ผ์ผ๋ง
12.1 ์ฟ ๋ฒ๋คํฐ์ค ์ปจํธ๋กค๋ฌ์ ๊ฐ๋ ๊ณผ ๋์ ๋ฐฉ์
12.2 ์ปค์คํ ๋ฆฌ์์ค์ ๋ํ ๊ฐ๋
12.3 ์ปค์คํ ๋ฆฌ์์ค๋ฅผ ์ ์ํ๊ธฐ ์ํ CRD(Custom Resource Definition)
12.4 ์ปค์คํ ๋ฆฌ์์ค์ ์ปจํธ๋กค๋ฌ
13.1 ์ก(Jobs)
13.2 ๋ฐ๋ชฌ์ (DaemonSets)
13.3 ์คํ ์ดํธํ์ (StatefulSets)
14.1 ๋ชจ๋ํฐ๋ง ๊ธฐ๋ณธ ๊ตฌ์กฐ
14.2 ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ์ ๋ถ๋ฅ
14.3 ์ฟ ๋ฒ๋คํฐ์ค ๋ชจ๋ํฐ๋ง ๊ธฐ์ด
- 14.3.1 metrics-server
- 14.3.2 metrics-server ๋์ ์๋ฆฌ: APIService ๋ฆฌ์์ค
- 14.3.3 kube-state-metrics
- 14.3.4 node-exporter
14.4 ํ๋ก๋ฉํ ์ฐ์ค๋ฅผ ํ์ฉํ ๋ฉํธ๋ฆญ ์์ง
- 14.4.1 ํ๋ก๋ฉํ ์ฐ์ค ์ค์น
- 14.4.2 ํ๋ก๋ฉํ ์ฐ์ค๋ก ๋ฉํธ๋ฆญ ์์งํ๊ธฐ
- 14.4.3 ๊ทธ๋ผํ๋๋ก ํ๋ก๋ฉํ ์ฐ์ค ๋ฉํธ๋ฆญ ์๊ฐํํ๊ธฐ