
์ค์ง์ํจ ์ธ์คํด์ค์ธ๋ฐ ์ ํ์ฑํ ์ํ๋ก ๋์ด์์ง?
๋๋ฉ์ธ ๊ฒฐ์ ํ๊ณ ๋ถํฐ ํ๋ฆฌ ํฐ์ด ์ฌ์ฉ์ ๋ชป ํ๊ฒ ๋ ๋ (๋ฐฑ์๋ ๋ ๋๊ฐ๋ ๊ฒ ์ ์ผ ๋ฌด์ญ๋ค.)
๊ณผ๊ธ์ด ๋ฌด์์์ ๋งค๋ฒ ์ค์ต ์ข ๋ฃ ํ์ ์ธ์คํด์ค๋ฅผ ์ค์ง์์ผฐ์๋๋ฐ
github actions ์ค์ต์ ํ๋ฉด์ ๋ง๋ค์ด์ง ์ธ์คํด์ค ํ๋๋ง ์๊พธ ํ์ฑํ ์ํ๋ก ๋ฐ๊ปด์์๋ค.

๋ฌธ๋ฉ ์ฒซ ํ์ฌ์์ , ๋ฆฌ๋ ์ค ํ๊ฒฝ์์ ์๋น์ค ๋ฑ๋ก ์ ์๋ ์์ ๋์๋ ๊ฒ ์๊ฐ๋ฌ๋ค.
์ค์ตํ๋ ๋์ค์ ์ด๋์ ๊ฐ ์ธ์คํด์ค ์๋ ์์ ๋๋ ์ค์ ์ด ๋ ๊ฒ ๊ฐ์๋ฐ, ๋ถ๋ช ๊ทธ๋ฐ ์ค๋ช ๋ค์ ๊ธฐ์ต์ ์๊ณ ..
์ด์ฐจํผ ์๋ ์คํ ๋๋ ๊ฑฐ ๋ง์ผ๋ ค๊ณ ์ด๊ฒ์ ๊ฒ ๋ง์ง๋ค๊ฐ ๋ค ๋ง๊ฐ์ง ๋ง๋น์ ^^.. ๋ณต์ตํ๋ ๊ฒธ ์ฒ์๋ถํฐ ๋ค์ ๋ง๋ค๊ฒ ๋์๋ค.
Elastic Beanstalk์ ์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน
Elastic Beanstalk ์์ฑ๋ถํฐ ์ค์ต ๊ฐ์ ๋ฐ๋ผ๊ฐ๋ ์ค, ๊ฐ์ฌ๋๊ป์ ์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน ์ค์ ์ ๋ํ ์ค๋ช ์์ด ๋น ๋ฅด๊ฒ ๋์ด๊ฐ์ จ๋ค.

๋ญ๊ฐ ์ด๋ฆ๋ถํฐ ์์ํด์.. ๋ฐ๋ก ๊ตฌ๊ธ๋ง
๋๋ ๊ฐ์ ๊ณ ๋ฏผ์ ํ์๋ ๋ถ์ ๊ธ์ ๋ฐ๊ฒฌํ๊ฒ ๋์๋ค.
https://repost.aws/ko/knowledge-center/ec2-instance-relaunched-after-termination
์ผ๋ฐ์ ์ผ๋ก AWS Elastic Beanstalk ํ๊ฒฝ์๋ Auto Scaling ๊ทธ๋ฃน์ด ๊ธฐ๋ณธ์ ์ผ๋ก ํฌํจ๋์ด ์๊ณ ,
Amazon EC2 Auto Scaling ๊ทธ๋ฃน ์ค์ ์ ํ๋ฉด ์ ์ง ๊ด๋ฆฌ ์ค์ธ ์ธ์คํด์ค๋ฅผ ๋์ฒดํ๋ ์ธ์คํด์ค๋ฅผ ์์ํ๋๋ก ์ค์ ๋๋ค๊ณ ํ๋ค.
Github Actions WorkFlow ์ฌ์ค์
์ฐ์ , ํ๊ฒฝ์ ์๋ก ๋ง๋ค์์ผ๋
๊ธฐ์กด์ ์ฌ์ฉํ๋ WorkFolw์ application_name๊ณผ environment_name์ ์๋ก ๋ง๋ ํ๊ฒฝ ๊ธฐ์ค์ผ๋ก ์์ ํด์คฌ๋ค.

- name: Beanstalk Deploy
uses: einaregilsson/beanstalk-deploy@v21
with:
aws_access_key: ${{ secrets.์์ธ์คํค์์ด๋ }}
aws_secret_key: ${{ secrets.์ํฌ๋ฆฟํค์์ด๋ }}
region: ${{ env.AWS_REGION }}
application_name: fc-board-v3
environment_name: Fc-board-v3-env
version_label: github-action-${{steps.current-time.outputs.formattedTime}}
deployment_package: deploy/deploy.zip
์ ์์ ์ผ๋ก ๋ฐฐํฌ๋๋ ๊ฒ๋ ํ์ธํ๋ค. (์ด๋ก์ ์ข์!)

๊ทธ๋ฆฌ๊ณ Elastic Beanstalk ๋๋ฉ์ธ์ ์ ์์ ํด๋ณด์๋๋ฐ

๋ ๋ฐ๊ฒจ์ค ๊ฑด 502 Bad GateWay -_-;
nginx์ ๊ธฐ๋ณธ ํฌํธ๊ฐ 5000๋ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ฐ๋ก ์ ํ ์ด ํ์ํ๋ค๊ณ ํ๋ค.
ํ๊ฒฝ ์ค์ ํด์ฃผ๊ธฐ
[Elastic Beanstalk > Environments > ์ค์ ํ ํ๊ฒฝ > ๊ตฌ์ฑ > ์ ๋ฐ์ดํธ, ๋ชจ๋ํฐ๋ง ๋ฐ ๋ก๊น ํญ] ์ผ๋ก ์ด๋ํ ๋ค,
SERVER_POST์ 5000์ ์ถ๊ฐํด์ฃผ๋ฉด ๋๋ค.

Elastic Beanstalk ๋๋ฉ์ธ์ ์ ์ํด์ swagger UI๋ฅผ ํ์ธํด๋ณด๋ฉด,
๊ฐ๋ฐํด๋ API๋ค ๋ชฉ๋ก์ด ์ ์์ ์ผ๋ก ๋ณด์ด๋ ๊ฑธ ํ์ธํ ์ ์๋ค.

๊ทธ๋ ๋ค๋ฉด, ์ธ์คํด์ค ์๋ ์์๋ง ๋ง์ผ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น?
์ธ์คํด์ค ์ค์ง์ํค๋ฉด ์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน์ ์ฐ๊ฒฐ๋๋ค๊ณ ๊ฒฝ๊ณ ๋ฌธ์ด ์น์ ํ๊ฒ ๋จ๊ณ ์์๋๋ฐ ์ด๊ฑธ ์ ๋์ณค๋์ง ..! ๐ญ

์ผ๋จ ์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน ์ค์ ์ผ๋ก ์ด๋ํ์ฌ ์ธ์คํด์ค ๊ด๋ฆฌ ํญ์์ ์ธ์คํด์ค๋ฅผ ๋๊ธฐ ์ค์ ์ผ๋ก ๋ฐ๊ฟ์คฌ๋๋ฐ,

์คํ ์ค์ผ์ผ๋ง ์ต์ ์ฉ๋์ด '1'์ด๋ผ ์ต์ ํ๋ ์์๋ ์ธ์คํด์ค๋ฅผ ๋๊ธฐ ์ํ๋ก ๋ฐ๊พธ๋ ๊ฒ ๋ถ๊ฐ๋ฅํ ์ํฉ!
AWS CLI ๋ช ๋ น์ด๋ ํ๋ฉด์์ ๋ค์๊ณผ ๊ฐ์ด ์ธ์คํด์ค ์ต์ ์ฉ๋์ 0์ผ๋ก ์์ ํด์คฌ๋ค. (๊ฒฝ๊ณ : ๋ฐ๋ผํ์ง ๋ง์์ค.)
aws autoscaling update-auto-scaling-group \
--auto-scaling-group-name {์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน ๋ช
}
--min-size 0 \
--max-size 1 \
--desired-capacity 0 \
--region ap-northeast-2

๋น์์ด๋ค. ์ธ์คํด์ค ์ข ๋ฃ๋๋ค. ๐จ๐จ๐จ

์๋ ๊ทธ๋ฐ๋ฐ .. ์ธ์คํด์ค๊ฐ ์ข ๋ฃ๋์ด๋ฒ๋ ธ๋ค..?!!!!
๊ฒ์ํด๋ณด๋ ์ต์ ์ฉ๋์ 0์ผ๋ก ์ค์ ํ๋ฉด ์ธ์คํด์ค๊ฐ ์ข ๋ฃ๋๋ค๊ณ ํ๋ค. ๐ญ๐ญ
์ฐ์ aws cli๋ก ์คํ ์ค์ผ์ผ๋ง์ ์ธ์คํด์ค ์๋ ์์ฑ๋๋๋ก ์ค์ ํด์คฌ๋ค.
aws autoscaling set-desired-capacity
--auto-scaling-group-name {์คํ ์ค์ผ์ผ๋ง ๊ทธ๋ฃน ๋ช
} \
--desired-capacity 1 \
--region ap-northeast-2

๋คํํ ์ธ์คํด์ค ์ถ๊ฐ ํ์ github actions๋ฅผ ํตํ ๋ฐฐํฌ๋ ์ ์์ ์ผ๋ก ๋๊ณ , ์ค์จ๊ฑฐ ์ ์๋ ์ ๋๋ค.


์ด๋์ ๋ ์ฝ์ง์ ๋๋ฌด ์ค๋ ์๊ฐ์ ์จ๋ฒ๋ ค์, ๊ทธ๋ฅ ์ผ๋ฅธ ์ค์ต์ ๋๋ด๊ณ ํ๊ฒฝ ์ข ๋ฃ์ํค๋ ๊ฑธ๋ก ์ค์ค๋ก ํฉ์๋ฅผ ๋ดค๋ค... ๐คฏ
์ฒซ ํ์ฌ์์๋ AWS๋ฅผ ์ ์จ์ ๊ตณ์ด.. ์ธ๊ธ ํ ํ์๋ ์๊ณ , ์ด์ง ํ ์ดํ์๋ BE ๊ฐ๋ฐ๋ง ํ์ง
์ธํ๋ผ๋ฅผ ์ง์ ์ ๋ ๊ธฐํ๊ฐ ์์๋๋ฐ ์ด๋ฒ ๊ธฐํ์ ์ฐธ ๋ง์ ๊ฒฝํ์ ํ๊ฒ๋๋ ๊ฒ ๊ฐ๋ค... ๐
์ด์ ์ง๊ฟ์ด๋ ์ฌ์ด๋ ํ๋ก์ ํธ ์์ํ๋ฉด ์ค์ ๋ก ๋ฐฐํฌํ๋ฉด์ ๋น์ฉ ๊ด๋ฆฌ๋ ์ ๊ด๋ฆฌํด์ผ๋ ํ ๋ฐ ๋ง๋งํ์ง๋ง..! ๋ฏธ๋์ ๋ด๊ฐ ํด๋ด๊ฒ ์ง ๋ญ!!
'๋ถ๋ ธ์ ํ์ดํ ๋ก๊ทธ ๐ฅ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [AWS] ALBโRoute53 ๋๋ฉ์ธ ์ฐ๊ฒฐ ์ฑ๊ณต ์ผ์ง (๋ถ์ : 504 Gateway Time-out์ด ๋ ํ๋ค๊ฒ ํด) (0) | 2025.12.03 |
|---|