[AWS] VPC: Transit Gateway
Transit Gateway๋ ์๋ก ๋ค๋ฅธ VPC๋ค์ ์ฐ๊ฒฐํด์ ์ธ ์ ์๊ฒ ํด์ฃผ๋ ๊ธฐ๋ฅ ์ค ํ๋๋ค.
VPC๊ฐ ์์ฃผ ๋ง๊ณ , VPC๊ฐ ์๋ก ๋ณต์กํ๊ฒ ์๋ก ์ฝํ์๋ ๊ด๊ณ์ mesh์ ์ ์ฉํ๊ธฐ ๋งค์ฐ ์ ํฉํ๋ค.
Transit Gateway๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฌ๊ฐ์ VPC๋ฅผ ๋ฌถ๋ "๊ทธ๋ฃน"์ ๊ฐ๋
์ด๋ค.
Transit Gateway์ ํฌํจ๋ VPC๋ผ๋ฆฌ๋ ์๋ก ํต์ ์ด ๊ฐ๋ฅํ๋ฉฐ, Gateway๋ผ๋ฆฌ peering์ ํ๋ฉด ๋ค๋ฅธ ๊ฒ์ดํธ์จ์ด์ VPC๋ผ๋ฆฌ๋ ํต์ ์ ๊ฐ๋ฅํ๋ค.
Gateway ๋จ์์ peering์ ๊ทธ๋ฆผ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋จ์ผ๋ฆฌ์ , ๋ฉํฐ๋ฆฌ์ ์ ๋ถ ๊ฐ๋ฅํ๋ค.
๋ฟ๋ง ์๋๋ผ ์จํ๋ ๋ฏธ์ค ํ๊ฒฝ๊ณผ์ peering๋ ์ง์๋๋ค.
๋น์ฉ
https://aws.amazon.com/ko/transit-gateway/pricing/
ํ๋ฌ ๊ธฐ์ค์ผ๋ก ์ฐ๊ฒฐ ํ๊ฐ๋น 0.07๋ฌ๋ฌ
๊ทธ๋ฆฌ๊ณ ์ค๊ณ ๊ฐ ๋ฐ์ดํฐ ๊ธฐ์ค์ผ๋ก ์๊ธ์ ์ฒ๋ฆฌํ๋ค.
ํ ์คํธ ํ๊ฒฝ ๊ตฌ์ฑ
์ ๋์ํ๋์ง ํ์ธํ๊ธฐ ์ํด์ ๊ตฌ์ฑ์ ์ง์ ํด๋ณด์.
default-vpc์ test-vpc 2๊ฐ๋ฅผ ๋๊ณ , ๊ฐ๊ฐ์ EC2 ์ธ์คํด์ค๋ฅผ ํ๋์ฉ ๋ง๋ค์๋ค.

๊ทธ๋ฆฌ๊ณ test-vpc์ ์๋ ์๋ฒ์ 80 ํฌํธ๋ก ์๋ฒ๋ฅผ ์ด์๋ค.
๊ทธ๋ฆฌ๊ณ default-vpc์ ๋ค์ด๊ฐ์ ์๋ฒ์ private IP๋ก ํธ์ถํ๋ฉด
๊ทธ๋ฅ ๋งํ ๊ฒ์ด๋ค.
์ด๊ฑธ ํ๋ฒ transit gateway๋ฅผ ํตํด์ ๋ซ์ด๋ณด๊ฒ ๋ค.
์ฒ์์ ํ ๊ฒ์ ์ด 2๊ฐ์ VPC๋ฅผ ํ๋์ ๊ฒ์ดํธ์จ์ด๋ก ๋ฌถ์ด์ ์๋ก ํต์ ํ ์ ์๊ฒ ํ๋ ๊ฒ์ด๋ค.
Transit Gateway ๋ง๋ค๊ธฐ
Gateway๋ฅผ ๋จผ์ ๋ง๋ ๋ค.
์ด๊ฒ ์ 2๊ฐ VPC๋ฅผ ๋ฌถ์ ๊ทธ๋ฃน์ด ๋ ๊ฒ์ด๋ค.

์ ๋นํ ์ค์ ํ๊ณ ๋ง๋ ๋ค.
์ฝ๋ค.
VPC ์ฐ๊ฒฐํ๊ธฐ
๊ทธ๋ฆฌ๊ณ ์ ๊ธฐ์ VPC๋ฅผ ์ฐ๊ฒฐํด์ค์ผ ํ๋ค.
์์ฑ ๋ฒํผ ๋๋ฅด๊ณ
์ฐ๊ฒฐํ gateway์ VPC๋ฅผ ์ ํํ๋ค.
๋๋ค ํด์
์ด๋ ๊ฒ ๋จ๋ฉด ์ ๋ ๊ฒ์ด๋ค.
VPC ๋ผ์ฐํ ํ ์ด๋ธ
๊ทผ๋ฐ ์ ๊ฒ๋ง์ผ๋ก๋ ๋ฐ๋ก VPC๋ค๋ผ๋ฆฌ ์์ฒญ์ ์์ง๋ ๋ชปํ๋ค.
gateway๋ ์ค๊ฐ๋ค๋ฆฌ ์ญํ ์ ํ ๋ฟ์ด๊ณ , ์ด๊ฑธ ํตํด์ ๋ผ์ฐํ
ํ
์ด๋ธ์ ํ๋๋ก ๊ตฌ์ฑํด์ผ ํ๋ค.
default vpc์ ์๋ธ๋ท๋ค์ ๋ผ์ฐํ ํ ์ด๋ธ์๋, test vpc CIDR -> ๊ฒ์ดํธ์จ์ด๋ก ๋งคํ๋๊ฒ ํ๊ณ , ๊ทธ ๋ฐ๋๋ ๋ ธ๊ฐ๋ค๋ฅผ ์น๋ค.

๊ทธ๋ผ ๊ตฌ๋ฉ์ด ๋ซ๋ฆด ๊ฒ์ด๋ค.
Gateway ๊ฐ์ peering ๊ตฌ์ฑํด๋ณด๊ธฐ
๊ฒ์ดํธ์จ์ด ๋ด๋ถ์ ์ฐ๊ฒฐ์ ๊ฒฝํํด๋ดค์ผ๋, ์ด๋ฒ์๋ ๊ฒ์ดํธ์จ์ด๋ผ๋ฆฌ์ ์ฐ๊ฒฐ์ ์๋ํด๋ณด์
์๋๊ฑด ๋๊ณ vpc๋ฅผ ํ๋ ๋ ํ์ ๊ตฌ์ฑํ๋ค.
์ด๋ฆ์ ์๊ฐ์์ด ์ง์ด์ ๊ฒ์ดํธ์จ์ด ์ด๋ฆ๊ณผ ํท๊ฐ๋ฆฌ๊ฒ ๋ผ๋ฒ๋ ธ๋ค. ์๋ฌดํผ..
ํ ์คํธ์ฉ์ผ๋ก ์ธ์คํด์ค ๋ ํ์
๋๋ค๋ฅธ ์๋ฒ๋ฅผ ๊ตฌ์ฑํ๋ค.
์ ๊ธฐ์ ๊ธฐ์กด์ ์๋ ์๋ฒ๋ฅผ ํธ์ถํ๋ฉด
VPC๋ ๋ค๋ฅด๊ณ ๋ญ๊ฐ ์ฐ๊ฒฐ๋๊ฒ ์์ผ๋ ๊ทธ๋ฅ ๋ป์ ๊ฒ์ด๋ค. ํ๋ฒ ์ ๊ฒ ๋๊ฒ ๋ง๋ค์ด๋ณด์.
๊ทธ๋์ ๋จผ์ ์ ์๋ก์ด vpc๋ฅผ ๋ฌถ์ ๊ฒ์ดํธ์จ์ด๋ฅผ ์ถ๊ฐ๋ก ๋ง๋ค์๋ค.

๊ทธ๋ฆฌ๊ณ VPC์ ์ฎ์ด์ค๋ค.
์ฌ๊ธฐ๊น์ง๋ ์ด์ ๊ณผ ๋์ผํ๋ฐ, ์ด์ ๋ถํฐ๋ ์กฐ๊ธ ๋ฌ๋ผ์ง ๊ฒ์ด๋ค.
๊ฒ์ดํธ์จ์ด peering attach
๊ฒ์ดํธ์จ์ด๋ผ๋ฆฌ ๋ฌถ๋๊ฒ๋ attachment ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ํํ๋ค.


์ฐ๊ฒฐ ํ์
์ Peering Connection์ผ๋ก ํด์ ๊ฒ์ดํธ์จ์ด๋ฅผ 2๊ฐ ์ฎ์ด์ฃผ๋ฉด ๋๋ค.
์์๋ ์๊ด์๋ค. ๋์ถฉ ๋ฃ์ด๋ ์๋ฐฉ์ผ๋ก ์ฎ์ธ๋ค.
๊ฒ์ดํธ์จ์ด ๋ผ์ฐํ
๊ฒ์ดํธ์จ์ด ๋ด์์ ์ค๊ณ ๊ฐ๋๊ฑธ VPC ๋ผ์ฐํ ํ ์ด๋ธ๋ก ์ฒ๋ฆฌํ๋ค๋ฉด, ๊ฒ์ดํธ์จ์ด๋ผ๋ฆฌ ์ค๊ณ ๊ฐ๋๊ฑด VPC ๋ผ์ฐํ ํ ์ด๋ธ๋ก ์ฒ๋ฆฌํ๋ค.
์ธ๋ฐ์ด๋๋ฅผ ๋ซ์ด์ฃผ๊ณ ์ถ์ ๊ฒ์ดํธ์จ์ด์ ๋ผ์ฐํ ํ ์ด๋ธ๋ก ์ด๋ํด์, ์ ์ ๊ฒฝ๋ก ์์ฑ์ ๋๋ฅธ๋ค.

์ธ๋ฐ์ด๋ VPC์ CIDR์ ์จ์ฃผ๊ณ , ์ฐ๊ฒฐ์ ํผ์ด๋ง์ ์ง์ ํด์ค๋ค.
์ด ์ ์ ๊ฒฝ๋ก๋ ์๋ก๋ง๋ 3๋ฒ์งธ VPC์์ ์์ฒญ์ ๋ณด๋์๋, ํผ์ด๋ง์ ํตํด ๊ฒ์ดํธ์จ์ด๋ก ๋ฌถ์ธ ๊ธฐ์กด์ 1๋ฒ์งธ,2๋ฒ์งธ VPC๋ก ๋ค์ด์ฌ ์ ์๊ฒ ํ๋ค.
๊ทธ๋์ ์ ๊ฑธ ์ ์ฉํ๋ฉด ์ด์
์คํ์ด ๋ ๊ฒ์ด๋ค.
๊ทธ ๋ฐ๋๋ ์๋ฐฉํฅ์ผ๋ก ์ด๋ฃจ์ด์ง๊ธธ ์ํ๋ค๋ฉด, ๋๊ฐ์ด ๋ฐ๋ณตํด์ฃผ๋ฉด ๋๋ค.

์. ์ ๋๋ค.
์ฐธ์กฐ
https://slack.engineering/building-the-next-evolution-of-cloud-networks-at-slack/
https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/aws-transit-gateway.html
https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/tgw-peering.html