AWS EC2์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ํธ์คํ

AWS ํ๊ฒฝ์์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ ํต์ ์ธ ์น ์ฌ์ดํธ์ด๊ฑฐ๋ API ํ๋ก์ ํธ์ผ ์ ์์ต๋๋ค. ๋ ์ ํ ๋ชจ๋ ์ดํ๋ถํฐ "์น ์ ํ๋ฆฌ์ผ์ด์
"(web app)์ผ๋ก ์ง์นญ๋ฉ๋๋ค.
์๊ฐ
AWS ํ๊ฒฝ์์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ ํต์ ์ธ ์น ์ฌ์ดํธ์ด๊ฑฐ๋ API ํ๋ก์ ํธ์ผ ์ ์์ต๋๋ค. ๋ ์ ํ ๋ชจ๋ ์ดํ๋ถํฐ "์น ์ ํ๋ฆฌ์ผ์ด์
"(web app)์ผ๋ก ์ง์นญ๋ฉ๋๋ค. AWS์์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๊ธฐ ์ํด ์ ์ฉํ ์ ์๋ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- S3 ๋ฒํท์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ํธ์คํ
- ECS, EKS ๋๋ Fargate ์ปจํ ์ด๋์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ํธ์คํ
- Elastic Beanstalk์ผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์ ํธ์คํ
- EC2์์ ์ง์ ์น ์ ํ๋ฆฌ์ผ์ด์ ํธ์คํ
[!NOTE] AWS์์ ์ฝํ ์ธ ๋ฅผ ํธ์คํ ํ๊ธฐ ์ํด 1, 2, 3๋ฒ ์ต์ ์ด ํ๋์ ์ธ ์ ๊ทผ ๋ฐฉ์์ด์ง๋ง, ์ด ๋ฌธ์์์๋ ๋ ๊ฑฐ์ ์์คํ ์์ ๋ง์ด ์์ ํ์ง๋ง ๊ธฐ์กด ์ต๊ด์ผ๋ก AWS ํ๊ฒฝ์ผ๋ก ์ ํํ๊ณ ์ ํ๋ ๋ถ๋ค์ ๋์์ผ๋ก ํฉ๋๋ค!์ฐ๋ฆฌ์ ๋ชฉํ๋ Route53, Application Load Balancer, Security Groups ๋ฑ์ ํ๋ฆ์ EC2์ ํจ๊ป ๋น ๋ฅด๊ฒ ์๊ฐํ๋ ๊ฒ์ ๋๋ค.
์ด ๋ฌธ์์์๋ ๋ง์ง๋ง ์ต์
์ ์ดํด๋ณผ ๊ฒ์
๋๋ค. EC2์์ ์ฌ์ฉํ ์ ์๋ ๋ง์ ์ด์ ์ฒด์ ๊ฐ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ "Free Tier"(๋ฌด๋ฃ ๊ณ์ธต) ๋ด์์ ์ ๊ทผ ๊ฐ๋ฅํ ๊ฐ์ฅ ๋ฎ์ ๊ตฌ์ฑ์ Linux๋ฅผ ์ฌ์ฉํ ๊ฒ์
๋๋ค. AWS Free Tier์ ๋ํ ์์ธํ ์ ๋ณด๋ ์ฌ๊ธฐ๋ฅผ ํด๋ฆญํ์ธ์.
Amazon EC2๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๊ธฐ ์ํด ์ง์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ๋ฌธ์์์๋ ์ด๋ฌํ ์์
์ ์ํํ๊ธฐ ์ํด ํ์ํ ๋ชจ๋ ๋จ๊ณ๋ฅผ ๋จ๊ณ๋ณ๋ก ์ค๋ช
ํฉ๋๋ค.
๋ฐฐ๊ฒฝ
- Amazon Security Group (๋ณด์ ๊ทธ๋ฃน)
- Amazon EC2
- Amazon Load Balancer (๋ก๋ ๋ฐธ๋ฐ์)
- Amazon Route53
๋ฌด์์ ํ ๊ฒ์ธ๊ฐ?
๊ธฐ๋ณธ ์ํคํ
์ฒ๋ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค:

์ด๋ฏธ์ง-001: ๋ฉ์ธ ์์คํ
๋ทฐ
์น ์ฌ์ดํธ๋ฅผ AWS EC2 ๋จธ์ ์์ ํธ์คํ
ํ๋ ๊ฒ์ด ๋ชฉํ๋ผ๊ณ ๊ฐ์ ํด ๋ด
์๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ ๋จ์ํ๋ฅผ ์ํด AWS EC2์ Apache ์น ์๋ฒ์์ ์ ์ HTML ํ์ด์ง๋ฅผ ๊ฒ์ํ ๊ฒ์
๋๋ค. Apache์ ๊ธฐ๋ณธ
www ํด๋์ FTP๋ฅผ ํตํด ์ ๊ทผํ ์ ์๊ฒ ํ ๊ฒ์
๋๋ค. ์ด๋ฌํ ์๊ตฌ ์ฌํญ ์ธ์๋ ๋๋ฉ์ธ ์ด๋ฆ์ด AWS Route53์ ํตํด ์ด ์น ์ ํ๋ฆฌ์ผ์ด์
์ผ๋ก ๋ผ์ฐํ
๋ ๊ฒ์
๋๋ค.์ด๋ฏธ์ง-001์ ํ์๋ ์ํคํ
์ฒ๋ฅผ ์ค๊ณํ๊ธฐ ์ํด ํ์ ๋๊ทธ๋ผ๋ฏธ ์์ ์ซ์ ์์๋๋ก AWS ์์๋ฅผ ์์ฑํ ๊ฒ์
๋๋ค.
๋๋ฉ์ธ ์ด๋ฆ์ด
WELR.com์ด๊ณ ์๋ํ๋ ์์๋ค์ EC2์์ ํธ์คํ
ํ๋ ค๊ณ ํ๋ค๊ณ ๊ฐ์ ํด ๋ด
์๋ค.WELR.com ์ฝํ
์ธ ๋ฅผ AWS EC2์์ ํธ์คํ
ํ๊ธฐ ์ํ ๋ชจ๋ ๋จ๊ณ๋ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค.๋จ๊ณ 1: AWS์์ ๋ณด์ ๊ทธ๋ฃน ์์ฑ
์ด ๋ณด์ ๊ทธ๋ฃน์ EC2์ ์ฌ์ฉ๋ฉ๋๋ค. ๋ณด์ ๊ทธ๋ฃน์ ์ฐ๊ฒฐ๋ ๊ฐ์ฒด์ ๋ฐฉํ๋ฒฝ์ผ๋ก ์๊ฐํ ์ ์์ต๋๋ค.
๋ค์๊ณผ ๊ฐ์ด ๋ชจ๋ ์ธ๋ฐ์ด๋(inbound) ํฌํธ๋ฅผ ์ค์ ํ์ธ์:
- 20-21 (FTP)
- 1024-1048 (FTP), ์ ํ ์ฌํญ
- 22 (SSH)
- 80 (HTTP)
- 8080 (HTTP ์ฌ์ฉ์ ์ง์ ), ์ ํ ์ฌํญ
- 443 (HTTPS)
์๋ ์ด๋ฏธ์ง์ ๋นจ๊ฐ์ ์ง์ฌ๊ฐํ์ ๊ด๋ จ ๋ณด์ ๊ทธ๋ฃน์ ํตํด ALB์์ EC2๋ก์ ํ๋ฆ์ ๋ณด์ฌ์ฃผ๋ ๋ฐ ์ค์ํฉ๋๋ค.

์ด๋ฏธ์ง-002: SG-for-EC2-for-WELR์ ์ธ๋ฐ์ด๋ ๊ท์น
๋จ๊ณ 2: EC2 ์ธ์คํด์ค ์์ฑ
AWS์์ EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ ๊ฒ์ ๊ฐ๋จํ ํ๋ก์ธ์ค์
๋๋ค. ์๋ ์ด๋ฏธ์ง์ ์ค๋ฅธ์ชฝ ์๋จ์ ์๋ Connect(์ฐ๊ฒฐ) ๋ฒํผ์ EC2์ ์ฐ๊ฒฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.

์ด๋ฏธ์ง-003: EC2-for-WELR
EC2-for-WELR์ ๋ชจ๋ ์๊ตฌ ์ฌํญ์ ์ค์นํ์ธ์.
๋จผ์ EC2 ๋ช
๋ น์ค์ ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค. ์ด ๋จ๊ณ๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ง๋ง ๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ AWS ์น ์ฝ์์ ํตํด ์ง์ ์ฐ๊ฒฐํ๋ ๊ฒ์
๋๋ค.

์ด๋ฏธ์ง-004: EC2-for-WELR์ ์ฐ๊ฒฐ
Connect ๋ฒํผ์ ๋๋ฅด๋ฉด
ec2-user๋ก EC2 ๋ช
๋ น์ค์ ์ฐ๊ฒฐ๋ฉ๋๋ค.2.1- Apache ์ค์น
TEXT
> sudo s
> yum update -
> yum install -y httpd.x86_6
> systemctl start httpd.servic
> systemctl enable httpd.service
๋ชจ๋ ์น ์ ํ๋ฆฌ์ผ์ด์
ํ์ผ์ Apache์ ๊ธฐ๋ณธ ์น ํด๋์ ์์ ๊ฒ์
๋๋ค.
Apache์ ๊ธฐ๋ณธ ์น ํด๋๋
/var/www/html ๋๋ ํ ๋ฆฌ์
๋๋ค.2.2 - FTP ์ค์น
TEXT
> sudo su
> yum update -y
> yum install vsftpd
> sudo vi /etc/vsftpd/vsftpd.conf
FTP ๊ตฌ์ฑ ํ์ผ์์ ์๋์ ํ์๋ ์ผ๋ถ ๋ณ๊ฒฝ ์ฌํญ์ ์ํํด์ผ ํฉ๋๋ค.
๊ตฌ์ฑ ํ์ผ์์ ์ด ๋ชจ๋ ์ค์ด ํ์๋ ๋๋ก ์์ด์ผ ํฉ๋๋ค.
vi ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์์์ผ ํฉ๋๋ค. vi ํธ์ง๊ธฐ๋ฅผ ์ฒ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ฌ๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์.TEXT
# ์๋ ๋ชจ๋ ์ค์์ # ๊ธฐํธ๋ฅผ ์ ๊ฑฐํ์ธ์
anonymous_enable=NO
#
local_enable=YES
#
write_enable=YES
#
local_umask=022
#
dirmessage_enable=YES
#
xferlog_enable=YES
#
connect_from_port_20=YES
#
chroot_local_user=YES
write_enable=YES
allow_writeable_chroot=YES
#
listen=NO
#
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=18.170.116.xxx
vsftpd ์๋น์ค๋ฅผ ๋ค์ ์์ํ๋ ค๋ฉด ๋ค์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค:TEXT
> /etc/init.d/vsftpd restart
๋๋:
TEXT
> systemctl restart vsftpd
FTP์ฉ ์ฌ์ฉ์๋ฅผ ์ถ๊ฐํ๋ ค๋ฉด EC2 ๋ช
๋ น์ค์์ ๋ค์์ ์ํํ์ธ์:
TEXT
> adduser awsftpuse
> passwd awsftpuse
> usermod -a -G root awsftpuser
> usermod -d /var/www/html/ awsftpuse
> chown -R awsftpuser /var/www/htm
> systemctl restart vsftpd
2.3 - FTP ํด๋ผ์ด์ธํธ ์ค์น
์๋ฅผ ๋ค์ด Windows์์ Filezilla ํด๋ผ์ด์ธํธ.
AWS์์ ๋ชจ๋ ์์๋ฅผ ์์ฑํ ํ FTP ํด๋ผ์ด์ธํธ๋ก ์ฐ๊ฒฐํ๊ณ ํ์ผ์ ์
๋ก๋ํด ๋ณด์ธ์.
index.html ํ์ผ์ EC2์ FTP ์น ํด๋์ ์
๋ก๋ํ ์ ์์ด์ผ ํฉ๋๋ค.๋จ๊ณ 3: ALB์ฉ ๋ณด์ ๊ทธ๋ฃน ์์ฑ
๋ค์๊ณผ ๊ฐ์ด ๋ชจ๋ ์ธ๋ฐ์ด๋(inbound) ํฌํธ๋ฅผ ์ค์ ํ์ธ์:
- 20-21 (FTP)
- 1024-1048 (FTP), ์ ํ ์ฌํญ
- 22 (SSH)
- 80 (HTTP)
- 8080 (HTTP ์ฌ์ฉ์ ์ง์ ), ์ ํ ์ฌํญ
- 443 (HTTPS)

์ด๋ฏธ์ง-005: SG-for-ALB-for-WELR์ ์ธ๋ฐ์ด๋ ๊ท์น
๋จ๊ณ 4: Target Group ์์ฑ

์ด๋ฏธ์ง-006: Target Group TG-for-WELR
๋จ๊ณ 5: Application Load Balancer ์์ฑ
์ด ALB๋
TG-for-WELR ํ๊ฒ ๊ทธ๋ฃน์ ๊ฐ์ ธ์ผ ํฉ๋๋ค.ํ๊ฒ ๊ทธ๋ฃน(Target group)์ EC2 ๊ทธ๋ฃน์
๋๋ค. ๊ทธ๋ฌ๋ ์ง๊ธ์
EC2-for-WELR ์ธ์คํด์ค๋ง ํฌํจํ๊ณ ์์ต๋๋ค.๋ํ ์ด ALB๋
SG-for-ALB-for-WELR ๋ณด์ ๊ทธ๋ฃน์ ๊ฐ์ ธ์ผ ํฉ๋๋ค.์ด๋ฏธ์ง-007: Application Load Balancer ALB-for-WELR

๋จ๊ณ 6: ๋ณด์ ๊ทธ๋ฃน ๊ฐ ๊ถํ
SG-for-EC2-for-WELR์ SG-for-ALB-for-WELR์์ ์ค๋ ๋ชจ๋ TCP ์์ฒญ์ ์๋ฝํ๋๋ก ์ธ๋ฐ์ด๋ ๊ท์น์ ์ถ๊ฐํ์ธ์.
์ด๋ฏธ์ง-008: ๋ณด์ ๊ทธ๋ฃน์ ํตํด ALB์์ EC2๋ก์ ํ๋ฆ ํ์ฉ
๋จ๊ณ 7: Route53 Hosted Zone ์์ฑ
๋ค์๊ณผ ๊ฐ์ ๋ค ๊ฐ์ ๋ ์ฝ๋(record)๊ฐ ์์ด์ผ ํฉ๋๋ค:
- NS์ SOA๋ ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค
- Record A๋ฅผ ์์ฑํ์ธ์. ์๋ ์ด๋ฏธ์ง์ ๊ฐ์ด
- Record CNAME์ ์์ฑํ์ธ์ -
welr.com์ฉ
์ด๋ฏธ์ง-009 - Route53 ๋ ์ฝ๋

NS ์ฃผ์๋ ๋๋ฉ์ธ ๊ด๋ฆฌ ์ธํฐํ์ด์ค์์ ๋๋ฉ์ธ์ EC2 Apache์์ ํธ์คํ
ํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ผ๋ก ๋ผ์ฐํ
ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
์ด ๋ฌธ์์ ์์ ๋ถ๋ถ์์ ์ธ๊ธํ๋ฏ์ด ํด๋ผ์ฐ๋ ํ๊ฒฝ์์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. AWS EC2์์ ์ผ๋ถ ๊ฒํ ๋ฅผ ์ํํ์ต๋๋ค. ๋ณด์๋ค์ํผ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์๋ ์์๋ฅผ FTP๋ฅผ ํตํด Apache์ ์๋์ผ๋ก ๋ฐฐํฌํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ชจ๋ CI/CD ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ FTP ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ด ํ๋ก์ธ์ค๋ฅผ ์๋ํํ ์ ์์ต๋๋ค.
์ด ๋ฌธ์์ ์ฃผ์ ๋ชฉ์ ์ Route53 ๋ฐ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancers) ๋ค์ EC2์์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ด AWS ํ๊ฒฝ์์ ์ด๋ป๊ฒ ํธ์คํ
๋๋์ง ๋ณด์ฌ์ฃผ๋ ๊ฒ์
๋๋ค.
๋ฐฐ์ด ๊ฒ๋ค:
- EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ๊ตฌ์ฑ
- Apache ์น ์๋ฒ ์ค์น
- FTP ๊ตฌ์ฑ ๋ฐ ์ฌ์ฉ์ ์ถ๊ฐ
- Security Group ์ค์
- Application Load Balancer ์ค์
- Route53์ผ๋ก ๋๋ฉ์ธ ๋ผ์ฐํ
โ๏ธ ํด๋ผ์ฐ๋ ์ปดํจํ ์๋น์ค
AWS, Azure ๋ฐ Google Cloud ํ๋ซํผ์์ ์ธํ๋ผ ์ค๊ณ, ๋ง์ด๊ทธ๋ ์ด์ , ๊ด๋ฆฌ ๋ฐ ์ต์ ํ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
์๋น์ค ๋ณด๊ธฐ๐ ๋ฌธ์ํ๊ธฐ
AWS ๋ฐ ํด๋ผ์ฐ๋ ์ปดํจํ ์๋ฃจ์ ์ ๋ํ ์์ธํ ์ ๋ณด๋ฅผ ์ป์ผ๋ ค๋ฉด ํ์ ๋ฌธ์ํ์ธ์.
๋ฌธ์