- AWS VPC ๊ธฐ๋ฅ
- AWS VPC ์ค์ต
๊ฐ ๋ฆฌ์ ๋ณ๋ก ์ฌ๋ฌ AZ๊ฐ ์กด์ฌํ๋๋ฐ ์ด๋ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌ๋์ด ์๋ ์ธํ๋ผ๊ฐ ๋ชจ์ฌ ์๋ ๋ฐ์ดํฐ ์ผํฐ๋ฅผ ์๋ฏธํ๋ค. ๊ฐ AZ๋ ์ผ์ ๊ฑฐ๋ฆฌ ์ด์ ๋จ์ด์ ธ ์์ผ๋ฉฐ ํ๋์ ๋ฆฌ์ ์ 2๊ฐ ์ด์์ AZ๋ก ๊ตฌ์ฑ๋์ด์๋ค. ๊ฐ ๊ณ์ ์ AZ๋ ๋ค๋ฅธ ๊ณ์ ์ AZ์ ๋ค๋ฅธ ์์ด๋๋ฅผ ๋ถ์ฌ๋ฐ๋๋ค.
VPC์ ํ์ ๋จ์๋ก ํ๋์ AZ์์๋ง ์์ฑ์ด ๊ฐ๋ฅํ๋ค. ํ๋์ AZ๋ ์ฌ๋ฌ ๊ฐ์ Subnet์ ์์ฑํ ์ ์๋ค. ์ฃผ๋ก Public Subnet๊ณผ Private Subnet์ผ๋ก ๋๋๋๋ฐ ์ด๋ ์ธํฐ๋ท์ ์ ๊ทผ ๊ฐ๋ฅ ์ฌ๋ถ์ ๋ฐ๋ผ ๋๋๋ค.
Private Subnet ๋ด์๋ ์ฃผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ ๋ณด์์ ์ผ๋ก ์ค์ํ ๊ฒฉ๋ฆฌ๋ ์๋น์ค๋ค์ด ์์นํ๋ค. ํ์ง๋ง ์ด๋ฌํ ์๋น์ค๋ค์ ์ธ๋ถ์์ ์ํํธ์จ์ด๋ฅผ ๋ค์ด๋ฐ๊ฑฐ๋ ์ ๋ฐ์ดํธ๋ฅผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ธํฐ๋ท๊ณผ์ ํต์ ์ด ๋ฐ๋์ ํ์ํด์ง๊ฒ ๋๋ค. ๋ฐ๋ผ์ Private Subnet์ด ์ธ๋ถ์ ํต์ ์ด ํ์ํ ๊ฒฝ์ฐ Public Subnet์ ํตํด ์ฐํํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํด๊ฒฐ์ด ๊ฐ๋ฅํ๋ค. (ํ๋์ VPC ๋ด๋ถ์ ์๋ธ๋ท ๊ฐ์ ํต์ ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ)
์ฝ๊ฒ ๋งํด ์ธํฐ๋ท์ผ๋ก ๋๊ฐ๋ ํต๋ก๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ๋จ, Private Subnet์ IGW๋ก ์ด๋ํ์ง ์๋๋ค.
๋ณด์์ ํด๋นํ๋ ๊ธฐ๋ฅ์ด๋ฉฐ NACL์ Stateless, Security Group์ Statefulํ๊ฒ ๋์ํ๋ค. Access Block์ NACL์์๋ง ๊ฐ๋ฅํ๋ค.
ํธ๋ํฝ์ ์๋ดํด์ฃผ๋ ํ ์ด๋ธ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. (VPC๋ฅผ ์์ฑํ๋ฉด ์๋์ผ๋ก ์์ฑ๋จ)
์์์ ์ธ๊ธํ๋ฏ์ด Private Subnet์ด Public Subnet์ ์ฐํํ์ฌ ์ธ๋ถ์ ํต์ ์ด ํ์ํ ๊ฒฝ์ฐ NAT ์ธ์คํด์ค ํน์ NAT Gateway๋ฅผ ํตํด์ ๊ฐ๋ฅํ๋ค. ๋จ, Public Subnet์ ์์นํด์ผ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
NAT ์ธ์คํด์ค๋ ํ๋์ EC2๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ฉฐ NAT Gateway๋ AWS์์ ์ ๊ณตํ๋ ํนํ๋ ์๋น์ค๋ก ์ฌ์ฉ๋ฐฉ๋ฒ์ ๊ต์ฅํ ๊ฐ๋จํ๋ค.
Bastion Host๋ ์ธ๋ถ์ ์๋ ์ฌ์ฉ์(์ฃผ๋ก ๊ฐ๋ฐ์ ํน์ ๊ด๋ฆฌ์)๊ฐ Private Subnet์ ์ ๊ทผํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ด์ฉ์ผ๋ก NAT ์ธ์คํด์ค์ NAT Gateway์ ์ ์ฌํ ๊ฐ๋ ์ด๋ค. Public Subnet์ ์์นํ๋ EC2๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
NAT ์ธ์คํด์ค์ NAT Gateway๋ Private Subnet์์ ์ธ๋ถ๋ก ๊ฐ๋ ๋ฐฉํฅ์ด๋ผ๋ฉด Bastion Host๋ ์ธ๋ถ์์ Private Subnet์ผ๋ก ๊ฐ๋ ๋ฐฉํฅ์ ๊ฐ๋ ์ด๋ค.
VPC Endpoint๋ ์๋น์ค์ ๋น๊ณต๊ฐ๋ก ์ฐ๊ฒฐํ ๋ ์ฌ์ฉํ๋ค. Public IP ์ฃผ์๊ฐ ํ์์๋ค๋ ํน์ง์ ๊ฐ์ง๊ณ ์๋ค.
VPC Endpoint๋ AWS์ ์ฌ๋ฌ ์๋น์ค๋ค๊ณผ VPC๋ฅผ ์ฐ๊ฒฐํด์ฃผ๋ ์ค๊ฐ ๋งค๊ฐ์ฒด์ด๋ค. AWS์์ VPC ์ธ๋ถ๋ก ํธ๋ํฝ์ด ๋๊ฐ์ง ์๊ณ AWS์ ์ฌ๋ฌ ์๋น์ค๋ฅผ ์ฌ์ฉํ๊ฒ๋ ๋ง๋ค์ด์ฃผ๋ ์๋น์ค์ด๋ค. Private Subnet์ ๊ฒฉ๋ฆฌ๋ ๊ณต๊ฐ์์๋ ๋ถ๊ตฌํ๊ณ Private Subnet์ ์์นํ S3, DynamoDB, Athena, RDS ๋ฑ์ ์ฐ๊ฒฐํ ์ ์๋๋ก ์ง์ํด์ฃผ๋ ์๋น์ค์ด๋ค.