์๋ ํ์ธ์. ์ ์ด๋ฆ์ Kostya Kramlich์ ๋๋ค. ์ ๋ Yandex.Cloud์ Virtual Private Cloud ์ฌ์ ๋ถ์ ์ฃผ์ ๊ฐ๋ฐ์์ ๋๋ค. ์ ๋ ๊ฐ์ ๋คํธ์ํฌ๋ฅผ ์์ ํ๊ณ ์์ต๋๋ค. ์ง์ํ์ค ์ ์๋ฏ์ด ์ด ๊ธฐ์ฌ์์๋ ์ผ๋ฐ์ ์ธ Virtual Private Cloud(VPC) ์ฅ์น์ ํนํ ๊ฐ์ ๋คํธ์ํฌ์ ๋ํด ์ค๋ช ํ๊ฒ ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ ์๋น์ค ๊ฐ๋ฐ์๋ค์ด ์ฌ์ฉ์๋ค์ ํผ๋๋ฐฑ์ ์์คํ ์ฌ๊ธฐ๋ ์ด์ ๋ ์๊ฒ ๋ ๊ฒ์ ๋๋ค. ํ์ง๋ง ๊ฐ์ฅ ๋จผ์ ํด์ผ ํ ์ผ์ด ์์ต๋๋ค.
VPC๋ ๋ฌด์์ ๋๊น?
์์ฆ์๋ ์๋น์ค ๋ฐฐํฌ๋ฅผ ์ํ ๋ค์ํ ์ต์ ์ด ์์ต๋๋ค. ๊ทธ๋ฐ ์ด์ผ๊ธฐ๊ฐ ์ ์ ์ค์ด๋ค๊ธฐ๋ฅผ ๋ฐ๋ผ์ง๋ง, ๋๊ตฐ๊ฐ ์ฌ์ ํ ๊ด๋ฆฌ์ ์ฑ ์ ์๋์ ์๋ฒ๋ฅผ ๋๊ณ ์์ ๊ฒ์ด๋ผ๊ณ ํ์ ํฉ๋๋ค.
์ด์ ์๋น์ค๋ ํผ๋ธ๋ฆญ ํด๋ผ์ฐ๋๋ก ์ด๋ํ๋ ค๊ณ ์๋ํ๊ณ ์์ผ๋ฉฐ ์ฌ๊ธฐ์์ VPC๋ฅผ ๋ง๋๊ฒ ๋ฉ๋๋ค. VPC๋ ํด๋ผ์ฐ๋ ์ํ์์ ์ฌ์ฉ์, ์ธํ๋ผ, ํ๋ซํผ ๋ฐ ๊ธฐํ ์ญ๋์ ํจ๊ป ์ฐ๊ฒฐํ๋ ํผ๋ธ๋ฆญ ํด๋ผ์ฐ๋์ ์ผ๋ถ์ ๋๋ค. ๋์์ VPC๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋ฌํ ์ฉ๋์ด ๋ถํ์ํ๊ฒ ์ธํฐ๋ท์ ๋ ธ์ถ๋๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ผ๋ฉฐ ๊ฒฉ๋ฆฌ๋ ๋คํธ์ํฌ ๋ด์ ์ ์ง๋ฉ๋๋ค.
๊ฐ์ ๋คํธ์ํฌ๊ฐ ์ธ๋ถ์์ ๋ณด์ด๋ ๋ชจ์ต
VPC๋ ๋ฌด์๋ณด๋ค๋ VPNaaS, NATaas, LBaas ๋ฑ๊ณผ ๊ฐ์ ์ค๋ฒ๋ ์ด ๋คํธ์ํฌ ๋ฐ ๋คํธ์ํฌ ์๋น์ค๋ฅผ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ชจ๋ ๊ฒ์ ์ด๋ฏธ ๋
ผ์๋ ๋ด๊ฒฐํจ์ฑ ๋คํธ์ํฌ ์ธํ๋ผ ์์์ ์๋ํฉ๋๋ค.
๊ฐ์ ๋คํธ์ํฌ์ ๊ทธ ๊ตฌ์กฐ๋ฅผ ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋ ๊ฐ์ง ๊ฐ์ฉ์ฑ ์์ญ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ฐ๋ฆฌ๋ VPC๋ผ๊ณ ๋ถ๋ฅด๋ ๊ฐ์ ๋คํธ์ํฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ค์ ๋ก ์ด๋ "ํ์" ์ฃผ์์ ๊ณ ์ ์ฑ ๊ณต๊ฐ์ ์ ์ํฉ๋๋ค. ๊ฐ ๊ฐ์ ๋คํธ์ํฌ ๋ด์์ ์ปดํจํ
๋ฆฌ์์ค์ ํ ๋นํ ์ ์๋ ์ฃผ์ ๊ณต๊ฐ์ ์์ ํ ์ ์ดํ ์ ์์ต๋๋ค.
๋คํธ์ํฌ๋ ๊ธ๋ก๋ฒํฉ๋๋ค. ๋์์ ์๋ธ๋ท์ด๋ผ๋ ๊ฐ์ฒด์ ํํ๋ก ๊ฐ ๊ฐ์ฉ ์์ญ์ ํฌ์๋ฉ๋๋ค. ๊ฐ ์๋ธ๋ท์ ๋ํด ํฌ๊ธฐ 16 ์ดํ์ CIDR์ ํ ๋นํฉ๋๋ค. ๊ฐ ๊ฐ์ฉ์ฑ ์์ญ์๋ ์ด๋ฌํ ์ํฐํฐ๊ฐ ๋ ๊ฐ ์ด์ ์์ ์ ์์ผ๋ฉฐ ์ด๋ค ๊ฐ์๋ ํญ์ ํฌ๋ช ํ ๋ผ์ฐํ ์ด ์์ต๋๋ค. ์ด๋ ๋์ผํ VPC ๋ด์ ๋ชจ๋ ๋ฆฌ์์ค๊ฐ ์๋ก ๋ค๋ฅธ ๊ฐ์ฉ ์์ญ์ ์๋๋ผ๋ ์๋ก "๋ํ"ํ ์ ์์์ ์๋ฏธํฉ๋๋ค. ์ธํฐ๋ท์ ์ ์ํ์ง ์๊ณ ๋ ๋ด๋ถ ์ฑ๋์ ํตํด ๋์ผํ ์ฌ์ค ๋คํธ์ํฌ ๋ด์ ์๋ค๊ณ "์๊ฐ"ํ์ฌ "ํต์ "ํฉ๋๋ค.
์์ ๋ค์ด์ด๊ทธ๋จ์ ์ฃผ์ ์ด๋๊ฐ์์ ๊ต์ฐจํ๋ ๋ ๊ฐ์ VPC๋ผ๋ ์ผ๋ฐ์ ์ธ ์ํฉ์ ๋ณด์ฌ์ค๋๋ค. ๋ ๋ค ๋น์ ์ ๊ฒ์ด ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ํ๋๋ ๊ฐ๋ฐ์ฉ์ด๊ณ ๋ค๋ฅธ ํ๋๋ ํ ์คํธ์ฉ์ ๋๋ค. ๋จ์ํ ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ์์ ์๋ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ์๋ ์ค์ํ์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ VPC์๋ ํ๋์ ๊ฐ์ ๋จธ์ ์ด ์์ต๋๋ค.
๊ณํ์ ๋ ์
ํ์ํค์. ํ๋์ ๊ฐ์ ๋จธ์ ์ ์ฌ๋ฌ ์๋ธ๋ท์ ๋์์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ๊ฐ์ ๋คํธ์ํฌ์๋ ์์ต๋๋ค.
๋์์ ์ธํฐ๋ท์ ๋จธ์ ์ ๋
ธ์ถํด์ผ ํ๋ ๊ฒฝ์ฐ API๋ UI๋ฅผ ํตํด ์ด๋ฅผ ์ํํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ ค๋ฉด "ํ์" ๋ด๋ถ ์ฃผ์๋ฅผ "ํฐ์" ๊ณต์ฉ ์ฃผ์๋ก NAT ๋ณํํ๋๋ก ๊ตฌ์ฑํด์ผ ํฉ๋๋ค. "ํ์ดํธ" ์ฃผ์๋ ์ ํํ ์ ์์ผ๋ฉฐ ์ฃผ์ ํ์์ ๋ฌด์์๋ก ํ ๋น๋ฉ๋๋ค. ์ธ๋ถ IP ์ฌ์ฉ์ ์ค์งํ๋ฉด ์ฆ์ ํ๋ก ๋์๊ฐ๋๋ค. "ํ์ดํธ" ์ฃผ์๋ฅผ ์ฌ์ฉํ ์๊ฐ์ ๋ํด์๋ง ๋น์ฉ์ ์ง๋ถํ๋ฉด ๋ฉ๋๋ค.
NAT ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋จธ์ ์ ์ธํฐ๋ท ์ก์ธ์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. ์ ์ ๋ผ์ฐํ
ํ
์ด๋ธ์ ํตํด ์ธ์คํด์ค๋ก ํธ๋ํฝ์ ๋ผ์ฐํ
ํ ์ ์์ต๋๋ค. ์ฌ์ฉ์๋ค์ด ๊ฐ๋ ํ์๋ก ํ๋ ๊ฒฝ์ฐ๊ฐ ์์ด์ ์ด๋ฐ ๊ฒฝ์ฐ๋ฅผ ์ ๊ณตํ๊ณ , ์ ํฌ๋ ๊ทธ ์ฌ์ค์ ์๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด๋ฏธ์ง ๋๋ ํฐ๋ฆฌ์๋ ํน๋ณํ ๊ตฌ์ฑ๋ NAT ์ด๋ฏธ์ง๊ฐ ์์ต๋๋ค.
ํ์ง๋ง ์ด๋ฏธ ๋ง๋ค์ด์ง NAT ์ด๋ฏธ์ง๊ฐ ์๋๋ผ๋ ๊ตฌ์ฑ์ด ๋ณต์กํ ์ ์์ต๋๋ค. ์ผ๋ถ ์ฌ์ฉ์์๊ฒ๋ ์ด๊ฒ์ด ๊ฐ์ฅ ํธ๋ฆฌํ ์ต์
์ด ์๋๋ผ๋ ๊ฒ์ ์ดํดํ๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ตญ ํ ๋ฒ์ ํด๋ฆญ์ผ๋ก ์ํ๋ ์๋ธ๋ท์ ๋ํด NAT๋ฅผ ํ์ฑํํ ์ ์๊ฒ ๋์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ์์ง ๋น๊ณต๊ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ก์ธ์ค ์ํ์ด๋ฉฐ ์ปค๋ฎค๋ํฐ ๊ตฌ์ฑ์์ ๋์์ ๋ฐ์ ํ
์คํธ๋๊ณ ์์ต๋๋ค.
๊ฐ์ ๋คํธ์ํฌ๊ฐ ๋ด๋ถ์์ ์๋ํ๋ ๋ฐฉ์
์ฌ์ฉ์๋ ๊ฐ์ ๋คํธ์ํฌ์ ์ด๋ป๊ฒ ์ํธ ์์ฉํฉ๋๊น? ๋คํธ์ํฌ๋ API๋ฅผ ํตํด ์ธ๋ถ๋ฅผ ๋ฐ๋ผ๋ด
๋๋ค. ์ฌ์ฉ์๊ฐ API์ ์์ ๋์ ์ํ๋ก ์์
ํฉ๋๋ค. API๋ฅผ ํตํด ์ฌ์ฉ์๋ ๋ชจ๋ ๊ฒ์ด ์ด๋ป๊ฒ ๋ฐฐ์ด๋๊ณ ๊ตฌ์ฑ๋์ด์ผ ํ๋์ง ํ์ธํ๋ ๋์์ ์ํ๋ฅผ ํ์ธํ๊ณ ์ค์ ์ํ๊ฐ ์ํ๋ ์ํ์ ์ด๋ป๊ฒ ๋ค๋ฅธ์ง ํ์ธํฉ๋๋ค. ์ฌ์ฉ์์ ์ฌ์ง์
๋๋ค. ์์์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋ ๊ฑธ๊น์?
Yandex ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ ์ํ๋ฅผ ๊ธฐ๋กํ๊ณ VPC์ ๋ค๋ฅธ ๋ถ๋ถ์ ๊ตฌ์ฑํฉ๋๋ค. Yandex.Cloud์ ์ค๋ฒ๋ ์ด ๋คํธ์ํฌ๋ ์ต๊ทผ Tungsten Fabric์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ OpenContrail์ ์ ํ๋ ๊ตฌ์ฑ ์์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋์์ต๋๋ค. ๋คํธ์ํฌ ์๋น์ค๋ ๋จ์ผ CloudGate ํ๋ซํผ์์ ๊ตฌํ๋ฉ๋๋ค. CloudGate์์๋ ์ ์ด ์ ๋ณด๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ GoBGP์ ๋ฐ์ดํฐ ๊ฒฝ๋ก์ฉ DPDK ์์์ ์คํ๋๋ ์ํํธ์จ์ด ๋ผ์ฐํฐ๋ฅผ ๊ตฌํํ๊ธฐ ์ํ VPP ๋ฑ ๋ค์ํ ์คํ ์์ค ๊ตฌ์ฑ ์์๋ ์ฌ์ฉํ์ต๋๋ค.
Tungsten Fabric์ GoBGP๋ฅผ ํตํด CloudGate์ ํต์ ํฉ๋๋ค. ์ค๋ฒ๋ ์ด ๋คํธ์ํฌ์์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์๋ ค์ค๋๋ค. CloudGate๋ ์ค๋ฒ๋ ์ด ๋คํธ์ํฌ๋ฅผ ์๋ก ์ฐ๊ฒฐํ๊ณ ์ธํฐ๋ท์ ์ฐ๊ฒฐํฉ๋๋ค.
์ด์ ๊ฐ์ ๋คํธ์ํฌ๊ฐ ํ์ฅ์ฑ ๋ฐ ๊ฐ์ฉ์ฑ ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํด๊ฒฐํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค. ๊ฐ๋จํ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ด
์๋ค. ๊ฐ์ฉ ์์ญ์ด ํ๋ ์๊ณ ๊ทธ ์์ VPC๊ฐ ๋ ๊ฐ ์์ฑ๋์์ต๋๋ค. ์ฐ๋ฆฌ๋ ํ๋์ Tungsten Fabric ์ธ์คํด์ค๋ฅผ ๋ฐฐํฌํ์ผ๋ฉฐ ์ฌ๊ธฐ์๋ ์๋ง ๊ฐ์ ๋คํธ์ํฌ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ๋คํธ์ํฌ๋ CloudGate์ ํต์ ํฉ๋๋ค. ์ด๋ฏธ ๋งํ๋ฏ์ด CloudGate๋ ์๋ก ๋ฐ ์ธํฐ๋ท๊ณผ์ ์ฐ๊ฒฐ์ ๋ณด์ฅํฉ๋๋ค.
๋ ๋ฒ์งธ ๊ฐ์ฉ ์์ญ์ด ์ถ๊ฐ๋์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ฒซ ๋ฒ์งธ์๋ ์์ ํ ๋
๋ฆฝ์ ์ผ๋ก ์คํจํด์ผ ํฉ๋๋ค. ๋ฐ๋ผ์ ๋ ๋ฒ์งธ ๊ฐ์ฉ ์์ญ์๋ ๋ณ๋์ Tungsten Fabric ์ธ์คํด์ค๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค. ์ด๋ ์ค๋ฒ๋ ์ด๋ฅผ ์ฒ๋ฆฌํ๊ณ ์ฒซ ๋ฒ์งธ ์์คํ
์ ๋ํด ๊ฑฐ์ ์์ง ๋ชปํ๋ ๋ณ๋์ ์์คํ
์
๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ์ ๊ฐ์ ๋คํธ์ํฌ๊ฐ ๊ธ๋ก๋ฒํ ๊ฒ์ฒ๋ผ ๋ณด์ด๋ ๊ฒ์ ์ค์ ๋ก ์ฐ๋ฆฌ์ VPC API๋ฅผ ์์ฑํฉ๋๋ค. ์ด๊ฒ์ด ๊ทธ์ ์๋ฌด์
๋๋ค.
๊ฐ์ฉ ์์ญ B์ VPC1์ ๊ณ ์ ๋ ๋ฆฌ์์ค๊ฐ ์๋ ๊ฒฝ์ฐ VPC1์ ๊ฐ์ฉ ์์ญ B์ ๋งคํ๋ฉ๋๋ค. ๊ฐ์ฉ์ฑ ์์ญ B์ VPC2์ ๋ฆฌ์์ค๊ฐ ์์ผ๋ฉด ์ด ์์ญ์์ VPC2๋ฅผ ๊ตฌ์ฒดํํ์ง ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก VPC3์ ๋ฆฌ์์ค๋ ์์ญ B์๋ง ์กด์ฌํ๋ฏ๋ก ์์ญ A์๋ VPC3๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ด ๊ฐ๋จํ๊ณ ๋ ผ๋ฆฌ์ ์ ๋๋ค.
์กฐ๊ธ ๋ ๊น์ด ๋ค์ด๊ฐ Y.Cloud์ ํน์ ํธ์คํธ๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ ๊ฐ ์ฃผ๋ชฉํ๊ณ ์ถ์ ๊ฐ์ฅ ์ค์ํ ์ ์ ๋ชจ๋ ํธ์คํธ๊ฐ ๋์ผํ๊ฒ ์ค๊ณ๋์๋ค๋ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ํ์ํ ์ต์ํ์ ์๋น์ค๋ง ํ๋์จ์ด์์ ์คํ๋๊ณ ๋๋จธ์ง๋ ๋ชจ๋ ๊ฐ์ ๋จธ์ ์์ ์คํ๋๋๋ก ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ธฐ๋ณธ ์ธํ๋ผ ์๋น์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ณ ์ฐจ์์ ์ธ ์๋น์ค๋ฅผ ๊ตฌ์ถํ๊ณ ํด๋ผ์ฐ๋๋ฅผ ์ฌ์ฉํ์ฌ ์ง์์ ์ธ ํตํฉ ๋ฑ์ ์ผ๋ถ ์์ง๋์ด๋ง ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
ํน์ ํธ์คํธ๋ฅผ ์ดํด๋ณด๋ฉด ํธ์คํธ OS์์ ์คํ๋๋ ์ธ ๊ฐ์ง ๊ตฌ์ฑ ์์๊ฐ ์์์ ์ ์ ์์ต๋๋ค.
- ์ปดํจํ ์ ํธ์คํธ์ ์ปดํจํ ๋ฆฌ์์ค๋ฅผ ๋ถ์ฐ์ํค๋ ์ญํ ์ ๋ด๋นํ๋ ๋ถ๋ถ์ ๋๋ค.
- VRouter๋ ์ค๋ฒ๋ ์ด๋ฅผ ๊ตฌ์ฑํ๋ ํ ์คํ ํจ๋ธ๋ฆญ์ ์ผ๋ถ์ ๋๋ค. ์ฆ, ์ธ๋๋ ์ด๋ฅผ ํตํด ํจํท์ ํฐ๋๋งํฉ๋๋ค.
- VDisk๋ ์คํ ๋ฆฌ์ง ๊ฐ์ํ์ ์ผ๋ถ์ ๋๋ค.
๋ํ ๊ฐ์ ๋จธ์ ์ ํด๋ผ์ฐ๋ ์ธํ๋ผ ์๋น์ค, ํ๋ซํผ ์๋น์ค ๋ฐ ๊ณ ๊ฐ ์ฉ๋๊ณผ ๊ฐ์ ์๋น์ค๋ฅผ ์คํํฉ๋๋ค. ๊ณ ๊ฐ์ ์ญ๋๊ณผ ํ๋ซํผ ์๋น์ค๋ ํญ์ VRouter๋ฅผ ํตํด ์ค๋ฒ๋ ์ด๋ก ์ด๋ํฉ๋๋ค.
์ธํ๋ผ ์๋น์ค๋ ์ค๋ฒ๋ ์ด์ ์ฐ๊ฒฐํ ์ ์์ง๋ง ๋๋ถ๋ถ์ ์ธ๋๋ ์ด์์ ์์ ํ๊ธฐ๋ฅผ ์ํฉ๋๋ค. SR-IOV๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๋๋ ์ด์ ๊ณ ์ ๋ฉ๋๋ค. ์ค์ ๋ก ์ฑ๋ฅ ์ ํ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์นด๋๋ฅผ ๊ฐ์ ๋คํธ์ํฌ ์นด๋(๊ฐ์ ๊ธฐ๋ฅ)๋ก ์๋ผ ์ธํ๋ผ ๊ฐ์ ๋จธ์ ์ ๋ฐ์ด๋ฃ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋์ผํ CloudGate๊ฐ ์ด๋ฌํ ์ธํ๋ผ ๊ฐ์ ๋จธ์ ์ค ํ๋๋ก ์์๋ฉ๋๋ค.
์ด์ ๊ฐ์ ๋คํธ์ํฌ์ ์ ์ญ ์์ ๊ณผ ํด๋ผ์ฐ๋ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์์ ์ค๊ณ๋ฅผ ์ค๋ช ํ์ผ๋ฏ๋ก ๊ฐ์ ๋คํธ์ํฌ์ ์๋ก ๋ค๋ฅธ ๋ถ๋ถ์ด ์ ํํ ์ด๋ป๊ฒ ์๋ก ์ํธ ์์ฉํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ฐ๋ฆฌ ์์คํ ์์๋ ์ธ ๊ฐ์ง ๊ณ์ธต์ ๊ตฌ๋ถํฉ๋๋ค.
- ๊ตฌ์ฑ ํ๋ฉด โ ์์คํ ์ ๋์ ์ํ๋ฅผ ์ค์ ํฉ๋๋ค. ์ด๋ ์ฌ์ฉ์๊ฐ API๋ฅผ ํตํด ๊ตฌ์ฑํ๋ ๊ฒ์ ๋๋ค.
- ์ ์ด ํ๋ ์ธ โ ์ฌ์ฉ์ ์ง์ ์๋ฏธ ์ฒด๊ณ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ฆ, ์ฌ์ฉ์๊ฐ ๊ตฌ์ฑ ํ๋ ์ธ์์ ์ค๋ช ํ ๋ฐ์ดํฐ ํ๋ ์ธ์ ์ํ๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
- ๋ฐ์ดํฐ ํ๋ ์ธ โ ์ฌ์ฉ์ ํจํท์ ์ง์ ์ฒ๋ฆฌํฉ๋๋ค.
์์์ ๋งํ๋ฏ์ด ๋ชจ๋ ๊ฒ์ ์ฌ์ฉ์ ๋๋ ๋ด๋ถ ํ๋ซํผ ์๋น์ค๊ฐ API์ ์์ ํน์ ๋์ ์ํ๋ฅผ ์ค๋ช
ํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค.
์ด ์ํ๋ Yandex ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฆ์ ๊ธฐ๋ก๋๊ณ API๋ฅผ ํตํด ๋น๋๊ธฐ ์์ ์ ID๋ฅผ ๋ฐํํ๋ฉฐ ๋ด๋ถ ๊ธฐ๊ณ๋ฅผ ์์ํ์ฌ ์ฌ์ฉ์๊ฐ ์ํ๋ ์ํ๋ฅผ ์์ฑํฉ๋๋ค. ๊ตฌ์ฑ ์์ ์ SDN ์ปจํธ๋กค๋ฌ๋ก ์ด๋ํ์ฌ Tungsten Fabric์ ์ค๋ฒ๋ ์ด์์ ์ํํด์ผ ํ ์์ ์ ์๋ ค์ค๋๋ค. ์๋ฅผ ๋ค์ด ํฌํธ, ๊ฐ์ ๋คํธ์ํฌ ๋ฑ์ ์์ฝํฉ๋๋ค.
Tungsten Fabric์ ๊ตฌ์ฑ ํ๋ฉด์ ํ์ํ ์ํ๋ฅผ ์ ์ด ํ๋ฉด์ ์
๋ก๋ํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ตฌ์ฑ ํ๋ฉด์ ํธ์คํธ์ ํต์ ํ์ฌ ๊ฐ๊น์ด ๋ฏธ๋์ ํธ์คํธ์์ ์ ํํ ๋ฌด์์ด ์คํ๋ ๊ฒ์ธ์ง ์๋ ค์ค๋๋ค.
์ด์ ํธ์คํธ์์ ์์คํ
์ด ์ด๋ป๊ฒ ๋ณด์ด๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค. ๊ฐ์ ๋จธ์ ์๋ VRouter์ ์ฐ๊ฒฐ๋ ํน์ ๋คํธ์ํฌ ์ด๋ํฐ๊ฐ ์์ต๋๋ค. VRouter๋ ํจํท์ ๋ณด๋ Tungsten Fabric ์ฝ์ด ๋ชจ๋์
๋๋ค. ์ผ๋ถ ํจํท์ ๋ํ ํ๋ฆ์ด ์ด๋ฏธ ์๋ ๊ฒฝ์ฐ ๋ชจ๋์ ์ด๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค. ํ๋ฆ์ด ์์ผ๋ฉด ๋ชจ๋์ ์์ ํํ
(Punting)์ ์ํํฉ๋๋ค. ์ฆ, ํจํท์ usermod ํ๋ก์ธ์ค๋ก ๋ณด๋
๋๋ค. ํ๋ก์ธ์ค๋ ํจํท์ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ DHCP ๋ฐ DNS์ ๊ฐ์ด ํจํท ์์ฒด์ ์๋ตํ๊ฑฐ๋ VRouter์๊ฒ ํจํท ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์๋ ค์ค๋๋ค. ๊ทธ๋ฐ ๋ค์ VRouter๋ ํจํท์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
๋ํ ๋์ผํ ๊ฐ์ ๋คํธ์ํฌ ๋ด์ ๊ฐ์ ๋จธ์ ๊ฐ์ ํธ๋ํฝ์ ํฌ๋ช ํ๊ฒ ํ๋ฅด๋ฉฐ CloudGate๋ก ์ ์ก๋์ง ์์ต๋๋ค. ๊ฐ์ ๋จธ์ ์ด ๋ฐฐํฌ๋ ํธ์คํธ๋ ์๋ก ์ง์ ํต์ ํฉ๋๋ค. ํธ๋ํฝ์ ํฐ๋๋งํ๊ณ ์ธ๋๋ ์ด๋ฅผ ํตํด ์๋ก ์ ๋ฌํฉ๋๋ค.
์ปจํธ๋กค ํ๋ ์ธ์ ๋ค๋ฅธ ๋ผ์ฐํฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก BGP๋ฅผ ํตํด ๊ฐ์ฉ ์์ญ์์ ์๋ก ํต์ ํฉ๋๋ค. ์ด๋ค ๋จธ์ ์ด ์ด๋์ ์ค์น๋์ด ์๋์ง ์๋ ค์ฃผ๋ฏ๋ก ํ ์์ญ์ ๊ฐ์ ๋จธ์ ์ด ๋ค๋ฅธ ๊ฐ์ ๋จธ์ ๊ณผ ์ง์ ํต์ ํ ์ ์์ต๋๋ค.
Control Plane์ CloudGate์๋ ํต์ ํฉ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ์ ๋จธ์ ์ด ์ค์น๋ ์์น์ ์ฃผ์, ์ฃผ์๊ฐ ๋ฌด์์ธ์ง ๋ณด๊ณ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ธ๋ถ ํธ๋ํฝ๊ณผ ๋ฐธ๋ฐ์์ ํธ๋ํฝ์ ๋ฐธ๋ฐ์๋ก ์ ๋ฌํ ์ ์์ต๋๋ค.
VPC๋ฅผ ๋ ๋๋ ํธ๋ํฝ์ ๋ฐ์ดํฐ ๊ฒฝ๋ก์ CloudGate๋ก ์ ๋ฌ๋๋ฉฐ, ์ฌ๊ธฐ์ ํ๋ฌ๊ทธ์ธ์ด ํฌํจ๋ VPP๊ฐ ๋น ๋ฅด๊ฒ ์น์ด์ง๋๋ค. ๊ทธ๋ฐ ๋ค์ ํธ๋ํฝ์ CloudGate ์์ฒด์ ์ ์ด ํ๋ฉด์ ํตํด ๊ตฌ์ฑ๋ ๋ค๋ฅธ VPC๋ก ๋๋ ์ธ๋ถ์ ์์ง ๋ผ์ฐํฐ๋ก ์ ์ก๋ฉ๋๋ค.
๊ฐ๊น์ด ๋ฏธ๋๋ฅผ์ํ ๊ณํ
์์์ ์ธ๊ธํ ๋ชจ๋ ๋ด์ฉ์ ๋ช ๋ฌธ์ฅ์ผ๋ก ์์ฝํ๋ฉด Yandex.Cloud์ VPC๋ โโ๋ ๊ฐ์ง ์ค์ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค๊ณ ๋งํ ์ ์์ต๋๋ค.
- ์๋ก ๋ค๋ฅธ ํด๋ผ์ด์ธํธ ๊ฐ์ ๊ฒฉ๋ฆฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ๋ฆฌ์์ค, ์ธํ๋ผ, ํ๋ซํผ ์๋น์ค, ๊ธฐํ ํด๋ผ์ฐ๋ ๋ฐ ์จํ๋ ๋ฏธ์ค๋ฅผ ๋จ์ผ ๋คํธ์ํฌ๋ก ํตํฉํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์ ํด๊ฒฐํ๋ ค๋ฉด ๋ด๋ถ ์ํคํ ์ฒ ์์ค์์ ํ์ฅ์ฑ๊ณผ ๋ด๊ฒฐํจ์ฑ์ ํ๋ณดํด์ผ ํ๋๋ฐ ์ด๊ฒ์ด ๋ฐ๋ก VPC๊ฐ ํ๋ ์ผ์ ๋๋ค.
์ ์ฐจ์ ์ผ๋ก VPC๋ โโ๊ธฐ๋ฅ์ ํ๋ณดํ๊ณ ์์ผ๋ฉฐ, ์๋ก์ด ๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ ์์ผ๋ฉฐ, ์ฌ์ฉ์ ํธ์์ฑ ์ธก๋ฉด์์ ๊ฐ์ ์ ์ํด ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค. ์ปค๋ฎค๋ํฐ ๊ตฌ์ฑ์ ๋๋ถ์ ์ผ๋ถ ์์ด๋์ด๊ฐ ํ๋ช ๋๊ณ ์ฐ์ ์์ ๋ชฉ๋ก์ ํฌํจ๋์์ต๋๋ค.
์ด์ ์ฐ๋ฆฌ๋ ๊ฐ๊น์ด ๋ฏธ๋์ ๋ํด ๋๋ต ๋ค์๊ณผ ๊ฐ์ ๊ณํ ๋ชฉ๋ก์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
- ์๋น์ค๋ก์์ VPN.
- ํ๋ผ์ด๋น DNS ์ธ์คํด์ค โ ์ฌ์ ๊ตฌ์ฑ๋ DNS ์๋ฒ๋ก ๊ฐ์ ๋จธ์ ์ ๋น ๋ฅด๊ฒ ์ค์ ํ๊ธฐ ์ํ ์ด๋ฏธ์ง์ ๋๋ค.
- ์๋น์ค๋ก์์ DNS.
- ๋ด๋ถ ๋ถํ ๋ถ์ฐ๊ธฐ.
- ๊ฐ์ ๋จธ์ ์ ๋ค์ ์์ฑํ์ง ์๊ณ "ํ์ดํธ" IP ์ฃผ์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์ฌ์ฉ์์ ์์ฒญ์ ๋ฐ๋ผ ์ด๋ฏธ ์์ฑ๋ ๊ฐ์ ๋จธ์ ์ IP ์ฃผ์๋ฅผ ์ ํํ๋ ๊ธฐ๋ฅ๊ณผ ๋ฐธ๋ฐ์๊ฐ ์ด ๋ชฉ๋ก์ ํฌํจ๋์์ต๋๋ค. ์์งํ ๋งํด์ ๋ช ์์ ์ธ ํผ๋๋ฐฑ์ด ์์๋ค๋ฉด ์ฐ๋ฆฌ๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ ์กฐ๊ธ ๋์ค์ ์ํํ์ ๊ฒ์ ๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์ฃผ์์ ๊ดํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์์ต๋๋ค.
์ฒ์์๋ "ํ์ดํธ" IP ์ฃผ์๋ ๋จธ์ ์ ์์ฑํ ๋๋ง ์ถ๊ฐํ ์ ์์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ์ด ์์ ์ ์์ด๋ฒ๋ฆฐ ๊ฒฝ์ฐ ๊ฐ์ ๋จธ์ ์ ๋ค์ ๋ง๋ค์ด์ผ ํ์ต๋๋ค. ํ์ํ ๊ฒฝ์ฐ ์ธ๋ถ IP๋ฅผ ์ ๊ฑฐํ๋ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ๋จธ์ง์์ ๋จธ์ ์ ๋ค์ ์์ฑํ์ง ์๊ณ ๋ ๊ณต์ฉ IP๋ฅผ ์ผ๊ณ ๋ ์ ์๊ฒ ๋ ๊ฒ์ ๋๋ค.
๋ง์๊ป ํํํด๋ณด์ธ์
์ถ์ฒ : habr.com