YAML ๋์คํฌ๋ฆฝํฐ
“ํ๋ ํฌํจ ์ฟ ๋ฒ๋คํฐ์ค ๋ฆฌ์์ค๋ ์ฟ ๋ฒ๋คํฐ์ค REST API ์๋ํฌ์ธํธ์ JSONํน์ YAML๋ก ์์ฑ”
YAML ๋์คํฌ๋ฆฝํฐ
- Metadata : ์ด๋ฆ, ๋ค์์คํ์ด์ค, ๋ ์ด๋ธ ๋ฐ ํ๋์ ๊ดํ ๊ธฐํ ์ ๋ณด ํฌํจ
- Spec: ํ๋ ์ปจํ ์ด๋, ๋ณผ๋ฅจ, ๊ธฐํ ๋ฐ์ดํฐ ๋ฑ ํ๋ ์์ฒด์ ๊ดํ ์ค์ ๋ช ์ธ
- Status: ํ๋ ์ํ, ๊ฐ ์ปจํ ์ด๋ ์ค๋ช ๊ณผ ์ํ, ํ๋ ๋ด๋ถ IP, ๊ธฐํ ๊ธฐ๋ณธ ์ ๋ณด ๋ฑ ํ์ฌ ์คํ ์ค์ธ ํ๋์ ๊ดํ ํ์ฌ ์ ๋ณด ํฌํจ
๋ ์ด๋ธ, ๋ ์ด๋ธ์ ๋ ํฐ, ์ด๋ ธํ ์ด์
๋ ์ด๋ธ
“ํ๋ ์๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ํ๋๋ฅผ ๋ถ๋ถ ์งํฉ์ผ๋ก ๋ถ๋ฅํ๊ธฐ ์ํ ๋ฐฉ๋ฒ → ์กฐ์งํ”
- ๋ฆฌ์์ค์ ์ฒจ๋ถํ๋ ํค - ๊ฐ ์์ผ๋ก, ์ด ์์ ๋ ์ด๋ธ์ ๋ ํฐ๋ฅผ ์ฌ์ฉํด ๋ฆฌ์์ค ์ ํ์ ํ์ฉ
- ๋ ์ด๋ธ์ ํ๋์๋ง ๋ถํ ์ ์๋ ๊ฒ์ ์๋, ๋ชจ๋ ์ฟ ๋ฒ๋คํฐ์ค ์ค๋ธ์ ํธ์ ์ฌ์ฉ ๊ฐ๋ฅ
๋ ์ด๋ธ ์ ๋ ํฐ
“ํน์ ๋ ์ด๋ธ๋ก ํ๊ทธ๋ ํ๋์ ๋ถ๋ถ ์งํฉ์ ์ ํํด ์ํ๋ ์์ ์ ์ํ”
- ๋ ์ด๋ธ ์
๋ ํฐ ๋ฆฌ์์ค ์ ํ ๊ธฐ์ค
-ํน์ ํ ํค๋ฅผ ํฌํจํ๊ฑฐ๋ ํฌํจํ์ง ์๋ ๋ ์ด๋ธ
-ํน์ ํ ํค์ ๊ฐ์ ๊ฐ์ง ๋ ์ด๋ธ
-ํน์ ํ ํค๋ฅผ ๊ฐ๊ณ ์์ง๋ง, ๋ค๋ฅธ ๊ฐ์ ๊ฐ์ง ๋ ์ด๋ธ
์ด๋ ธํ ์ด์
“ํค - ๊ฐ ์์ผ๋ก ๋ ์ด๋ธ๊ณผ ๊ฑฐ์ ๋น์ทํ์ง๋ง ์๋ณ ์ ๋ณด ๊ฐ์ง ์์”
- ์ฟ ๋ฒ๋คํฐ์ค ์์คํ ์ด ํ์ํ ์ ๋ณด๋ค์ ๋ด์ผ๋ฉฐ, ํด๋ผ์ด์ธํธ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์์ ๊ด๋ฆฌํ๋๋ฐ ํ์ฉ
- ์ฌ์ฉ์์๊ฒ ํ์ํ ์ ๋ณด๋ฅผ ๋ฉ๋ชจํ๋ ์ฉ๋๋ก๋ ์ฌ์ฉ ๊ฐ๋ฅ
ex) ๋ฆด๋ฆฌ์ฆ ์ ๋ณด, ๋ก๊น , ๋ชจ๋ํฐ๋ง์ ํ์ํ ์ ๋ณด ๋ฑ
๋ค์์คํ์ด์ค
“์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ ๋ด์ ๋ ผ๋ฆฌ์ ์ธ ๋ถ๋ฆฌ ๋จ์”
- ์ฟ ๋ฒ๋คํฐ์ค ์ค๋ธ์ ํธ์๋ pod, label, deployment, statefulset ๋ฑ ๋ค์ํ ๋ฆฌ์์ค ์กด์ฌ
- ํด๋ฌ์คํฐ ๋ด์ ์ค๋ธ์ ํธ๋ค์ ๋ค์์คํ์ด์ค๋ฅผ ํตํด ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌ
- ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ฅผ dev, stg, prd ์ธ ๊ฐ์ ๋ค์์คํ์ด์ค๋ก ๊ตฌ๋ถ
-dev๋ ์ฌ์ฉ์๊ฐ ์ ๊ทผํ์ฌ ์ค๋ธ์ ํธ ๋ฐฐ์น,์ด์
-stg๋ ์ฌ์ฉ์๊ฐ ์ ๊ทผํ์ฌ ์ด์ - namespace๋ ์ฟ ๋ฒ๋คํฐ์ค ์ค๋ธ์ ํธ๋ฅผ ๋ฌถ๋ ํ๋์ ๊ฐ์๊ณต๊ฐ(๊ทธ๋ฃน)
-๋ฐ๋ผ์ ๋ค๋ฅธ namespace์ pod๋๋ผ๋, ์๋ก ํต์ ๊ฐ๋ฅ - ์ฌ์ฉ ๋ชฉ์
-๋ค์์คํ์ด์ค๋ณ ๋ฆฌ์์ค ํ ๋น๋ ์ง์
-์ฌ์ฉ์๋ณ ๋ค์์คํ์ด์ค ์ ๊ทผ๊ถํ ์ค์