2023. 9. 15. 20:30ใSystem ์์ ์ค/Server ๊ด๋ จ
"์ด ํฌ์คํ ์ ์ฟ ํก ํํธ๋์ค ํ๋์ ์ผํ์ผ๋ก, ์ด์ ๋ฐ๋ฅธ ์ผ์ ์ก์ ์์๋ฃ๋ฅผ ์ ๊ณต๋ฐ์ต๋๋ค."
๐ ๋ชฉ์ฐจ
1. [Hyper-V] [Open Stack] Open Stack์ด๋?
2. [Hyper-V] [Open Stack] [Controller Node] Hyper-V ๊ตฌ์ฑ ๋ฐ Ubuntu 22.04.3 LTS Server ์ค์น
3. [Hyper-V] [Open Stack] [Controller Node] โ ์คํ์คํ ํจํค์ง ์ค์น
4. [Hyper-V] [Open Stack] [Controller Node] โก NTP Server ๊ตฌ์ฑ
5. [Hyper-V] [Open Stack] [Controller Node] โข RabbitMQ - Message Queue ์ค์น ๋ฐ ๊ตฌ์ฑ
6. [Hyper-V] [Open Stack] [Controller Node] โฃ Memcached ์ค์น ๋ฐ ๊ตฌ์ฑ
7. [Hyper-V] [Open Stack] [Controller Node] โค Etcd ์ค์น ๋ฐ ๊ตฌ์ฑ
8. [Hyper-V] [Open Stack] [Controller Node] โฅ Keystone - Identity ์ค์น ๋ฐ ๊ตฌ์ฑ
9. [Hyper-V] [Open Stack] [Controller Node] โฆ Image Service - Glance ์ค์น ๋ฐ ๊ตฌ์ฑ
10. [Hyper-V] [Open Stack] [Controller Node] โง Compute Service - Nova ์ค์น ๋ฐ ๊ตฌ์ฑ
11. [Hyper-V] [Open Stack] [Contoller Node] โจ Neutron - Network ์๋น์ค ์ค์น ๋ฐ ๊ตฌ์ฑ
12. [Hyper-V] [Open Stack] [Controller Node] โ โช Horizon - Dashboard ์๋น์ค ์ค์น ๋ฐ ๊ตฌ์ฑ
13. [Hyper-V] [Open Stack] [Compute Node] Hyper-V ๊ตฌ์ฑ ๋ฐ Ubuntu 22.04.3 LTS Server ์ค์น ๋ฐ ์ด๊ธฐ ๊ตฌ์ฑ
14. [Hyper-V] [Open Stack] [Compute Node] โ ์คํ์คํ ํจํค์ง ์ค์น
15. [Hyper-V] [Open Stack] [Compute Node] โก Nova ์ค์น ๋ฐ ๊ตฌ์ฑ
16. [Hyper-V] [Open Stack] [Compute Node] โข Neutron - Network ์๋น์ค ์ค์น ๋ฐ ๊ตฌ์ฑ
๐ Controller Node ๊ตฌ์ฑ
๐ฝ ๊ฐ์
๐ฆ ์๊ฐ
๋ธ๋ก ์คํ ๋ฆฌ์ง ์๋น์ค (cinder)๋ ๋ธ๋ก ์คํ ๋ฆฌ์ง ์ฅ์น๋ฅผ ๊ฒ์คํธ ์ธ์คํด์ค์๊ฒ ์ ๊ณตํ๋ ์ญํ ์ ํ๋ค๊ณ ํด์.
ํ ๋ฆฌ์ง๊ฐ ํ๋ก๋น์ ๋ ๋๊ณ , ์๋น๋๋ ๋ฐฉ์์ ๋ธ๋ก ์คํ ๋ฆฌ์ง ๋๋ผ์ด๋ฒ ๋๋ ์ฌ๋ฌ ๋ฐฑ์๋ ๊ตฌ์ฑ์ ๋ํ ๊ฒฝ์ฐ์๋ ๋๋ผ์ด๋ฒ์ ์ํด ๊ฒฐ์ ๋๊ฒ ๋๋ต๋๋ค.
NAS/SAN, NFS, iSCSI, Ceph ๋ฑ ๋ค์ํ ๋๋ผ์ด๋ฒ๋ฅผ ์ง์ํ๊ณ ์์ด์.
๋ธ๋ก ์คํ ๋ฆฌ์ง API์ ์ค์ผ์ค๋ฌ ์๋น์ค๋ ๋ณดํต ์ปจํธ๋กค๋ฌ ๋
ธ๋์์ ์คํ๋๋๋ก ๊ตฌ์ฑํ๋ค๊ณ ํด์.
์ฌ์ฉํ๋ ๋๋ผ์ด๋ฒ์ ๋ฐ๋ผ, ๋ณผ๋ฅจ ์๋น์ค๋ ์ปจํธ๋กค๋ฌ ๋
ธ๋, ์ปดํจํธ ๋
ธ๋ ๋๋ ๋
๋ฆฝ๋ ์คํ ๋ฆฌ์ง ๋
ธ๋์์ ๋์ํ๋๋ก ๊ตฌ์ฑํ ์ ์์ด์.
์ฃผ๋๋ ์์ ๊ตฌ์ฑ๋์ ๊ฐ์ด ์ต๋ํ CPU, Memory ์์์ ์๋ผ๊ธฐ ์ํด ์ปดํจํธ ๋
ธ๋์ ์ด๋ฏธ์ง ์คํ ๋ฆฌ์ง๋ฅผ ์ ์ธํ ๋ธ๋ก ์คํ ๋ฆฌ์ง์ ์ค๋ธ์ ํธ ์คํ ๋ฆฌ์ง๋ฅผ ๊ตฌ์ฑํ๊ณ ์ฌ์ฉํ๋ ค๊ณ ํด์.
์คํ์คํ ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ๊ฐ์๋จธ์ ์ persistent(์์์ฑ) ์คํ ๋ฆฌ์ง๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ด์์.
๋ธ๋ก ์คํ ๋ฆฌ์ง ์๋น์ค๋ ๋ณผ๋ฅจ ๊ด๋ฆฌ๋ฅผ ์ํ ์ธํ๋ผ๋ฅผ ์ ๊ณตํ๊ณ , ์ธ์คํด์ค์ ๋ณด๋ฅจ์ ์ ๊ณตํ๊ธฐ ์ํด ์คํ์คํ ์ปดํจํธ ๋
ธ๋์ ์ํธ ์์ฉ์ ํ๊ฒ ๋๋ต๋๋ค. ๊ทธ๋ฆฌ๊ณ , ๋ณผ๋ฅจ ์ค๋
์ท๊ณผ ๋ณผ๋ฅจ ํ์
์ ๊ด๋ฆฌํ ์๋ ์์ด์.
๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ์๋ ์ปดํฌ๋ํธ๋ก ๊ตฌ์ฑ ๋์ด ์์ด์.
์ปดํฌ๋ํธ ์ข ๋ฅ | ์์ธ ๋ด์ฉ |
cinder-api | API ์์ฒญ ์๋ฝ ๋ฐ ์ฒ๋ฆฌ๋ฅผ ์ํด cinder-volume์ ์ ์ก. |
cinder-volume | ๋ธ๋ก ์คํ ๋ฆฌ์ง ์๋น์ค์ ์ง์ ์ํธ์์ฉํ๋ฉฐ, cinder-scheduler์ ๋์ผํ ์ฒ๋ฆฌ. ๋ฉ์์ง ํ๋ฅผ ํตํด ๋ค๋ฅธ ํ๋ก์ธ์ค๋ค๊ณผ๋ ์ํธ ์์ฉ. cinder-volume ์๋น์ค๋ maintain ์ํ์ธ ๋ธ๋ก ์คํ ๋ฆฌ์ง ์๋น์ค์์ ๋ณด๋ธ ์ฝ๊ณ ์ฐ๋ ์์ฒญ์ ๋ํด ์๋ต ๋ด๋น. ๋๋ผ์ด๋ฒ ์ํคํ ์ฒ๋ฅผ ํตํด ๋ค์ํ ์คํ ๋ฆฌ์ง ํ๋ก๋ฐ์ด๋ ์ ์ฉ ๊ฐ๋ฅ. |
cinder-scheduler Deamon | ๋ณผ๋ฅจ์ ์์ฑํ๋๋ฐ, ์ต์ ์ ์คํ ๋ฆฌ์ง ํ๋ก๋ฐ์ด๋ ๋
ธ๋ ์ ํ. nova-scheduler์ ์ ์ฌ ๋์. |
cinder-backup Deamon | cinder-backup ์๋น์ค๋ ์คํ ๋ฆฌ์ง ํ๋ก๋ฐ์ด๋ ๋ฐฑ์
์ ๋ํ ์ฌ๋ฌ๊ฐ์ง ํ์
์ ๋ํด ๋ณผ๋ฅจ ๋ฐฑ์
์ ๊ณต. cinder-volume ์๋น์ค์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ค์ํ ์คํ ๋ฆฌ์ง ํ๋ก๋ฐ์ด๋์ ๋๋ผ์ด๋ฒ ์ํคํ ํธ ์ ์ฉ ๊ฐ๋ฅ. |
๋ฉ์์ง ํ | ๋ธ๋ก ์คํ ๋ฆฌ์ง ํ๋ก์ธ์ค๊ฐ ์ ๋ณด ์ ๋ฌ. |
๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ํด๋ผ์ฐ๋ ์์คํ
์ ํ๋ ๋์คํฌ๋ผ๊ณ ์๊ฐํ๋ฉด ๋ผ์.
์คํ์คํ์ด๋, AWS์ ๊ฐ์ ํด๋ผ์ฐ๋ ์์คํ
์์ ํ ๋์ ๊ฐ์๋จธ์ ์ ์ธ์คํด์ค๋ผ๊ณ ๋ถ๋ฅด๋ฏ ํ๋ ๋์คํฌ์ ๊ฐ์ ์ ์ฅ ๊ณต๊ฐ์ ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ผ๊ณ ๋ถ๋ฅด๊ณ ์์ด์.
๊ทธ๋ฆฌ๊ณ , ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ์ธ์คํด์ค์ ์ฐ๊ฒฐ(Attach), ํด์ (Detach)๊ฐ ๊ฐ๋ฅํ๋๋ก ๊ตฌ์ฑ๋์ด ์์ด์.
์ด๋ฅผ ํตํด ์๋ก ์์ฑํ ์ธ์คํด์ค์ ๊ธฐ์กด์ ์กด์ฌํ๋ ๋ณผ๋ฅจ์ ์ฐ๊ฒฐํด์ ์ํ๋ ํํ๋ก ํฌ๋งทํ ๋ค ์ฌ์ฉํ ์ ์์ด์.
๋ํ, ํ์ผ ํ๋์ ๋ฐ์ดํฐ ๋จ์๋ก ์ทจ๊ธํ๋ ํ์ผ ์คํ ๋ฆฌ์ง๋ก ์ค๋ธ์ ํธ ์คํ ๋ฆฌ์ง์ ๋ฌ๋ฆฌ ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ๋ฐ์ดํฐ๋ฅผ ๋ธ๋ก ๋จ์๋ก ์ฒ๋ฆฌํ๊ฒ ๋ผ์.
๋ฐ์ดํฐ๋ฅผ ๋ธ๋ก์ผ๋ก ๋ถํ ํ๊ณ , ๊ฐ ๋ธ๋ก์ ๊ณ ์ ID๋ฅผ ๋ถ์ฌํ์ฌ ๋ธ๋ก์ผ๋ก ๊ตฌ์กฐํ๋ฅผ ์ํค๋๋ฐ, ํ์ผ์ด๋, ์ค๋ธ์ ํธ๋ฅผ ์ฌ๋ฌ ๋ธ๋ก์ ๋ถ์ฐ๋๋ ๊ฒ์ ํ์ฉํ๊ณ ์์ด์.
๋ฐ์ดํฐ ์์ฒญ ์ ๊ฐ ๋ธ๋ก์ ๋ถ์ฐ ๋์ด ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ณํฉํ์ฌ ์ ๊ณตํ๊ณ , ํ์ผ ์คํ ๋ฆฌ์ง์ ๋ฌ๋ฆฌ ๋จ์ผ ๋ฐ์ดํฐ ๊ฒฝ๋ก์ ์์กดํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ์ฒ๋ฆฌ์๋๊ฐ ๋น ๋ฅธ ์ฅ์ ์ด ์์ด์.
๊ฐ ๋ธ๋ก์ ๋
๋ฆฝ์ ์ผ๋ก ์กด์ฌํ๊ณ , ํํฐ์
์ผ๋ก ๋ถํ ๋ ์ ์๊ธฐ ๋๋ฌธ์ ์๋ก ๋ค๋ฅธ ์ด์ ์ฒด์ ์ ์ ๊ทผํ ์ ์์ด์.
์ด๋ฌํ ์ ์ฐ์ฑ๊ณผ ํจ์จ์ฑ์ผ๋ก ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ์ปจํ
์ด๋ ํ๊ฒฝ์ ์ ํฉํ๋ค๊ณ ํด์.
์ปจํ
์ด๋๋ฅผ ์ ์ํ๊ฒ ์ ์ํ๊ณ , ์คํํ ์ ์๊ธฐ ๋๋ฌธ์ธ๋ฐ, ๋ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด์ผ ํ ์๋ก ๋ธ๋ก ์คํ ๋ฆฌ์ง ์ฌ์ฉ์ด ์ ๋ฆฌํ ๊ฒ์ด์์.
์ธ์คํด์ค์ ๋ธ๋ก ์คํ ๋ฆฌ์ง๋ ๊ธฐ์กด์ ์ธ์คํด์ค์์ ์ฐ๊ฒฐ ํด์ ํ ๋ค ๋ค๋ฅธ ์ธ์คํด์ค์ ์ฐ๊ฒฐํด ์ฌ์ฉํ ์ ์์ด์. ๊ฐ๋ฐ ์์ค๋, ๋ฌธ์์ฒ๋ผ ์ค์ํ ๋ฐ์ดํฐ๋ค์ ์ด์ ์ฒด์ ์ ํจ๊ป ์๋ช
์ ๋คํ๋ ์ธ์คํด์ค๊ฐ ์๋๋ผ, ๋ณ๋์ ์ ์ฅ ๊ณต๊ฐ์ธ ๋ธ๋ก ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๊ณ , ๋์ค์ ์ธ์คํด์ค์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ์ฐ๊ฒฐ ํด์ ๋ค ์๋ก์ด ์ธ์คํด์ค์ ๋ค์ ์ฐ๊ฒฐํด ์ฌ์ฉํ ์ ์์ด์.
๐ฝ ๊ตฌ์ฑ ์์ ์ค์น ๋ฐ ๊ตฌ์ฑ
๐ฆ ์ด๊ธฐ ๊ตฌ์ฑ - ์ปจํธ๋กค๋ฌ ๋ ธ๋
์ต์ด ์์
์ ์ปจํธ๋กค๋ฌ ๋
ธ๋์์ ์งํํด์ผ ํด์.
์ปจํธ๋กค๋ฌ ๋
ธ๋์์ ๋ธ๋ก ์คํ ๋ฆฌ์ง ๊ด๋ จ ์ฌ์ฉ์ ๊ณ์ , ์๋น์ค์ ์๋ํฌ์ธํธ๋ฅผ Keystone์ ์์ฑํด ๋ณผ๊ฒ์.
servicepassword์๋ ํด๋น ๊ณ์ ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์
๋ ฅํด ์ฃผ๋ฉด ๋ผ์.
์ฐธ๊ณ ๋ก ํน์๋ฌธ์๊ฐ ๋ค์ด๊ฐ ํจ์ค์๋๋ ์ธ์์ด ์ ์๋๋ ๊ฑฐ ๊ฐ์ผ๋ ํน์๋ฌธ์๋ฅผ ์ ์ธํ ํจ์ค์๋๋ฅผ ๊ถ์ฅํฉ๋๋ค.
๊ทธ๋ฐ ๋ค ์์ฑํ ๊ณ์ ์ ๋ํด ๊ด๋ฆฌ์ ๊ถํ์ ๋ถ์ฌํด ์ฃผ์์ด์.
์ด๋ฒ์๋ ์๋น์ค๋ฅผ ๋ง๋ค์ด ์ฃผ์์ด์.
๊ทธ๋ฆฌ๊ณ ์์ ๊ฐ์ด ์๋ํฌ์ธํธ๋ฅผ ๋ง๋ค์ด ์ฃผ์๋๋ฐ, admin, public, internal์ ์๋ํฌ์ธํธ๋ฅผ ๊ฐ๊ฐ ๋ง๋ค์ด ์ฃผ์์ด์.
๐ฆ ์ด๊ธฐ ๊ตฌ์ฑ - Database
์ด๋ฒ์๋ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ๋ธ๋ก ์คํ ๋ฆฌ์ง์ ๋ํ DB๋ฅผ ๋ง๋ค๊ณ , ๊ณ์ ์ ๋ง๋ค์ด ์ค๊ฒ์.
์ฃผ๋๋ ์์ ๊ฐ์ด ๋ง๋ค์ด ์ค๊ฑฐ์์.
๐ฆ ํจํค์ง ์ค์น - ์ปจํธ๋กค๋ฌ ๋ ธ๋
์ด๋ฒ์๋ ์ปจํธ๋กค๋ฌ ๋
ธ๋์ ํจํค์ง ์ค์น๋ฅผ ์งํํด ๋ณผ๊ฒ์.
์์ ๊ฐ์ ํ๋ฉด์ด ๋์ค๋ฉด ํ์ฑํ ํ๊ณ , Ok๋ฅผ ๋๋ฌ nginx๋ฅผ ์ฌ๊ธฐ๋ํด ์ค๋๋ค.
๐ฆ ์ด๊ธฐ ์ค์ - ์ปจํธ๋กค๋ฌ ๋ ธ๋
7๋ฒ์งธ ์ค password์๋ RabbitMQ ๋ง๋ค ๋ ์์ฑํ๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํด ์ฃผ๋ฉด ๋ผ์.
password๋ ์์์ DB ์์ฑ ์ ํด๋น ๊ณ์ ์ ์ํธ๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ๋ผ์.
23๋ฒ์งธ ์ค์ servicepassword์๋ ์์์ cinder ๊ณ์ ์ keystone์ ๋ฑ๋กํ ๋, ์ฌ์ฉํ๋ ์ํธ๋ฅผ ์
๋ ฅํด ์ฃผ๋ฉด ๋ผ์.
์ฌ๊ธฐ๊น์ง ๋์๋ค๋ฉด ์ ์ฅํ๊ณ , ๋์ต๋๋ค.
๊ทธ๋ฐ ๋ค ํด๋น ์ค์ ํ์ผ์ ๋ํ ๊ถํ๊ณผ ์์ ๊ทธ๋ฃน์ ๋ณ๊ฒฝํด ์ฃผ์์ด์.
์ฌ๊ธฐ๊น์ง ๋์๋ค๋ฉด ์ ์ฅํ๊ณ , ๋์ต๋๋ค.
์์ ๊ฐ์ด cinder API http ํต์ ์ ์ํด nginx์ ๋ด์ฉ์ ์ถ๊ฐํด ์ฃผ์์ด์.
์ ์ฅํ๊ณ , ๋์์ค๊ฒ์.
์ด๋ฒ์๋ DB ๋๊ธฐํ๋ฅผ ์ํด ์์ ๊ฐ์ด ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํด ์ฃผ์์ด์.
๊ทธ๋ฐ ๋ค ์์ ๊ฐ์ด ๋ฐ๋ชฌ์ ์ฌ๊ธฐ๋ํ๊ณ , ๋ฑ๋กํด ์ค๋๋ค.
๐ฆ ์ ๊ตฌ์ฑ ๋์๋? ๐ค
์ต์ด ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์ ํด ์ฃผ๋๋ก ํ ๊ฒ์.
์์ ๊ฐ์ด ์ํ๊ฐ ํ์ธ๋๋ค๋ฉด ์ ์ ๊ตฌ์ฑ๋ ๊ฒ์ด์์.
"์ด ํฌ์คํ ์ ์ฟ ํก ํํธ๋์ค ํ๋์ ์ผํ์ผ๋ก, ์ด์ ๋ฐ๋ฅธ ์ผ์ ์ก์ ์์๋ฃ๋ฅผ ์ ๊ณต๋ฐ์ต๋๋ค."
๐ง ์ฐธ๊ณ ์๋ฃ