cb dragonfly features - cloud-barista/cb-dragonfly GitHub Wiki
๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง ํ๋ ์์ํฌ๊ฐ ์ ๊ณตํ๋ ์ธ๋ถ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.
๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ์ฐ๋ ํ๋ ์์ํฌ์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ CB-Dragonfly ์ฌ์ฉ์์ ์์ฉ ๊ฐ๋ฐ์ ์ํ API์ ํ์ฉ์ ์ํ ๋ช ๋ น์ด๋ฅผ ์ ๊ณตํ๋ค.
-
CB-Dragonfly REST API ์ ๊ณต
REST(Representational State Transfer) ํ๊ฒฝ ๊ฐ๋ฐ์๋ฅผ ์ํ REST API ๋ฐํ์ ์๋ฒ ๋ฐ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค. ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ฒฝ์ฐ ๋ณ๋ ์ ๊ณตํ์ง ์์ผ๋ฉฐ, ๊ฐ๋ฐ ์ธ์ด๋ณ REST ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ ์ ์๋ค. -
CB-Dragonfly gRPC API ์ ๊ณต
Go ์ธ์ด ํ๊ฒฝ ๊ฐ๋ฐ์๋ฅผ ์ํ gRP ์๋ฒ ๋ฐ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค. Go ์ธ์ด ๊ฐ๋ฐ ํ๊ฒฝ ์ฌ์ฉ์๋ gRPC ์๋ฒ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ ์ ์๋ค. -
CB-Dragonfly CLI ๋๊ตฌ ์ ๊ณต
ํฐ๋ฏธ๋ ํ๊ฒฝ ์ฌ์ฉ์๋ฅผ ์ํ CLI ํด๋ผ์ด์ธํธ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ค. ํฐ๋ฏธ๋ ํ๊ฒฝ ์ฌ์ฉ์๋ CLI ํด๋ผ์ด์ธํธ ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ CB-Dragonfly์ ๊ธฐ๋ฅ๋ค์ ํ์ฉํ ์ ์๋ค.
๋ชจ๋ํฐ๋ง ์์ด์ ํธ ์๋ ์ค์น ๊ธฐ๋ฅ์ CB-Dragonfly์ API๋ฅผ ํ์ฉํ์ฌ ๋ชจ๋ํฐ๋งํ๊ณ ์ ํ๋ ๋ฉํฐํด๋ผ์ฐ๋ VM์ ๋ชจ๋ํฐ๋ง ์์ด์ ํธ๋ฅผ ์๋์ผ๋ก ์ค์นํด์ฃผ๋ ๊ธฐ๋ฅ์ด๋ค.
๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ์ ์ด์ข ์ ์ฌ๋ฌ ํด๋ผ์ฐ๋ ์ธํ๋ผ๋ฅผ Pull ๋๋ Push ๋ฐฉ์์ผ๋ก ๋ชจ๋ํฐ๋งํ์ฌ ์ฌ์ฉ์์๊ฒ CB-Dragonfly ๋จ์ผ API๋ฅผ ํตํด ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ ํธ์์ฑ์ ์ ๊ณตํ๋ค. ๋ชจ๋ํฐ๋ง ์งํ๋ VM ๋ชจ๋ํฐ๋ง ์งํ ๋ฐ MCIS ๋ชจ๋ํฐ๋ง ์งํ๋ฅผ ํฌํจํ์ฌ ์ด 62๊ฐ์ง์ด๋ฉฐ ๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง ๊ฐ๋ ๋๋ ๊ทธ๋ฆผ 5๊ณผ ๊ฐ๊ณ ์ธ๋ถ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ๋ค
๊ทธ๋ฆผ 5: ๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง ๊ฐ๋
๋
-
Pull ๋ฐฉ์ ๊ธฐ๋ฐ ๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง
ํน์ ํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง์ ์ํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์์ง ๋ฐ ์ ์ฅํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ฉฐ, ์ธ๋ถ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.- ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ์์ง
- ๊ทธ๋ฆผ 6์ Pull ๋ฐฉ์๊ณผ ๊ฐ์ด ๋ชจ๋ํฐ๋ง ์์ด์ ํธ์๊ฒ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์์ง ๋ฐ ์๋ต ์์ฒญ
- ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ, MICS ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์์ง
- ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ๊ฐ๊ณต
- ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ, ์ผ์ ์๊ฐ ์์งํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ํต๊ณ์น(Min, Max, Avg), MICS ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ๊ฐ๊ณต
- ์ฌ์ฉ์๊ฐ ์ํ๋ ์์ (On-demand)์ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ๊ฐ ์์ง ๋ฐ ์ ๊ณต ๊ฐ๋ฅ
- ๊ฐ๊ณตํ ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์ฅ
- ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ์์ง
-
Push ๋ฐฉ์ ๊ธฐ๋ฐ ๋ฉํฐํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง
ํน์ ํด๋ผ์ฐ๋ ์ธํ๋ผ ๋ชจ๋ํฐ๋ง์ ์ํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์์ง ๋ฐ ์ ์ฅํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ฉฐ, ์ธ๋ถ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.- CB-Dragonfly์ ๋ชจ๋ํฐ๋ง ์ ์ฑ
์ค์
- CSP๋ณ ๋ชจ๋ํฐ๋ง, VM๋ณ ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ ์ง์
- ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ์์ง
- ๊ทธ๋ฆผ 6์ Push ๋ฐฉ์๊ณผ ๊ฐ์ด ๋ชจ๋ํฐ๋ง ์์ด์ ํธ๋ก๋ถํฐ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ชจ๋ํฐ๋ง ์งํ๊ฐ์ ์ ๋ฌ๋ฐ์
- ์ผ์ ์๊ฐ ์์งํ ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ํต๊ณ์น(Min, Max, Avg) ๊ฐ๊ณต
- ๋ชจ๋ํฐ๋ง ์์ด์ ํธ์ ๊ฐ์์ ๋ฐ๋ผ ๋ชจ๋ํฐ๋ง ์งํ ํต๊ณ ๊ฐ๊ณต ๋ชจ๋์ด ์ ์ฐํ๊ฒ ํ์ฅ ๋ฐ ์ถ์
- ๊ฐ๊ณตํ ๋ชจ๋ํฐ๋ง ์งํ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์ฅ
- CB-Dragonfly์ ๋ชจ๋ํฐ๋ง ์ ์ฑ
์ค์
๊ทธ๋ฆผ 6: ๋ชจ๋ํฐ๋ง Pull ๋ฐฉ์๊ณผ Push ๋ฐฉ์ ๊ฐ๋
๋
์ด์์น ๋ฉํธ๋ฆญ ์ฌ์ฉ์ ์๋ฆผ ๊ธฐ๋ฅ์ ๋ฉํฐํด๋ผ์ฐ๋ ๋ชจ๋ํฐ๋ง ์ด์์น ๋ฉํธ๋ฆญ ์๋ฆผ ๋ฉํฐํด๋ผ์ฐ๋ VM ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์ค ์ด์์น๊ฐ ๊ฐ์ง(์๋ ์ง๋จ)๋ ๊ฒฝ์ฐ ์ฌ์ฉ์์๊ฒ Slack ๋๋ SMTP๋ก ์๋ฆผ์ ์ ๊ณตํ๋ค. ์ฌ์ฉ์๋ ์๋ฆผ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํด ์๋ ๊ทธ๋ฆผ 7๊ณผ ๊ฐ์ด CB-Dragonfly API๋ฅผ ํ์ฉํ์ฌ ์๋ฆผ ์ด๋ฒคํธ ํธ๋ค๋ฌ ๋ฐ ์๋ฆผ ํ์คํฌ๋ฅผ ์์ฑํด์ผํ๋ค.
๊ทธ๋ฆผ 7: CB-Dragonfly ์๋ฆผ ๊ธฐ๋ฅ ํ์ฉ์ ์ํ ๋์ ํ๋ฆ๋
-
์๋ฆผ ์ด๋ฒคํธ ํธ๋ค๋ฌ
์ฌ์ฉ์๊ฐ ์๋ฆผ์ ๋ฐ์ ๋ฐฉ๋ฒ์ ์ง์ ํ ์ ์์ผ๋ฉฐ, ์ธ๋ถ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.- ์๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ ๋ฑ๋ก
- Slack, SMTP ์ด๋ฒคํธ ํธ๋ค๋ฌ ์ง์
- ์๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ ๋ฑ๋ก
-
์๋ฆผ ํ์คํฌ
์ฌ์ฉ์๊ฐ ์์นํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ๋ฐ ์๋ ๋ฐ์ ์๊ณ์น ๊ฐ์ ์ค์ ํ ์ ์์ผ๋ฉฐ, ์ธ๋ถ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.- ์์นํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์งํ๊ฐ ์ค์
- CpuUtilization ๋ฑ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์ธ๋ถ ์งํ๊ฐ์ ์ง์
- ์๋ ๋ ๋ฒจ ์ค์
- warning, critical ์๋ ๋ ๋ฒจ ์ง์
- ์์นํ ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์งํ๊ฐ ์ค์
-
์๋ฆผ ์ง๋จ
- ์๋ฆผ ํ์คํฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ชจ๋ํฐ๋ง ๋ฉํธ๋ฆญ ์ธ๋ถ ์งํ ์์น
- ์๋ฆผ ๋ฐ์ ์ ์๋ฆผ ๋ฐ์ ๋ก๊ทธ ์์ฑ
-
์๋ฆผ ์์ฑ
- ์๋ฆผ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ฆผ ๋ฉ์ธ์ง ์ ์ก