๋ํ์ ์ธ ์ฝ๋ํ ์ธํ๋ผ(IaC, Infrastructure as Code) ํ๋ก๊ทธ๋จ์ธ ํ ๋ผํผ(Terraform)์ ์ด์ฉํ์ฌ AWS์ ์ฃผ์ ํต์ฌ ์๋น์ค๋ฅผ ์ฝ๋๋ก ์์ฑํด๋ณด๊ณ ๊ฐ๋จํ AWS ํด๋ผ์ฐ๋ ์ํคํ ์ฒ๋ฅผ ๋จ๊ณ์ ์ผ๋ก ๊ตฌ์ถํด๋ด์ผ๋ก์จ ํ ๋ผํผ(Terraform)์ ๊ธฐ๋ณธ์ ์ธ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ํ์ตํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
ํ ๋ผํผ(Terraform) ์ฝ๋ ์์ฑ์ ํ์ํ ๋ค์ํ Resource์ Data๋ฅผ ์ฐธ์กฐํ๋ ๋ฐฉ๋ฒ
ํ ๋ผํผ(Terraform) ์ฝ๋๋ก AWS ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ
AWS ํด๋ผ์ฐ๋ ์ํคํ ์ฒ๋ฅผ ํ ๋ผํผ(Terraform)์ผ๋ก ๊ตฌํํ๋ ๋ฐฉ๋ฒ
ํ
๋ผํผ์ผ๋ก ๋ฐฐ์ฐ๋ ์ฝ๋ํ ์ธํ๋ผ,
ํด๋ผ์ฐ๋ ์ํคํ
์ฒ๋ฅผ ์ง์ ๊ตฌ์ถํด๋ณด์ธ์!
๋ํ์ ์ธ ์ฝ๋ํ ์ธํ๋ผ ํ๋ก๊ทธ๋จ, ํ
๋ผํผ์ ํ์ฉํด
AWS ํด๋ผ์ฐ๋ ์ธํ๋ผ๋ฅผ ๋ง๋ค์ด๋ณด๋ ๋ฐฉ๋ฒ์ ํ์ตํฉ๋๋ค.
์ฝ๋ํ ์ธํ๋ผ(IaC, Infrastructure as Code)๋ ์ผ๋ฐ์ ์ผ๋ก ์ฝ๋๋ฅผ ํตํด ์ธํ๋ผ๋ฅผ ์์ฑํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ ์๋ฏธํ๋ฉฐ, ์ฝ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ธํ๋ผ ๊ตฌ์ฑ ์์๋ค์ ์์ฑํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์๋์ ์ธ ๋ฐฉ๋ฒ๋ณด๋ค ํจ์จ์ ์ด๊ณ ์ ์ฐํฉ๋๋ค. ํนํ ํด๋ผ์ฐ๋ ์ปดํจํ ๊ณผ ๋ฐ๋ธ์ต์ค(DevOps)๊ฐ ๋ณดํธํ๋๋ฉด์ ์ด๋ฌํ ์ฝ๋ํ ์ธํ๋ผ์ ์ด๋ฅผ ํ์ฉํ ์ ์๋ ๋ค์ํ ์ฝ๋ํ ์ธํ๋ผ ํ๋ก๊ทธ๋จ์ ๋ํ ๊ด์ฌ์ด ๋์์ง๊ฒ ๋์์ต๋๋ค.
๋ค์ํ ์ฝ๋ํ ์ธํ๋ผ ํ๋ก๊ทธ๋จ ์ค์์๋ ํ์์ฝํ(Hashicorp)์์ ๊ฐ๋ฐํ ํ ๋ผํผ(Terraform)์ ๊ธฐ๋ณธ์ ์ธ ์ธํ๋ผ ์์ฑ๊ณผ ๋ฐฐํฌ์ ์ต์ ํ๋์ด ์๊ณ ์๋ง์กด์น์๋น์ค(AWS), ๊ตฌ๊ธ ํด๋ผ์ฐ๋ ํ๋ซํผ(GCP), ๋ง์ดํฌ๋ก์ํํธ ์ ์ (Azure)์ ๊ฐ์ ๋ค์ํ ํด๋ผ์ฐ๋ ์๋น์ค ์ ๊ณต์ฌ๋ค์ ์ธํ๋ผ๋ฅผ ๋์์ ์ฝ๋๋ก ์์ฑํ๊ณ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์ด๋ฐ ์ฅ์ ๋ค๋ก ํ ๋ผํผ(Terraform)์ ๋ง์ ๊ธฐ์ ์์ ์ฌ์ฉํ๋ ๋ํ์ ์ธ ์ฝ๋ํ ์ธํ๋ผ ํ๋ก๊ทธ๋จ์ผ๋ก ์๋ฆฌ์ก๊ณ ์๊ธฐ ๋๋ฌธ์, ๋ง์ ๋ถ๋ค์ด ํ ๋ผํผ(Terraform)์ ํตํด ์ฝ๋ํ ์ธํ๋ผ์ ๊ฐ๋ ๊ณผ ์๋ ์๋ฆฌ๋ฅผ ์ดํดํ๊ณ ์ฝ๋๋ก ์ธํ๋ผ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ๋ํ์ฌ ํ์ตํ ์ ์๋ ๊ฐ์๋ฅผ ๊ธฐํํ๊ฒ ๋์์ต๋๋ค.
์ด ๊ฐ์๋ฅผ ์๋ฃํ๋ฉด ํ ๋ผํผ(Terraform)์์:
์๊ฐ ์ ํ์ธํด์ฃผ์ธ์!
AWS Cloud9์์ ์ค์ต ํ๊ฒฝ์ ์์ฑํ๊ณ ํ ๋ผํผ(Terraform) ์ฌ์ฉ์ ์ํ ๊ธฐ๋ณธ์ ์ธ ์ ํ ์ ํฉ๋๋ค.
EC2 ์ฌ์ฉ์ ํ์ํ Key pair๋ฅผ ์์ฑํฉ๋๋ค.
EC2๋ฅผ ์์ฑํ๊ณ Key pair, Security group, Subnet, Availability Zone, Userdata๋ฅผ ์ ์ฉํฉ๋๋ค.
ALB์ ๊ตฌ์ฑ ์์(Target group, Listener ๋ฑ)์ ์์ฑํ๊ณ ์น ๋ธ๋ผ์ฐ์ ์์ ALB ๋์์ ํ์ธํฉ๋๋ค.
Custom VPC์ Public/Private subnet, Route table, NAT Gateway ๋ฑ์ VPC ๊ตฌ์ฑ ์์๋ค์ ์์ฑํ๊ณ Bastion host๋ฅผ ํตํด Private EC2์ ์ ์ํด๋ณธ ํ, Private subnet์ Application Load Balancer๋ฅผ ๊ตฌ์ฑํ์ฌ ์น ๋ธ๋ผ์ฐ์ ์์ ALB ๋์์ ํ์ธํฉ๋๋ค.
Auto Scaling์ฉ Security group๊ณผ Application Load Balancer(ALB) ์์ฑ ํ Launch configuration ๋ฐ Auto Scaling Group์ ์ถ๊ฐํ๊ณ Load test๋ฅผ ํตํด Auto Scaling ๋์์ ํ์ธํฉ๋๋ค.
Q. AWS ํด๋ผ์ฐ๋์ ๋ํ์ฌ ์ด๋์ ๋ ์๊ณ ์์ด์ผ ํ๋์?
์ฌ๋์๋ ์์ค๊น์ง๋ ํ์ํ์ง ์์ง๋ง, ์ด ๊ฐ์์์ ๋ค๋ฃจ๋ EC2, Application Load Balancer, VPC, Auto Scaling๋ค์ด ์ด๋ค ์๋น์ค์ธ์ง ์ดํดํ๊ณ , ์ค์ AWS Management console์์ ์ด ์๋น์ค๋ค์ ๋ค๋ฃจ์ด ๋ณธ ๊ฒฝํ(์ : EC2 ์ธ์คํด์ค๋ VPC๋ฅผ ๋ง๋ค์ด๋ณด๋ ์ ๋)์ด ํ์ํฉ๋๋ค.
Q. AWS ํด๋ผ์ฐ๋ ์ธํ๋ผ์ ํ ๋ผํผ(Terraform) ์ค ์ด๋์ ๋ ์ค์ ์ ๋๋์?
์ด ๊ฐ์๋ AWS ํด๋ผ์ฐ๋ ์ธํ๋ผ๋ณด๋ค๋ ํ ๋ผํผ(Terraform)์ ์ค์ ์ ๋๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ AWS ํด๋ผ์ฐ๋ ์ธํ๋ผ์ ๋ํ ์ค๋ช ๋ณด๋ค๋ ์ํคํ ์ฒ ๋ค์ด์ด๊ทธ๋จ์ ๋ณด๊ณ ์ด๋ฅผ ์ฝ๋๋ก ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ตํ๋ ๊ฒ์ ํ์ต ๋ชฉํ๋ก ์ก๊ณ ์์ต๋๋ค.
Q. ๊ฐ์์์ ์ด๋ ์ ๋ ์์ค๊น์ง ๋ด์ฉ์ ๋ค๋ฃจ๋์?
์ด ๊ฐ์๋ ํ ๋ผํผ(Terraform)๊ณผ AWS ํด๋ผ์ฐ๋ ๊ด์ ์์ ์ด๊ธ ์์ค๊น์ง ๋ค๋ฃจ๊ณ ์์ต๋๋ค. ๊ฐ๋จํ ์ธํ๋ผ๋ถํฐ ์ฝ๋๋ก ์์ฑํ๋ ์ฐ์ต์ ํ๋ค๋ณด๋ฉด ์กฐ๊ธ์ฉ ๊ณ ๋ํ๋ ์ธํ๋ผ๋ ์ฌ๋ฌ๋ถ์ ์์ผ๋ก ์ง์ ์ฝ๋๋ก ๊ตฌํํ ์ ์์ต๋๋ค.
Q. AWS Cloud9์ ์ค์ต ํ๊ฒฝ์ผ๋ก ์ฌ์ฉํ๋ ์ด์ ๊ฐ ์๋์?
ํ์ต์ ๋ถ๋ค์ด ๋ชจ๋ ๋ค๋ฅธ ๋งํผ ์ฌ์ฉํ์๋ ์ด์์ฒด์ ๋๋ ๊ฐ๋ฐํ๊ฒฝ๋ ๋ชจ๋ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, ํ์ต์ ๋ถ๋ค์ด ๋์ผํ ํ๊ฒฝ์์ ์ฝ๋๋ฅผ ์์ฑํ๊ณ ์คํํด๋ณผ ์ ์๋๋ก AWS Cloud9์ ์ฌ์ฉํ์์ต๋๋ค.
Q. ํ๋ก๊ทธ๋๋ฐ ์ง์์ด ํ์ํ๋์?
ํ๋ก๊ทธ๋๋ฐ์ ๋ํ ์ง์์ด๋ ์ฝ๋ ์์ฑ ๊ฒฝํ์ด ์์ด๋ ๊ด์ฐฎ์ต๋๋ค.
ํ์ต ๋์์
๋๊ตฌ์ผ๊น์?
ํ ๋ผํผ(Terraform)์ ๊ธฐ๋ณธ์ ์ธ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ณ ์ถ์ผ์ ๋ถ
ํ ๋ผํผ(Terraform) ์ฝ๋๋ก AWS ํด๋ผ์ฐ๋ ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ณ ์ถ์ผ์ ๋ถ
์ฝ๋ํ ์ธํ๋ผ(Infrastructure as Code) ๋๋ ๋ฐ๋ธ์ต์ค(DevOps)์ ๊ด์ฌ์ด ์์ผ์ ๋ถ
์ ์ ์ง์,
ํ์ํ ๊น์?
์ฃผ์ AWS ์๋น์ค(EC2, Application Load Balancer, VPC, Auto Scaling)์ ๊ฐ๋ ๋ฐ ์ฌ์ฉ ๋ฐฉ๋ฒ
2,349
๋ช
์๊ฐ์
198
๊ฐ
์๊ฐํ
128
๊ฐ
๋ต๋ณ
4.7
์
๊ฐ์ ํ์
2
๊ฐ
๊ฐ์
Noamd Contents Lab(๋ ธ๋ง๋ ์ฝํ ์ธ ๋ฉ)์ ์ค๋ ๊ธฐ๊ฐ ๋ค์ํ ๋ถ์ผ์์ IT ๊ด๋ จ ์ ๋ฌด๋ค์ ์ํํ๋ฉฐ ์ป์ ๊ฒฝํ๊ณผ ์ง์์ ์ฝํ ์ธ ๋ก ๋ง๋ค์ด ๋ง์ ๋ถ๋ค๊ณผ ๊ณต์ ํ๊ณ ์์ต๋๋ค. :)
์ ์ฒด
35๊ฐ โ (4์๊ฐ 2๋ถ)
ํด๋น ๊ฐ์์์ ์ ๊ณต:
๊ณต๊ฐํ์ง ์๋ ๊ฐ์๋ก ์๊ฐ์ด ์ ํ๋ฉ๋๋ค.