-
[AWS] ์ปดํจํ ์๋น์ค(EC2, Lambda, Elastic Beanstalk, ECS ๋ฑ)๐ปProgramming/AWS 2023. 10. 30. 21:33
AWS๋ ๋ค์ํ ์ปดํจํ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ค.
๐ ์ปดํจํ ์๋น์ค ๋ถ๋ฅ(4๊ฐ์ง ๋ฒ์ฃผ)
๐ ์ต์ ์ ์ปดํจํ ์๋น์ค ์ ํ
- ์ต์ ์ ์ปดํจํ ์๋น์ค ๋๋ ์ฌ์ฉํ๋ ์๋น์ค๋ค์ ์ฌ์ฉ ์ฌ๋ก์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
- ๊ณ ๋ คํด์ผํ ์ธก๋ฉด
- ์ ํ๋ฆฌ์ผ์ด์ ์ค๊ณ
- ์ฌ์ฉ๋ ํจํด
- ๊ด๋ฆฌํ๋ ค๋ ๊ตฌ์ฑ ์ค์
- ์ํคํ
์ฒ์ ์ ํฉํ์ง ์์ ์ปดํจํ
์๋ฃจ์
์ ์ ํ → ์ฑ๋ฅ ํจ์จ์ ์ ํ
- ๋ฐ๋์งํ ์์ ๋จ๊ณ → ์ฌ์ฉ ๊ฐ๋ฅํ ์ปดํจํ ์ต์ ํ์
๐ EC2(Elastic Compute Cloud)
- ์์ ํ๊ณ ํฌ๊ธฐ ์กฐ์ ์ด ๊ฐ๋ฅํ ์ปดํจํ ํ์๋ฅผ ํด๋ผ์ฐ๋์์ ์ ๊ณตํ๋ ์น ์๋น์ค
- ๋ค์ํ ์ข ๋ฅ(Application, Web, Database, Game, …)์ ์๋ฒ๋ฅผ ์ฌ๋ฆด ์ ์๋ค.
- ํด๋ผ์ฐ๋์์ EC2 ์ธ์คํด์ค๋ผ๊ณ ํ๋ ๊ฐ์๋จธ์ ์ ๊ณต
- ๊ฐ ์ธ์คํด์ค์์ ๊ฒ์คํธ ์ด์์ฒด์ (Windows or Linux)๋ฅผ ์๋ฒฝํ๊ฒ ์ ์ด ๊ฐ๋ฅ
- ์ธ์คํด์ค์์ ์คํ๋๋ ์ด์์ฒด์ ์ ๋ํ ๋ชจ๋ ๊ด๋ฆฌ ์ ์ด ๊ถํ์ ๊ณ ๊ฐ์๊ฒ ์์. ๋๋ถ๋ถ์ ์๋ฒ ์ด์์ฒด์ ๊ฐ ์ง์(Windows, Red Hat, Ubuntu, Amazon Linux ๋ฑ)
- ์ ์ธ๊ณ ์ด๋์๋ ๊ฐ์ฉ ์์ญ์์ ๋ชจ๋ ํฌ๊ธฐ์ ์ธ์คํด์ค๋ฅผ ์์ ๊ฐ๋ฅ
- AMI์์ ์ธ์คํด์ค ์์
- ํด๋ฆญ ๋ช๋ฒ์ด๋ ์ฝ๋ ํ์ค๋ก ์ธ์คํด์ค๋ฅผ ์์ํ๊ณ , ๋ช๋ถ๋ง์ ์ค๋น๊ฐ ์๋ฃ
- ์ธ์คํด์ค ์ํ์ผ๋ก ์ ์ก๋๋ ํธ๋ํฝ์ “๋ณด์ ๊ทธ๋ฃน(=๋ฐฉํ๋ฒฝ)”์ ์ฌ์ฉํ์ฌ ์ ์ด
๐EC2์ ํน์ฑ
- ์ด ๋จ์ ์จ๋๋งจ๋ ๊ฐ๊ฒฉ ๋ชจ๋ธ
- ์จ๋๋งจ๋ ๋ชจ๋ธ์์๋ ๊ฐ๊ฒฉ์ด ์ด ๋จ์๋ก ๊ฒฐ์
- ์๋น์ค ์๊ธ์ ๋ฏธ๋ฆฌ ์ฝ์ ํ๊ฑฐ๋ ์ ์ ๊ธ์ด ๋ถํ์
- ๋น ๋ฅธ ๊ตฌ์ถ ์๋์ ํ์ฅ์ฑ
- ๋ช๋ถ์ด๋ฉด ์ ์ธ๊ณ์ ์ธ์คํด์ค ์๋ฐฑ์ฌ๋๋ฅผ ๊ตฌ์ถ ๊ฐ๋ฅ
- ๋ค์ํ ๊ตฌ์ฑ๋ฐฉ๋ฒ ์ง์
- ๋จธ์ ๋ฌ๋, ์น ์๋ฒ, ๊ฒ์ ์๋ฒ, ์ด๋ฏธ์ง ์ฒ๋ฆฌ ๋ฑ ๋ค์ํ ์ฉ๋์ ์ต์ ํ๋ ์๋ฒ ๊ตฌ์ฑ ๊ฐ๋ฅ
- ๋ค์ํ ๊ณผ๊ธ ๋ชจ๋ธ ์ฌ์ฉ ๊ฐ๋ฅ
- ์ฌ๋ฌ AWS ์๋น์ค์ ์ฌ์ฉ ๊ฐ๋ฅ
- ์คํ ์ค์ผ์ผ๋ง: EC2์ ์๋ฅผ ์๋์ผ๋ก ์กฐ์
- Elastic Load Balancer(ELB): ๋ค์ EC2์ ํธ๋ํฝ์ ๋ถ์ฐ
- CloudWatch: CPU ์ฌ์ฉ๋, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ๋ชจ๋ํฐ๋ง
๐ EC2์ ๊ตฌ์ฑ
- ์ธ์คํด์ค
- ํด๋ผ์ฐ๋์์ ์ฌ์ฉํ๋ ๊ฐ์ ์๋ฒ๋ก CPU, ๋ฉ๋ชจ๋ฆฌ, ๊ทธ๋ํฝ ์นด๋ ๋ฑ ์ฐ์ฐ์ ์ํ ํ๋์จ์ด๋ฅผ ๋ด๋น
- EBS(Elastic Block Storage)
- ํด๋ผ์ฐ๋์์ ์ฌ์ฉํ๋ ๊ฐ์ ํ๋๋์คํฌ
- AMI
- EC2 ์ธ์คํด์ค๋ฅผ ์คํํ๊ธฐ ์ํ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ์ด๋ฏธ์ง(ํ ํ๋ฆฟ)
- ๋ณด์ ๊ทธ๋ฃน
- ๊ฐ์์ ๋ฐฉํ๋ฒฝ
๐ EC2 ์ธ์คํด์ค ๊ตฌ์ฑ ๊ณผ์
๐ 1. AMI ์ ํ
- AMI(Amazon Machine Image): EC2๋ฅผ ์์ฑํ๋๋ฐ ์ฌ์ฉ๋๋ ํ ํ๋ฆฟ์ผ๋ก, ์ธ์คํด์ค๋ฅผ ์์ํ๋๋ฐ ํ์ํ SW ๊ตฌ์ฑ(OS, ์๋ฒ ํ๋ก๊ทธ๋จ ์ค์ ๋ฐ ์ฑ)์ด ๋ฏธ๋ฆฌ ๊ตฌ์ฑ๋ ์ด๋ฏธ์ง
- AMI ์ ํ (4๊ฐ์ง ๋ฒ์ฃผ)
- Quick Start: AWS์์ ์ผ๋ฐ์ ์ผ๋ก ์ ๊ณตํ๋ ์ผ๋ฐ์ ์ธ AMI
- MyAMI: ์ฌ์ฉ์๊ฐ ์์ฑํ AMI
- AWS Marketplace: AWS ๋ฐ ์ ๋ขฐํ ์ ์๋ ํ์ฌ AMI
- ์ปค๋ฎค๋ํฐ AMI: ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ๊ณต์ ํ๋ AMI(๋๊ตฌ๋ ๊ฒ์)
๐ 2. ์ธ์คํด์ค ์ ํ ์ ํ
- ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๊ณ ๋ คํ์ฌ ์ ํํ์ฌ์ผํจ
- ์ ํํ๋ ์ธ์คํด์ค ์ ํ์ ๋ฐ๋ผ ๊ฒฐ์ ๋๋ ํญ๋ชฉ
- ๋ฉ๋ชจ๋ฆฌ(RAM)
- ์ฒ๋ฆฌ๋ฅ๋ ฅ(CPU)
- ๋์คํฌ ๊ณต๊ฐ ๋ฐ ๋์คํฌ ์ ํ(์คํ ๋ฆฌ์ง)
- ๋คํธ์ํฌ ์ฑ๋ฅ
- ์ธ์คํด์ค ์ ํ ๋ฒ์ฃผ
- ๋ฒ์ฉ
- ์ปดํจํ ์ต์ ํ
- ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ
- ์คํ ๋ฆฌ์ง ์ต์ ํ
- ๊ฐ์ํ ์ปดํจํ
- ์ธ์คํด์ค ์ ํ์ ํจ๋ฐ๋ฆฌ, ์ธ๋ ๋ฐ ํฌ๊ธฐ ์ ๊ณต
- ์ธ์คํด์ค ์ ํ ์ด๋ฆ
- ์: t3.large
- t: ํจ๋ฐ๋ฆฌ ์ด๋ฆ
- 3: ์ธ์คํด์ค ์ ํ์ ์ธ๋ ๋ฒํธ
- large: ํฌ๊ธฐ
- ์ผ๋ฐ์ ์ผ๋ก ์ธ๋๊ฐ ๋์ ์ ํ์ผ์๋ก ์ธ์คํด์ค๊ฐ ๋ ๊ฐ๋ ฅํ๋ฉฐ ๋ ์ฐ์ํ ๊ฐ๊ฒฉ๋๋น ๊ฐ์น๋ฅผ ์ ๊ณต
- ์ธ์คํด์ค ์ ํ ์ ํ: ์ฌ์ฉ ์ฌ๋ก์ ๋ฐ๋ผ ์ ํ
๐3. ๋คํธ์ํฌ ์ค์ ์ง์
- ์ธ์คํด์ค ๋ฐฐํฌ ์์น: VPC ๋ฐ ์๋ธ๋ท(์ ํ) ํ์ธ(VPC๋ฅผ ์ง์ ํด์ฃผ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ VPC์ ๋ฐฐ์น)
- ํผ๋ธ๋ฆญ IP ์ฃผ์๋ฅผ ์๋์ผ๋ก ํ ๋นํ ์ง ์ฌ๋ถ
- ์ธํฐ๋ท์์ ์ก์ธ์คํ ์ ์๋๋ก ํ ์ง ์ฌ๋ถ
๐ 4. IAM ์ญํ ์ฐ๊ฒฐ(์ ํ)
- EC2 ์ธ์คํด์ค์ ์ํํธ์จ์ด๊ฐ ๋ค๋ฅธ AWS ์๋น์ค์ ์ํธ์์ฉํด์ผ ํ๋์ง์ ์ฌ๋ถ
- ์ํธ ์์ฉํด์ผ ํ๋ ๊ฒฝ์ฐ ์ ์ ํ IAM ์ญํ ์ฐ๊ฒฐ
- AWS IAM์ ์ฌ์ฉํ๋ฉด AWS์ ์๋น์ค ๋ฐ ๋ฆฌ์์ค์ ์ก์ธ์คํ ์ ์๋ ์ฃผ์ฒด๋ฅผ ์ง์ ํ๊ณ , ์ธ๋ถํ๋ ๊ถํ์ ์ค์์์ ๊ด๋ฆฌํ๋ฉฐ ์ก์ธ์ค ๊ถํ์ ๋ถ์ํ์ฌ “AWS ์ ์ฒด์ ๊ถํ์ ์ธ๋ถํ”
- EC2 ์ธ์คํด์ค์ ์ฐ๊ฒฐ๋ AWS IAM ์ญํ ์ ์ธ์คํด์ค ํ๋กํ์ผ์ ๋ณด๊ด
๐ 5. ์ฌ์ฉ์ ๋ฐ์ดํฐ ์คํฌ๋ฆฝํธ(์ ํ)
- ์ธ์คํด์ค ์์ ์ ์ฌ์ฉ์ ๋ฐ์ดํฐ ์คํฌ๋ฆฝํธ ์ง์ (์ ํ)
- ์ฌ์ฉ์ ๋ฐ์ดํฐ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ธ์คํด์ค์ ๋ฐํ์ ํ๊ฒฝ์ ์ฌ์ฉ์ ์ง์
- ์ธ์คํด์ค๊ฐ ์ฒ์ ์์๋ ๋ ์คํฌ๋ฆฝํธ๊ฐ ์คํ
- ์ ๋ต์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ: ์๋ฅผ ๋ค์ด ๊ตฌ์ถ ๋ฐ ์ ์ง ๊ด๋ฆฌํ๋ ์ฌ์ฉ์ ์ง์ AMI์ ์๋ฅผ ์ค์ผ ์ ์์.
๐ 6. ์คํ ๋ฆฌ์ง ์ง์
- ๋ฃจํธ ๋ณผ๋ฅจ ๊ตฌ์ฑ: ๊ฒ์คํธ ์ด์์ฒด์ (Window, Linux)๊ฐ ์ค์น๋๋ ์์น
- ์ถ๊ฐ ์คํ ๋ฆฌ์ง ๋ณผ๋ฅจ ์ฐ๊ฒฐ(์ ํ)
- ๊ฐ ๋ณผ๋ฅจ์ ๋ํด ๋ค์ ์ง์
- ๋์คํฌ ํฌ๊ธฐ(GB)
- ๋ณผ๋ฅจ ์ ํ: SSD or HDD
- ์ธ์คํด์ค ์ข ๋ฃ ์ ๋ณผ๋ฅจ ์ญ์ ์ฌ๋ถ(์๋ฒ ์ข ๋ฃ์ ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ๋ ๊ฐ์ด ์ญ์ ํ ๊ฒ์ธ์ง)
- ์ํธํ(EBS ์์ฒด๋ฅผ ์ํธํ ์ํค๋ ๊ฒ → ํดํน๋นํด๋ ์์ . ๋ด์ฉ๋ฌผ ๋ฐ์ดํฐ๊ฐ ์ํธํ ๋๋ ๊ฒ์ด ์๋ ํ๋๊ฐ ์ํธํ) ์ฌ์ฉ ์ฌ๋ถ
- EC2 ์คํ ๋ฆฌ์ง ์ต์
- EBS: ๋ด๊ตฌ์ฑ์ด ๋ฐ์ด๋ “๋ธ๋ก”์์ค ์คํ ๋ฆฌ์ง ๋ณผ๋ฅจ. ์ธ์คํด์ค๋ฅผ ์ค์งํ ํ ๋ค์ ์์ํ ์ ์์ผ๋ฉฐ ๋ฐ์ดํฐ๊ฐ ๊ทธ๋๋ก ์ ์ง. ๋ฃจํธ ๋ณผ๋ฅจ ์ ์ฉ.
- Amazon EC2 ์ธ์คํด์ค ์คํ ์ด: ์คํ ๋ฆฌ์ง๋ EC2 ์ธ์คํด์ค๊ฐ ์คํ ์ค์ธ ํธ์คํธ ์ปดํจํฐ์ ์ฐ๊ฒฐ๋ ๋์คํฌ์์ ์ ๊ณต. ์ธ์คํด์ค๊ฐ ์ค์ง๋๋ฉด ์ฌ๊ธฐ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ญ์ . ๋ฒํผ ๋ฐ ์บ์์ ๊ฐ์ด ์์ฃผ ๋ณ๊ฒฝ๋๋ ์ ๋ณด๋ฅผ ์์๋ก ์ ์ฅํด์ผ ํ๋ ๊ฒฝ์ฐ์ ํจ๊ณผ์ . ๋ฃจํธ ๋ณผ๋ฅจ ์ ์ฉ.
- ๊ธฐํ ์คํ ๋ฆฌ์ง ์ต์
(๋ฃจํธ ๋ณผ๋ฅจ ๋ฏธ์ ์ฉ)
- Amazon Elastic File System(Amazon EFS) : ํ์ผ ์์คํ ํ์ฌ
- Amazon Simple Storage Service(Amazon S3): Object Storage Service
๐ 7. ํ๊ทธ ์ถ๊ฐ
- ํ๊ทธ๋ AWS ๋ฆฌ์์ค์ ํ ๋นํ ์ ์๋ ๋ ์ด๋ธ(๋ฉ๋ชจ๊ธฐ๋ฅ๊ฐ์๋๋)
- ํค(key)์ ๊ฐ(value)์ผ๋ก ๊ตฌ์ฑ
- ์ธ์คํด์ค๋ฅผ ์ฌ๋ฌ๊ฐ ์ฌ์ฉํ ๊ฒฝ์ฐ ์์๋ณด๊ธฐ ์ฝ๊ฒ ๋ณ๋ช ์ผ๋ก ๊ตฌ๋ถํ๊ธฐ ์ํ ๊ธฐ๋ฅ
- ํ๊น ์ EC2 ์ธ์คํด์ค์ “๋ฉํ๋ฐ์ดํฐ”๋ฅผ ์ฐ๊ฒฐํ ์ ์๋ ๋ฐฉ๋ฒ
- ํ๊น ์ ์ ์ฌ์ ์ด์ - ํํฐ๋ง, ์๋ํ, ๋น์ฉ ํ ๋น ๋ฐ ์ก์ธ์ค ์ ์ด
๐ 8. ๋ณด์ ๊ทธ๋ฃน ์ค์ → ๋ฐฉํ๋ฒฝ์ ์ค์ ํ๋ ๋จ๊ณ
- ๋ณด์ ๊ทธ๋ฃน์ ์ธ์คํด์ค์ ๋ํ ํธ๋ํฝ์ ์ ์ดํ๋ ๋ฐฉํ๋ฒฝ ๊ท์น ์ธํธ: ์ธ์คํด์ค์ ๊ฒ์คํธ OS ์ธ๋ถ์ ์กด์ฌ
- ์ถ๋ฐ์ง ๋ฐ ๋คํธ์ํฌ ํต์ ์ ์ฌ์ฉํ ์ ์๋ ํฌํธ๋ฅผ ์ง์ ํ๋ ๊ท์น ์์ฑ
- ํฌํธ ๋ฒํธ์ TCP, UDP, ICMP ๋ฑ์ ํ๋กํ ์ฝ ์ง์
- ๊ท์น์ ์ฌ์ฉํ์ฌ ํ์ฉํ ์ถ๋ฐ์ง(ex: IP ์ฃผ์ ๋๋ ๋ค๋ฅธ ๋ณด์ ๊ทธ๋ฃน ์ง์ )
๐ 9. ํคํ์ด ์๋ณ ๋๋ ์์ฑ
- ํคํ์ด: ์ธ์คํด์ค์ ์ ์ํ๊ธฐ ์ํ ๋ฌผ๋ฆฌํค
- ์ธ์คํด์ค ์์ ์ ๊ธฐ์กด ํคํ์ด๋ฅผ ์ง์ ํ๊ฑฐ๋, ์๋ก์ด ํคํ์ด ์์ฑ. ์ผ์ข ์ ๋น๋ฐ๋ฒํธ.
- ํคํ์ด์ ๊ตฌ์ฑ
- AWS์ ์ ์ฅํ๋ ํผ๋ธ๋ฆญ ํค
- ์ฌ์ฉ์๊ฐ ์ ์ฅํ๋ ํ๋ผ์ด๋น ํค ํ์ผ
- Windows AMI์ ๊ฒฝ์ฐ: ํ๋ผ์ด๋น ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ธ์คํด์ค์ ๋ก๊ทธ์ธํ๋๋ฐ ํ์ํ ๊ด๋ฆฌ์ ์ํธ ํ๋
- Linux AMI์ ๊ฒฝ์ฐ: ํ๋ผ์ด๋น ํค๋ฅผ ์ฌ์ฉํ์ฌ SSH๋ฅผ ํตํด ์ธ์คํด์ค์ ์์ ํ๊ฒ ์ฐ๊ฒฐ
- pem ํ์ผ์ด ์์ด์ผ์ง๋ง ์ธ์คํด์ค์ ์ ๊ทผ์ด ๊ฐ๋ฅํ ์๋ฆฌ
๐ ํ๋ ฅ์ IP ์ฃผ์ ์ฌ์ฉ ๊ณ ๋ ค
- ์ธ์คํด์ค์์ ์ค์ ๋ ๊ณต์ธ IP๋ ์๋ฒ๋ฅผ ํค๊ณ ๋๋๋ง๋ค ์๋ก์ด ๊ฒ์ผ๋ก ๊ฐฑ์ ๋๊ธฐ์ ์ด๋ฅผ ํ๋์ IP๋ก ๊ณ ์ ํ๊ธฐ ์ํด์ ํ๋ ฅ์ IP๋ฅผ ์ฌ์ฉ. ์ฌ์ฉํ์ง ์๋๋ค๋ฉด ์ธ์คํด์ค๋ฅผ ํค๊ณ ๋๋๋ง๋ค ์์ดํผ๊ฐ ๋ฐ๋.
- ํ๋ ฅ์ IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ธ์คํด์ค๋ฅผ ์ฌ๋ถํ ํด๋ IP ์ฃผ์ ๋๋ DNS ํธ์คํธ ์ด๋ฆ์ด ๋ณ๊ฒฝ๋์ง ์๋๋ค.
- ์๊ตฌ ๊ณต์ธ IP ์ฃผ์๊ฐ ํ์ํ ๊ฒฝ์ฐ: ํ๋ ฅ์ IP ์ฃผ์๋ฅผ ์ธ์คํด์ค์ ์ฐ๊ฒฐ
- ์ธ์คํด์ค๊ฐ ์ค์ง๋์๋ค๊ฐ ๋ค์ ์์๋ ๊ฒฝ์ฐ
- ๊ณต์ธ IPv4 ์ฃผ์์ ์ธ๋ถ DNS ํธ์คํธ ์ด๋ฆ ๋ณ๊ฒฝ
- ์ฌ์ค IPv4 ์ฃผ์์ ๋ด๋ถ DNS ํธ์คํธ ์ด๋ฆ์ ๋ณ๊ฒฝ x
- ํ๋ ฅ์ ์ฃผ์์ ํน์ฑ
- ํ์์ ๋ฐ๋ผ ๋ฆฌ์ ๋ด ์ธ์คํด์ค์ ์ฐ๊ฒฐ ๊ฐ๋ฅ
- ๋ฆด๋ฆฌ์ค๋ฅผ ์ ํํ ๋๊น์ง ๊ณ์ ์ ํ ๋น๋ ์ํ๋ก ์ ์ง
๐ CloudWatch
- ์ธ์คํด์ค์ ๋ชจ๋ํฐ๋ง์ ์ํ ์๋น์ค
- ์ค์๊ฐ์ ๊ฐ๊น์ด ์งํ ์ ๊ณต
- Amazon EC2 ์ฝ์ ๋ชจ๋ํฐ๋ง ํญ์์ ๋ณผ ์ ์๋ ์ฐจํธ ์ ๊ณต
- 15๊ฐ์ ๋์์ ๊ธฐ๋ก ๋ฐ์ดํฐ ์ ์ง
- ๊ธฐ๋ณธ ๋ชจ๋ํฐ๋ง: ๊ธฐ๋ณธ ๊ธฐ๋ฅ, ์ถ๊ฐ ๋น์ฉ x, 5๋ถ๋ง๋ค CloudWatch๋ก ์งํ ๋ฐ์ดํฐ ์ ์ก
- ์ธ๋ถ ๋ชจ๋ํฐ๋ง: ๋ฏธ๋ฆฌ ์ ํํ 7๊ฐ์ ์งํ์ ๋ํ ๊ณ ์ ์๋ณ ์๊ธ. 1๋ถ๋ง๋ค ์งํ ๋ฐ์ดํฐ ์ ์ก.
๐ EC2 ์๊ธ ๋ชจ๋ธ
๐ EC2 ์๊ธ ๋ชจ๋ธ
- ์จ๋๋งจ๋ ์ธ์คํด์ค: ์๊ฐ๋น ์๊ธ. ์ฅ๊ธฐ ๊ณ์ฝ ๋ถํ์. AWS ํ๋ฆฌํฐ์ด ์ด์ฉ ์๊ฒฉ.
- ์ ์ฉ ํธ์คํธ: ๊ณ ๊ฐ์ ์ํด EC2 ์ธ์คํด์ค ์ฉ๋์ ์์ ํ ์ ์ฉ์ผ๋ก ์ฌ์ฉํ๋ ๋ฌผ๋ฆฌ์ ์๋ฒ
- ์ ์ฉ ์ธ์คํด์ค: ๋จ์ผ ๊ณ ๊ฐ์ ์ํ ์ ์ฉ ํ๋์จ์ด์ VPC์์ ์คํ๋๋ ์ธ์คํด์ค.
- ์์ฝ ์ธ์คํด์ค: ์์ฝํ๋ ์ธ์คํด์ค์ ๋ํ ์ ์ฒด ๊ฒฐ์ , ๋ถ๋ถ ๊ฒฐ์ , ๋๋ ์ ๊ฒฐ์ ์๊ธ ์๋ ๊ฒฐ์ . ํด๋น ์ธ์คํด์ค์ ๋ํ ์๊ฐ๋น ์๊ธ ํ ์ธ. 1๋ ๋๋ 3๋ ์ฝ์ (์ฅ๊ธฐ์ฝ์ )
- ์ ๊ธฐ ์์ฝ ์ธ์คํด์ค: ์ฌ์ฉ์๊ฐ ์ง์ ํ ๋ฐ๋ณต ์ผ์ ์ ๋ฐ๋ผ ํญ์ ์ฌ์ฉํ ์ ์๋ ์์ฝ ์ฉ๋ ๊ตฌ๋งค. 1๋ ์ฝ์ .
- ์คํ ์ธ์คํด์ค: ์ฌ์ฉ ๊ฐ๋ฅํ ์ํ์ด๊ณ ์ ์ฐฐ ๊ฐ๊ฒฉ์ด ์คํ ์ธ์คํด์ค ๊ฐ๊ฒฉ๋ณด๋ค ๋์ผ๋ฉด ์ธ์คํด์ค๊ฐ ์คํ๋จ(๊ฒฝ๋งค). AWS๋ 2๋ถ ์ ์ ์๋ฆผ์ผ๋ก์จ ์คํ ์ธ์คํด์ค๋ฅผ ์ค๋จ ๊ฐ๋ฅ. ์ค๋จ ์ต์ ์๋ ์ข ๋ฃ, ์ค์ง, ์ต๋ ์ ์ ๋ชจ๋๊ฐ ํฌํจ. ์จ๋๋งจ๋ ์ธ์คํด์ค์ ๋นํด ์๊ธ์ด ํจ์ฌ ์ ๋ ดํ ์ ์์. ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์๋ ์์ ์ ์ ์ฐํ๊ฒ ์ ํํ ์ ์๋ ๊ฒฝ์ฐ์ ์ ํฉ.
๐ EC2 ์๊ธ ๋ชจ๋ธ์ ์ฌ์ฉ ์ฌ๋ก ๋ฐ ์ด์
๐ ๋น์ฉ ์ต์ ํ์ 4๊ฐ์ง ์์น
๐ 1. ์ ์ ํ ํฌ๊ธฐ
- ํ์์ ๋ฐ๋ผ ์ธ์คํด์ค ํ๋ก๋น์ ๋
- CPU, ๋ฉ๋ชจ๋ฆฌ, ์คํ ๋ฆฌ์ง ๋ฐ ๋คํธ์ํฌ ์ฒ๋ฆฌ๋
- ์ฌ์ฉ ์ฌ๋ก์ ์ ํฉํ ์ธ์คํด์ค ์ ํ ์ ํ
- Amazon CloudWatch ์งํ ์ฌ์ฉ
- ์ธ์คํด์ค์ ์ ํด ์ํ ์ ๋. ์ ํด ์ํ๊ฐ ๋๋ ์์ .
- ์ธ์คํด์ค ์ถ์
- ๋ชจ๋ฒ ์ฌ๋ก: ์ ์ ํ ํฌ๊ธฐ๋ก ์กฐ์ ํ ํ ์์ฝ
๐ 2. ํ๋ ฅ์ฑ ์ฆ๋
- ์์ฃผ ์ฌ์ฉ๋์ง ์๋ EBS ์ธ์คํด์ค๋ฅผ ์ค์ง ๋๋ ์ต๋ ์ ์ ๋ชจ๋๋ก ์ ํ(์: ํ๋ก๋์ ์ด์ธ์ ๊ฐ๋ฐ ๋๋ ํ ์คํธ ์ธ์คํด์ค)
- ์ฌ์ฉ๋์ ๋ฐ๋ผ ์๊ตฌ ์ฌํญ์ ์ถ์กฑํ ์ ์๋๋ก ์๋ ์กฐ์ ์ฌ์ฉ → ์๋ํ๋ ์๊ฐ ๊ธฐ๋ฐ ํ๋ ฅ์ฑ
๐ 3. ์ต์ ์ ์๊ธ ๋ชจ๋ธ
- ์ฌ์ฉ ์ฌ๋ก์ ์ ํฉํ ์๊ธ ๋ชจ๋ธ ํ์ฉ ← ์ฌ์ฉ ํจํด ๊ณ ๋ ค
- ๊ตฌ๋งค ์ ํ ์ต์ ํ ๋ฐ ์กฐํฉ
- ์: ๋ค์ํ ์ํฌ๋ก๋์ ์จ๋๋งจ๋ ์ธ์คํด์ค ๋ฐ ์คํ ์ธ์คํด์ค ์ฌ์ฉ / ์์ธก ๊ฐ๋ฅํ ์ธ์คํด์ค์ ์์ฝ ์ธ์คํด์ค ์ฌ์ฉ
- ์๋ฒ๋ฆฌ์ค ์๋ฃจ์ (AWS Lambda) ๊ณ ๋ ค
๐ 4. ์คํ ๋ฆฌ์ง ์ ํ ์ต์ ํ
- ์คํ ๋ฆฌ์ง ์ฑ๋ฅ ๋ฐ ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ฉด์ ๋น์ฉ ์ ๊ฐ
- EBS ๋ณผ๋ฅจ ํฌ๊ธฐ ์กฐ์
- EBS ๋ณผ๋ฅจ ํฌ๊ธฐ ๋ณ๊ฒฝ(๋ ์ ๋ ดํ ์คํ ๋ฆฌ์ง๋ก ์ฑ๋ฅ ์๊ตฌ์ฌํญ์ ์ถฉ์กฑ์ํฌ ์ ์๋์ง ํ์ธ, st1 ์คํ ๋ฆฌ์ง๋ gp2์คํ ๋ฆฌ์ง ์ต์ ๋ณด๋ค ์ ๋ฐ์ ๋น์ฉ)
- ๋์ด์ ํ์ํ์ง ์์ EBS ์ค๋ ์ท(Amazon S3์ EBS ๋ณผ๋ฅจ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐฑ์ ํ๋ ๊ธฐ๋ฅ. ์ค๋ ์ท์ ๋ง์ง๋ง ์ค๋ ์ท ์ดํ ๋ณ๊ฒฝ๋ ๋๋ฐ์ด์ค์ ๋ธ๋ก๋ง ์ ์ฅ.).
- ํน์ ๋ฐ์ดํฐ ์ ํ์ ๊ฐ์ฅ ์ ํฉํ ๋์ ์์น ์๋ณ
- ์ธ์คํด์ค๊ฐ EBS์ ์์ฃผํด์ผ ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ธ์ง?
- ์๋ช ์ฃผ๊ธฐ ์ ์ฑ ์ด ํฌํจ๋ S3 ์คํ ๋ฆฌ์ง ์ต์ ์ ํตํด ๋น์ฉ ์ ๊ฐ
๐ ์ปจํ ์ด๋ ๊ธฐ๋ณธ ์ฌํญ
- ์ปจํ ์ด๋๋ ์ด์์ฒด์ ๋ฅผ ๊ฐ์ํํ๋ ๋ฐฉ์ ์ค์ ํ๋
- ์ด์
- ๋ฐ๋ณต ๊ฐ๋ฅ
- ๋ ๋ฆฝํ ์คํ ํ๊ฒฝ
- ์ํํธ์จ์ด๊ฐ ์๋ก ๋ค๋ฅธ ํ๊ฒฝ์์ ๋์ผํ๊ฒ ์คํ๋จ(๊ฐ๋ฐ์์ ๋ ธํธ๋ถ, ํ ์คํธ, ํ๋ก๋์ )
- ๊ฐ์ ๋จธ์ ๋ณด๋ค ๋น ๋ฅด๊ฒ ์์, ์ค์ง ๋๋ ์ข ๋ฃํ ์ ์์(๊ฐ์๋จธ์ ๋ณด๋ค๋ OS๊ฐ ๋ light ํ๊ธฐ ๋๋ฌธ)
- ์ปจํ ์ด๋๋ ๊ฐ์๋จธ์ ๋ณด๋ค๋ ์์ผ๋ฉฐ ์ ์ฒด ์ด์์ฒด์ ๋ฅผ ํฌํจํ์ง๋ ์์.
- ์ปจํ ์ด๋๋ ๊ฐ์ํ ๋ ์ด์์ฒด์ ๋ฅผ ๊ณต์ ํ๋ฉฐ ๋ฆฌ์์ค๊ฐ ๊ฒฉ๋ฆฌ๋ ํ๋ก์ธ์ค๋ก ์คํ
๐ Docker
- ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ๊ตฌ์ถ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์๋ ์ํํธ์จ์ด
- Docker์์ ์ปจํ
์ด๋๋ฅผ ์คํ
- ์ปจํ ์ด๋๋ ์ด๋ฏธ์ง ๋ผ๊ณ ํ๋ ํ ํ๋ฆฟ์์ ์์ฑ
- ์ปจํ ์ด๋์๋ ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋๋ฐ ํ์ํ ๋ชจ๋ ํญ๋ชฉ์ด ์์.
- Docker๋ ์ปจํ ์ด๋๋ฅผ ํธ์คํ ํ ๊ฐ ์๋ฒ์ ์ค์น. ์ปจํ ์ด๋๋ฅผ ๊ตฌ์ถ, ์์ ๋๋ ์ค์งํ๋๋ฐ ์ฌ์ฉํ ์ ์๋ ๊ฐ๋จํ ๋ช ๋ น์ ์ ๊ณต.
๐ ์ปจํ ์ด๋์ ๊ฐ์ ๋จธ์ (VM) ๋น๊ต
- ๋ชจ๋ ์ปจํ ์ด๋๋ ํ๋์ EC2 ์ธ์คํด์ค์์ ์คํ
- Docker ์์ง์ ์ปจํ ์ด๋์ Linux ๊ฒ์คํธ OS์ ์ํธ์์ฉ ๋ฐฉ์์ ๊ด๋ฆฌํ๋ ์ญํ
- ํ์ดํผ๋ฐ์ด์ : ๋ค์์ ์ด์์ฒด์ ๋ฅผ ๋์์ ์คํํ๊ธฐ ์ํ ๋ ผ๋ฆฌ์ ์ธ ํ๋ซํผ
- ๊ฐ์๋จธ์ ์ ๊ฒ์คํธ OS๊ฐ ํ๊ฐ์ด์ง๋ง, ์ปจํ ์ด๋๋ ๊ฐ๊ฐ์ ์ฑ๋ง๋ค ๊ฐ๊ฐ์ ๊ฒ์คํธ OS๊ฐ ์กด์ฌ
๐ Amazon Elastic Container Service(Amazon ECS)
- Amazon Elastic Container Service(Amazon ECS): ํ์ฅ์ฑ๊ณผ ์๋๊ฐ ๋ฐ์ด๋ ์ปจํ ์ด๋ ๊ด๋ฆฌ ์๋น์ค
- ์ฃผ์ ์ด์
- Docker ์ปจํ ์ด๋์ ์คํ์ ์ค์ผ์คํธ๋ ์ด์
- ์ธํ๋ผ ๊ตฌ์ถ์ ๋ณต์ก์ฑ ํด์
- EC2 ์๋น์ค ์ฌ์ฉ์์๊ฒ ์ต์ํ ๊ธฐ๋ฅ๊ณผ ํตํฉ(EC2์์ ์ฐ๊ณ)
- Elastic Load Balancing
- Amazon EC2 ๋ณด์ ๊ทธ๋ฃน
- Amazon EBS ๋ณผ๋ฅจ
- IAM ์ญํ
- Amazon ECS๋ ์ปจํ
์ด๋๋ฅผ ์ค์ผ์คํธ๋ ์ด์
ํจ.
- ํด๋ฌ์คํฐ(์ธ์คํด์ค์ ์งํฉ)์์ ์คํํ ๋ค์์ ์์ ์ ์ง์ ํ๋ฉด, Amazon ECS ์ค์ผ์ค๋ฌ๊ฐ ํด๋ฌ์คํฐ ๋ด์ ์ด๋ฌํ ์์ ์ ๋ฐฐ์น
๐ Amazon Elastic Container Registry(Amazon ECR)
- ๊ฐ๋ฐ์๊ฐ Docker ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ฅผ ์์ฝ๊ฒ ์ ์ฅ, ๊ด๋ฆฌ ๋ฐ ๋ฐฐํฌํ ์ ์๊ฒ ํด์ฃผ๋ ์์ ๊ด๋ฆฌํ Docker ์ปจํ ์ด๋ ๋ ์ง์คํธ๋ฆฌ.
- Amazon ECS ํตํฉ
- Docker ์ง์
- Team ํ์
- ์ก์ธ์ค ์ ์ด
- ํ์ฌ ํตํฉ
๐ AWS Lambda
- Lambda: ์๋ฒ๋ฆฌ์ค ์ปดํจํ ์๋น์ค(์ด๋ฒคํธ ์ค์ฌ) → ์๋ฒ ์์ด ์ฝ๋ ์คํ → ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์๋ฒ์ ์ ์ํ์ง ์๊ณ ์ฝ๋๊ฐ ์คํ
- ๋์ ๊ณผ์ : ์ฝ๋ ์ ๋ก๋ → ์คํํ๋ ์ฝ๋๋ Lambda ํจ์. ์ผ์ ์ ๋ฐ๋ผ ์ด๋ฒคํธ์ ๋ํ ์๋ต์ผ๋ก ์ฝ๋ ์คํ. → ์ฝ๋๋ ํธ๋ฆฌ๊ฑฐ๋ ๊ฒฝ์ฐ์๋ง ์คํ → ์ฌ์ฉํ ์ปดํจํ ์๊ฐ์ ๋ํด์๋ง ๋น์ฉ ์ง๋ถ
- ๊ณ ๊ฐ์ ์คํํ๋ ค๊ณ ํ๋ ์ฝ๋๋ฅผ ํฌํจํ๋ AWS ๋ฆฌ์์ค์ธ Lambda ํจ์๋ฅผ ์์ฑํ ๋ค์ ์ผ์ ์ ๋ฐ๋ผ ๋๋ ์ด๋ฒคํธ์ ๋ํ ์๋ต์ผ๋ก Lambda ํจ์๊ฐ ํธ๋ฆฌ๊ฑฐ ๋ ์ ์๋๋ก ์ค์
- Lambda์ ์ด์
- ์ฌ๋ฌ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(ex. Java, Python, C#, Go, PowerShell, Node.js …) ์ง์ → ์๋ก์ด ์ธ์ด, ๋๊ตฌ, ํ๋ ์์ํฌ ๋ฐฐ์ธ ํ์ ์์
- ์์ ํ ์๋ํ๋ ๊ด๋ฆฌ
- ๋ด๊ฒฐํจ์ฑ ๊ธฐ๋ณธ ์ ๊ณต
- ์ฌ๋ฌ ํจ์์ ์ค์ผ์คํธ๋ ์ด์ ์ง์
- ์ฌ์ฉ๋์ ๋ฐ๋ผ ์๊ธ ์ง๋ถ
- Lambda ์ด๋ฒคํธ ์์ค(S3, DynamoDB, SNS, SQS, API Gateway, Application Load Balancer…)
- ์ด๋ฒคํธ ์์ค → Lambda ํจ์ → AWS Lambda → ์ฝ๋ ์คํ(ํธ๋ฆฌ๊ฑฐ๋ ๊ฒฝ์ฐ) or CloudWatch(๋ก๊น , ๋ชจ๋ํฐ๋ง ์งํ)
- Lambda ํจ์๋ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์์ฑํ๋ ์ฌ์ฉ์ ์ง์ ์ฝ๋์ด๋ฉฐ Lambda๋ ์ฌ์ฉ์ ๋์ Lambda ํจ์๋ฅผ ์คํ
- Lambda ํจ์ ๊ตฌ์ฑ
- ํจ์ ์ด๋ฆ ์ง์
- ๋ฐํ์ ํ๊ฒฝ ์ง์ (Python, Node.js…)
- ์คํ ์ญํ : ํจ์์ IAM ์ญํ ๋ถ์ฌ
- ํจ์ ๊ตฌ์ฑ: ํธ๋ฆฌ๊ฑฐ ์ถ๊ฐ ํฌํจ
- “์์ฝ ๊ธฐ๋ฐ” Lambda ํจ์ ์์
- Amazon EC2 ์ฌ์ฉ๋์ ์ค์ฌ์ผ ํ๋ ์ํฉ ๊ฐ์
- ๋ฏธ๋ฆฌ ์ ํด์ง ์๊ฐ์ ์ธ์คํด์ค๋ฅผ ์ค์งํ๊ธฐ๋ก ๊ฒฐ์ (์ผ๊ฐ์ ์ค์งํ๊ณ ๋ค์ ์์ ์ด ์์๋๊ธฐ ์ ์์นจ์ ์ธ์คํด์ค ๋ค์ ์์)
- Lambda์ CloudWatch ์ด๋ฒคํธ๋ฅผ ๊ตฌ์ฑํ์ฌ ์ด๋ฌํ ์์ ์ ์๋์ผ๋ก ์ํ
- “์ด๋ฒคํธ ๊ธฐ๋ฐ” Lambda ํจ์ ์์ - ์ธ๋ค์ผ ์ด๋ฏธ์ง ์์ฑ
- S3 ๋ฒํท์ ์ ๋ก๋ ๋๋ ๊ฐ ์ด๋ฏธ์ง ํ์ผ์ ๋ํ ์ธ๋ค์ผ ์์ฑ
- ์๋ฃจ์ ์ ๊ตฌ์ถํ๋ ค๋ฉด ๊ฐ์ฒด๊ฐ ์ ๋ก๋ ๋ ๋ S3์ ์ก์ธ์คํ๊ณ ํธ์ถ์ ์ํํ๋ Lambda ํจ์๋ฅผ ์์ฑ → ์ด๋ฒคํธ ๊ธฐ๋ฐ
- ์ด Lambda ํจ์๋ ์์ค ๋ฒํท์์ ์ด๋ฏธ์ง ๊ฐ์ฒด๋ฅผ ์ฝ๊ณ ์ธ๋ค์ผ ์ด๋ฏธ์ง์ ๋์ ๋ฒํท์ ์์ฑ
- Lambda ์ ํ: Lambda ํจ์๋ฅผ ์คํํ๊ณ ์ ์ฅํ ๋ ์ฌ์ฉํ ์ ์๋ ์ปดํจํ
๋ฐ ์คํ ๋ฆฌ์ง ๋ฆฌ์์ค์ ๋ํ ์ ํ
- ๋ฆฌ์ ๋น ์ํํธ์จ์ด ์ ํ: ๋์์คํ = 1000, ํจ์ ๋ฐ ๊ณ์ธต ์คํ ๋ฆฌ์ง = 75GB
- ๊ฐ๋ณ ํจ์์ ๋ํ ํ๋ ์ ํ: ์ต๋ ํจ์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น = 10240MB, ํจ์ ์ ํ ์๊ฐ=15๋ถ, ๋ฐฐํฌ ํจํค์ง ํฌ๊ธฐ = ์์ถ ํด์ ์ 250MB(๊ณ์ธต ํฌํจ)
๐ AWS Elastic Beanstalk
- AWS Elastic Beanstalk: ์ฑ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ์์ ๋ฐ ์คํํ ์ ์๋ ๋ฐฉ๋ฒ
- ๋ค์์ ์๋์ผ๋ก ์ฒ๋ฆฌํ๋ ๊ด๋ฆฌํ ์๋น์ค
- ์ธํ๋ผ ํ๋ก๋น์ ๋ ๋ฐ ๊ตฌ์ฑ
- ๋ฐฐํฌ
- ๋ก๋๋ฐธ๋ฐ์ฑ
- ์๋ ์กฐ์
- ์ํ ๋ชจ๋ํฐ๋ง
- ๋ถ์ ๋ฐ ๋๋ฒ๊น
- ๋ก๊น
- Elastic Beanstalk์ ๋ํ ์ถ๊ฐ ์๊ธ ์์ → ์ฌ์ฉํ ๊ธฐ๋ณธ ๋ฆฌ์์ค์ ๋ํด์๋ง ์๊ธ ์ง๋ถ
๐ Elastic Beanstalk ๋ฐฐํฌ
- ๊ณต์ฉ ํ๋ซํผ์ฉ์ผ๋ก ์์ฑ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ง์ → Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker
- ์ฌ์ฉ์๊ฐ ์ฝ๋ ์ ๋ก๋
- ์ฌ์ฉ์๊ฐ ์ฝ๋ ์
๋ก๋
- Elastic Beanstalk๊ฐ ๋ฐฐํฌ๋ฅผ ์๋์ผ๋ก ์ฒ๋ฆฌ
- Apache, NGINX, Passenger Puma, ๋ฐ Microsoft Internet Information Services(IIS) ์๋ฒ์ ๋ฐฐํฌ
๐ Elastic Beanstalk์ ์ด์
- ๋น ๋ฅด๊ณ ๊ฐ๋จํ๊ฒ ์ฌ์ฉ ์์ → ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ ์ธํ๋ผ์ ๋ํด ์์ธํ ์์ง ๋ชปํด๋ AWS ํด๋ผ์ฐ๋์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ๋ฐฐํฌํ๊ณ ๊ด๋ฆฌ
- ๊ฐ๋ฐ์ ์์ฐ์ฑ ์ฆ๊ฐ ← ์ ํ ๋๋ ์ ์ด์ ๋ํ ์ ํ ์์ด ๊ด๋ฆฌ ๋ณต์ก์ฑ์ ๊ฐ์, ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ก๋ํ๊ธฐ๋ง ํ๋ฉด Elastic Beanstalk์์ ์ฉ๋ ํ๋ก๋น์ ๋, ๋ก๋ ๋ฐธ๋ฐ์ฑ, ์กฐ์ , ์ํ ๋ชจ๋ํฐ๋ง์ ๋ํ ์ธ๋ถ ์ ๋ณด๋ฅผ ์๋์ผ๋ก ์ฒ๋ฆฌ
- ํ์ฅ์ ์ด๋ ค์
- ์๋ฒฝํ ๋ฆฌ์์ค ์ ์ด
'๐ปProgramming > AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ