์ฟ ๋ฒ๋คํฐ์ค ๊ธฐ๋ฐ ๋ฌด๋ฃ PaaS ํ๋ซํผ์ธ Cozystack์ด 0.40 ๋ฒ์ ์ผ๋ก ์ถ์๋์์ต๋๋ค. ์ด ํ๋ก์ ํธ๋ ํธ์คํ ์ ๊ณต์ ์ฒด๋ฅผ ์ํ ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋ซํผ๊ณผ ํ๋ผ์ด๋น ๋ฐ ํผ๋ธ๋ฆญ ํด๋ผ์ฐ๋ ๊ตฌ์ถ์ ์ํ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ์ด ํ๋ซํผ์ ์๋ฒ์ ์ง์ ์ค์น๋๋ฉฐ ๊ด๋ฆฌํ ์๋น์ค ์ ๊ณต์ ์ํ ์ธํ๋ผ ์ค๋น์ ๋ชจ๋ ์ธก๋ฉด์ ์ง์ํฉ๋๋ค. Cozystack์ ์ฌ์ฉํ๋ฉด ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ๊ฐ์ ๋จธ์ ์ ์์ํ๊ณ ํ๋ก๋น์ ๋ํ ์ ์์ต๋๋ค. ํ๋ซํผ ์ฝ๋๋ GitHub์์ ํ์ธํ ์ ์์ผ๋ฉฐ Apache 2.0 ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค.
Talos๋ ๊ธฐ๋ฐ ๊ธฐ์ ์คํ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. Linux Flux CD๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์์คํ , ์ปค๋ ๋ฐ ํ์ ๋ชจ๋์ด ํฌํจ๋ ์ด๋ฏธ์ง๊ฐ ์ฌ์ ๋น๋๋๊ณ ์์์ ์ผ๋ก ์ ๋ฐ์ดํธ๋๋ฏ๋ก dkms ๋ฐ ํจํค์ง ๊ด๋ฆฌ์์ ๊ฐ์ ๊ตฌ์ฑ ์์๊ฐ ํ์ ์์ผ๋ฉฐ ์์ ์ ์ธ ์๋์ ๋ณด์ฅํฉ๋๋ค. PXE๋ฅผ ์ฌ์ฉํ์ฌ ๋น ๋ฐ์ดํฐ ์ผํฐ์ ๊ฐ๋จํ๊ฒ ์ค์นํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์ ๊ณต๋ฉ๋๋ค. debianํ๋ก์ค ๋ถํธ์คํธ๋ฉ ์ค์น ํ๋ก๊ทธ๋จ๊ณผ ์ ์ฌํฉ๋๋ค. ์ด ํ๋ซํผ ๋ด์์ Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics ๋ฐ ๊ธฐํ ์๋น์ค๋ฅผ ํ ๋ฒ์ ํด๋ฆญ์ผ๋ก ๋ฐฐํฌํ ์ ์์ต๋๋ค.
์ด ํ๋ซํผ์๋ ๋ฌด๋ฃ ๊ตฌํ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ต๋๋ค. ๋คํธ์ํฌ ์ธํ๋ผ Kube-OVN ๊ธฐ๋ฐ์ ํจ๋ธ๋ฆญ์ผ๋ก, ์๋น์ค ๋ฉ์ ๊ตฌ์ฑ์๋ Cilium์, ์๋น์ค ๊ด๊ณ ์๋ MetalLB๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์คํ ๋ฆฌ์ง๋ LINSTOR์ ๊ตฌํ๋์ด ์์ผ๋ฉฐ, LINSTOR๋ ZFS๋ฅผ ๊ธฐ๋ณธ ์คํ ๋ฆฌ์ง ๊ณ์ธต์ผ๋ก, DRBD๋ฅผ ๋ณต์ ์ ์ฌ์ฉํฉ๋๋ค. VictoriaMetrics์ Grafana ๊ธฐ๋ฐ์ ์ฌ์ ๊ตฌ์ฑ๋ ๋ชจ๋ํฐ๋ง ์คํ์ด ํฌํจ๋์ด ์์ต๋๋ค. KubeVirt ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ๊ฐ์ ๋จธ์ ์ ์คํํ๋ฏ๋ก ๊ธฐ์กด ๊ฐ์ ๋จธ์ ์ Kubernetes ์ปจํ ์ด๋์์ ์ง์ ์คํํ ์ ์์ผ๋ฉฐ, ๋ฒ ์ด๋ฉํ Kubernetes ํด๋ฌ์คํฐ ๋ด์์ ๊ด๋ฆฌํ Kubernetes ํด๋ฌ์คํฐ๋ฅผ ์คํํ๊ธฐ ์ํ Cluster API์์ ํ์ํ ๋ชจ๋ ํตํฉ ๊ธฐ๋ฅ์ ๊ฐ์ถ๊ณ ์์ต๋๋ค.
์ ๋ฆด๋ฆฌ์ค์์:
- ์ต์ ์ Pod ๋ฐฐ์น๋ฅผ ์ํด LINSTOR ์ค์ผ์ค๋ฌ๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. Kubernetes์ฉ ๋ค์ดํฐ๋ธ "์ค์ผ์ค๋ฌ ํ์ฅ๊ธฐ"๋ ํ์ค Kubernetes ์ค์ผ์ค๋ฌ์ ์ฐ๋ํ์ฌ LINSTOR ์คํ ๋ฆฌ์ง๊ฐ ์๋ ๋ ธ๋์ Pod๋ฅผ ์ต์ ์ผ๋ก ๋ฐฐ์นํฉ๋๋ค. Pod๊ฐ LINSTOR ๋ณผ๋ฅจ์ ์์ฒญํ๋ฉด ์ค์ผ์ค๋ฌ๋ LINSTOR ์ปจํธ๋กค๋ฌ์ ๋ฌธ์ํ์ฌ ํ์ํ ๋ณผ๋ฅจ์ ๋ก์ปฌ ๋ณต์ ๋ณธ์ด ์๋ ๋ ธ๋๋ฅผ ํ์ธํฉ๋๋ค. ๋ฐ์ดํฐ๊ฐ ์ด๋ฏธ ์๋ ๋ ธ๋์ ์ฐ์ ์์๊ฐ ๋ถ์ฌ๋์ด ๋คํธ์ํฌ ํธ๋ํฝ์ ์ต์ํํ๊ณ I/O ์ฑ๋ฅ์ ํฅ์์ํต๋๋ค. ๋ํ LINSTOR CSI ๋ณผ๋ฅจ์ ์ฌ์ฉํ๋ Pod๋ฅผ ๋ค์ดํฐ๋ธ ์ค์ผ์ค๋ฌ๋ก ์๋ ๋ผ์ฐํ ํ๋ ์ด๋๋ฏธ์ ์นํ ์ด ๊ตฌํ๋์ด ์๋ ๊ตฌ์ฑ ์์ด ์ํํ ํตํฉ์ด ๊ฐ๋ฅํฉ๋๋ค.
- SeaweedFS ์คํ ๋ฆฌ์ง๊ฐ ๋ฒ์ 4.05๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค. ์ด ๋ฒ์ ์์๋ S3 ํธ๋ํฝ ์ต์ ํ(ํธ๋ํฝ ์ง์ญ์ฑ) ๊ธฐ๋ฅ์ด ํ์ฌ๋์ด ์์ฒญ์ด ๊ฐ์ฅ ๊ฐ๊น์ด ์๋ฒ๋ก ์ ์ก๋๋ฏ๋ก ์ง์ฐ ์๊ฐ์ด ์ค์ด๋ค๊ณ ์คํ ๋ฆฌ์ง ์๋๊ฐ ํฅ์๋ฉ๋๋ค. ์น ์ธํฐํ์ด์ค์ ์ธ์ฆ ์ง์์ ๊ฐ์ถ ์๋ก์ด ๊ด๋ฆฌ์ ๊ตฌ์ฑ ์์์ ๋ถ์ฐ ์์ ์ ์คํํ๋ ์์ปค๋ ์ถ๊ฐ๋์์ต๋๋ค. Grafana์ ๊ณ ๊ธ ๋์๋ณด๋๊ฐ โโ์ถ๊ฐ๋์ด ๋ฒํท, API ํธ์ถ ๋ฐ ์ฑ๋ฅ์ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ๋ํ, ๊ด๋ จ ์ง์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. TLS ์ธ์ฆ์ ๊ด๋ฆฌ์ ๋ฐ ์์ ์ ๊ตฌ์ฑ ์์์ ๊ฒฝ์ฐ.
- FluxCD์ valuesFrom ๋ฉ์ปค๋์ฆ์ Helm ์ฐจํธ์ ์กฐํ ํจ์๋ฅผ ๋์ฒดํฉ๋๋ค. ์ด๋ฌํ ์ํคํ ์ฒ ๊ฐ์ ์ ํตํด ๋งค๊ฐ๋ณ์ ์ ๋ฌ์ด ๋์ฑ ๊น๋ํด์ง๊ณ ๊ฐ์ ๋๊ธฐํ(์กฐ์ ) ์ปจํธ๋กค๋ฌ๊ฐ ํ์ ์์ด์ง๋๋ค. ConfigMap ๋ฐ ์๋น์ค ์ฐธ์กฐ์ ๊ตฌ์ฑ์ ์ด์ ๊ฐ ๋ค์์คํ์ด์ค์ cozystack-values โโํค๋ฅผ ํตํด ์ค์์์ ๊ด๋ฆฌ๋ฉ๋๋ค.
- LINSTOR ํตํฉ ๊ตฌ์ฑ ์์๋ ์ด์ ๋์คํฌ๊ฐ ์๋ ๋ ธ๋๊ฐ 30๋ถ ์ด์ ๊ธฐ๋ณธ ์ํ๋ก DRBD ๋ฆฌ์์ค๋ฅผ ๋ณด์ ํ๋ ๊ฒฝ์ฐ ๋์คํฌ๊ฐ ์๋ ๋ ธ๋๋ก ์๋ ์ ํํ๋ ๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค.
- PostgreSQL, Kubernetes, MariaDB ๋ฐ Redis์๋ ์ ์คํธ๋ฆผ ์ ์ฅ์์ ์ ๋ฐ์ดํธ๋ฅผ ์ถ์ ํ๊ณ ์๋ ๋ฒ์ ์ ๋ฐ์ดํธ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํ๋ ์๋ ๋ฒ์ ๊ด๋ฆฌ ์์คํ ์ด ๊ตฌํ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru
