์ฅ์์ง(ํ์ฅ) | ์ ์ฌ์(ํ์) | ๋ฐฐ์์(ํ์) | ํ์ข ์น(ํ์) |
MOIM์ ํตํด ์ผ์ ์ ์ฐ์ ์์์ ๋ฐ๋ผ ๊ด๋ฆฌํ ์ ์๊ณ , ๋ชจ์์ ํจ์จ์ ์ผ๋ก ๊ฐ์คํ ์ ์์ต๋๋ค.
- ๋ฑ๋ก๋ ์ผ์ ๋ค์ ์ค์๋์ ๊ธด๊ธ๋์ ๋ฐ๋ผ ๋ถ๋ฅํ๊ณ ์ถ๋ค!
- ์ฌ๋๋ค์ ๋ชจ์ ์๊ฐ์ ์กฐ์จํ๊ธฐ๊ฐ ๋๋ฌด ์ด๋ ต๋ค!
-
๋ชจ์ ๊ธฐ๋ฅ
- ํธ์คํธ๊ฐ ๋ชจ์์ ๊ฐ์คํ๋ฉด, ์ง์ ๋ ๊ฒ์คํธ๋ค์๊ฒ ๋ชจ์ ์ฐธ์ฌ ์์ฒญ ์๋ฆผ์ด ์ ์ก๋ฉ๋๋ค.
- ํธ์คํธ๋ ํฌ๋งํ๋ ๋ชจ์ ์ผ์ ๊ณผ ๋ชจ์ ์๊ฐ์ ๋ฒ์๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
- ๊ฒ์คํธ๋ค์ด ๋ชจ์์ ์๋ฝํ๋ฉด ์ผ์ ์๋ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ ํตํด ๊ฒ์คํธ๋ค์ ์บ๋ฆฐ๋๋ฅผ ๋ถ์ํด์ ๋ชจ์ ๊ฐ๋ฅํ ์ผ์ ์ค ๊ฐ์ฅ ๋น ๋ฅธ ๋ ์ง์ ์๊ฐ์ ์ถ์ฒํฉ๋๋ค.
-
์ผ์ ๋ฑ๋ก/์กฐํ ๊ธฐ๋ฅ
- ์ฌ์ฉ์๋ ์ค์๋/๊ธด๊ธ๋์ ๋ฐ๋ผ ์ผ์ ์ ๋ฑ๋กํ ์ ์์ต๋๋ค.
- ๋ฑ๋ก๋ ์ผ์ ์ 4๋ถ๋ฉด ๋งคํธ๋ฆญ์ค๋ก ์กฐํํ ์ ์์ต๋๋ค.
- 4๋ถ๋ฉด์ ํ์๋ ์ผ์ ์ ๋ค๋ฅธ ๋ถ๋ฉด์ผ๋ก ์ฎ๊ธธ ์ ์์ต๋๋ค.
- ์ผ์ ์ ์/์ฃผ/์ผ ๋จ์๋ก ์กฐํํ ์ ์์ต๋๋ค.
-
์๋ฆผ ๊ธฐ๋ฅ
- ๋ฑ๋ก๋ ์ผ์ ์ด ์๋ฐํ์ ๋, ์ผ์ ๋ฑ๋ก ์ ์ค์ ํ๋ ์๋ฆผ ์๊ฐ์ ์๋ฆผ์ ์ ์กํ ์ ์์ต๋๋ค. (10๋ถ ์ , 1์๊ฐ ์ , 1์ผ ์ ๋ฑ)
- ๋ชจ์ ์ผ์ ์๋ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ ํตํด ๋ชจ์ ๊ฐ๋ฅ ์ผ์ ์ด ์ถ์ฒ๋๋ฉด ํธ์คํธ์ ๊ฒ์คํธ์๊ฒ ๋ชจ์ ํ์ ์๋ฆผ์ด ์ ์ก๋ฉ๋๋ค.
-
ํค์๋ ๊ฒ์ ๊ธฐ๋ฅ
- ์ฌ์ฉ์๋ ํค์๋(์ ๋ชฉ+๋ฉ๋ชจ)์ ๊ธฐ์ค์ผ๋ก ์ผ์ ์ ๊ฒ์ํ ์ ์์ต๋๋ค.
- ํค์๋ ๊ฒ์์ ํตํด ์ผ์ ๋ชฉ๋ก๊ณผ ์์ธ ๋ด์ฉ์ ํ์ธํ ์ ์์ต๋๋ค.
-
์บ๋ฆฐ๋ ๋งํฌ ํด๋ฆญ
-
์์ด์ ํ์ ๋งํฌ ํด๋ฆญ
-
๋ชจ์ ๊ธฐ๋ฅ ๋งํฌ ํด๋ฆญ
-
๋ก๊ทธ์ธ ๋งํฌ ํด๋ฆญ
-
์๋ฆผ ๋งํฌ ํด๋ฆญ
-
๋ก๊ทธ์ธ ๋งํฌ ํด๋ฆญ
Java 17 | Spring Boot |
---|---|
์ค๋ช 1 | ์ค๋ช 2 |
Spring Data Jpa | Redis |
---|---|
์ค๋ช 3 | ์ค๋ช 4 |
์ด๋ฆ | ์ค๋ช |
---|---|
feat | ๊ธฐ๋ฅ ์ปค๋ฐ |
fix | ์ค๋ฅ ์์ ์ปค๋ฐ |
refactor | ํจํค์ง ๊ตฌ์กฐ ์์ |
test | ํ ์คํธ ์ปค๋ฐ |
chore | ๊ทธ ์ธ ์์ํ ์์ |
๋ณธ ์์คํ ์ ๊ณ ์ฑ๋ฅ ๋ฐ ํ์ฅ ๊ฐ๋ฅํ ๋ฐฑ์๋ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด AWS ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋์์ต๋๋ค. Amazon EKS (Elastic Kubernetes Service)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก EC2 ์ธ์คํด์ค์์ ์คํ๋๋ ์์ปค ๋ ธ๋, AWS Elastic Load Balancer๋ฅผ ํตํ Route 53 ์ฐ๊ฒฐ, Amazon ElastiCache (Redis), Amazon RDS(MariaDB), DockerHub, ๊ทธ๋ฆฌ๊ณ GitHub Actions๋ฅผ ์ด์ฉํ CI/CD ์๋ํ ํ๋ก์ธ์ค๋ฅผ ํฌํจํฉ๋๋ค.
- ์ฌ์ฉ ๋ชฉ์
- ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌ, ๊ด๋ฆฌ, ํ์ฅ์ ์ํ ๊ด๋ฆฌํ Kubernetes ์๋น์ค ์ฌ์ฉ
- ์ธ๋ถ ๊ตฌ์ฑ
- ๋ง์คํฐ ๋ ธ๋: EKS๊ฐ ๊ด๋ฆฌํ๋ Kubernetes ์ปจํธ๋กค ํ๋ ์ธ
- ์์ปค ๋ ธ๋: EC2 ์ธ์คํด์ค์ ๋ฐฐํฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ ๋ ธ๋
- ์ ์ง๋ณด์ ๋ฐ ํ์ฅ์ฑ
- ์ปจํ ์ด๋ํ: ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ์๋น์ค์ ์ปจํ ์ด๋ํ๋ฅผ ํตํด ๋ฐฐํฌ, ํ์ฅ ๋ฐ ์ ์ง๋ณด์์ ์ฉ์ด์ฑ ๋ณด์ฅ
- ๋ก๋ ๋ฐธ๋ฐ์ฑ: ALB๋ฅผ ํตํ ์๋ ๋ก๋ ๋ฐธ๋ฐ์ฑ๊ณผ ํธ๋ํฝ ๊ด๋ฆฌ๋ฅผ ํตํด ์์คํ ์ ํ์ฅ์ฑ ๋ฐ ๊ฐ์ฉ์ฑ ํฅ์
-
์ฌ์ฉ ๋ชฉ์
- ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ํธ๋ํฝ ๋ถ์ฐ ๋ฐ ๋๋ฉ์ธ ์ด๋ฆ์ ํตํ ์ ๊ทผ ๊ด๋ฆฌ
-
์ธ๋ถ ๊ตฌ์ฑ:
- Elastic Load Balancer (ELB): ์ธ๋ฐ์ด๋ ํธ๋ํฝ์ EKS ํด๋ฌ์คํฐ์ ์์ปค ๋ ธ๋์ ์๋์ผ๋ก ๋ถ์ฐ
- Route 53: ์ฌ์ฉ์ ์ ์ ๋๋ฉ์ธ ์ด๋ฆ์ ELB์ ์ฐ๊ฒฐํ์ฌ ์ธ๋ถ ์ ๊ทผ์ฑ ํฅ์**
- ์ฌ์ฉ ๋ชฉ์ : ์ด๋ฉ์ผ ์ธ์ฆ์ ์ํ ์ธ์ฆ์ฝ๋ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ(๊ฒ์ฆ์๋ฃ ๋๋ ์ ํจ์๊ฐ ๋ง๋ฃ ์ ์ธ์ฆ์ฝ๋ ์ญ์ )
- ์ฌ์ฉ ๋ชฉ์ : ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์, ์ผ์ , ๋ชจ์ ๋ฑ ์ฃผ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ
- ์ฌ์ฉ ๋ชฉ์ : ์ ํ๋ฆฌ์ผ์ด์ ์ปจํ ์ด๋ ์ด๋ฏธ์ง์ ์ ์ฅ ๋ฐ ๋ฒ์ ๊ด๋ฆฌ
- ์ธ๋ถ ๊ตฌ์ฑ: ๊ณต๊ฐ ๋๋ ๋น๊ณต๊ฐ ๋ฆฌํฌ์งํ ๋ฆฌ ์ค์ , ์ด๋ฏธ์ง ํธ์ ๋ฐ ํ ๊ด๋ฆฌ
-
์ฌ์ฉ ๋ชฉ์ : ์ฝ๋ ๋ณ๊ฒฝ์ ๋ฐ๋ฅธ ์๋ํ๋ CI/CD ํ์ดํ๋ผ์ธ ๊ตฌํ
-
์ธ๋ถ ๊ตฌ์ฑ
- CI (Continuous Integration): ์ฝ๋ ์ปค๋ฐ ๋ฐ ํธ์ ์ ์๋ ๋น๋ ๋ฐ ํ ์คํธ ์คํ
- CD (Continuous Deployment): ํ ์คํธ ์ฑ๊ณต ์ DockerHub๋ก ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ฅผ ์๋ ๋ฐฐํฌ ๋ฐ EKS ํด๋ฌ์คํฐ์ ๋กค์์
-
๋ชฉ์
- ์์คํ ์ ๋ณด์ ๊ฐํ ๋ฐ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ ๋ณดํธ
-
๊ตฌํ
- IAM (Identity and Access Management): EKS, EC2, ElastiCache ๋ฐ ๊ธฐํ AWS ์๋น์ค์ ๋ํ ์ ๊ทผ ๊ถํ ๊ด๋ฆฌ
- ๋ณด์ ๊ทธ๋ฃน ๋ฐ ๋คํธ์ํฌ ACLs: EC2 ์ธ์คํด์ค ๋ฐ ElastiCache ํด๋ฌ์คํฐ์ ๋ํ ์ธ๋ฐ์ด๋ ๋ฐ ์์๋ฐ์ด๋ ํธ๋ํฝ ์ ์ด
๋ณธ ์์คํ ์ ํ๋ก ํธ์๋ ์ ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ๊ณผ ๋์ ๊ฐ์ฉ์ฑ, ๋ณด์์ ์ํ ๊ตฌ์ฑ์ ๋ชฉํ๋ก ํฉ๋๋ค. GitHub ์ ์ฅ์์ ์ฝ๋ ๋ณ๊ฒฝ์ด ๋ฐ์ํ ๋๋ง๋ค ์๋์ผ๋ก ๋น๋ ๋ฐ ๋ฐฐํฌ ํ๋ก์ธ์ค๊ฐ ์คํ๋์ด Amazon S3์ ์ ์ ์น์ฌ์ดํธ๋ฅผ ํธ์คํ ํฉ๋๋ค. Amazon CloudFront๋ฅผ ํตํด ์ ์ธ๊ณ์ ์ฝํ ์ธ ๋ฅผ ๋น ๋ฅด๊ฒ ์ ๊ณตํ๋ฉฐ, AWS Certificate Manager(ACM)์์ ๋ฐ๊ธ๋ฐ์ SSL ์ธ์ฆ์๋ฅผ ์ ์ฉํ์ฌ HTTPS๋ฅผ ํตํ ์์ ํ ์ ๊ทผ์ ๋ณด์ฅํฉ๋๋ค. Amazon Route 53์ ๋๋ฉ์ธ ์ด๋ฆ ์์คํ (DNS) ์๋น์ค๋ฅผ ์ ๊ณตํ์ฌ ์ฌ์ฉ์๊ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ์ ๊ทผํ ์ ์๋๋ก ํฉ๋๋ค.
- GitHub Actions: GitHub ์ ์ฅ์์ ์ฝ๋ ๋ณ๊ฒฝ์ด ๊ฐ์ง๋๋ฉด ์๋์ผ๋ก ๋น๋ ๋ฐ ๋ฐฐํฌ ํ๋ก์ธ์ค๋ฅผ ์คํ
- Amazon S3 ๋ฒํท: ๋น๋๋ ์ ์ ํ์ผ์ ํธ์คํ
- AWS Certificate Manager: SSL ์ธ์ฆ์๋ฅผ ๊ด๋ฆฌ. ์ธ์ฆ์๋ CloudFront ๋ฐฐํฌ์ ์ฐ๊ฒฐํ์ฌ HTTPS ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํจ
- Amazon CloudFront: S3 ๋ฒํท์ ํธ์คํ ๋ ์ ์ ์น์ฌ์ดํธ ์์ ์์นํ๋ CDN ์๋น์ค๋ก, ์บ์ฑ์ ํตํด ์ ์ธ๊ณ์ ์ผ๋ก ๋น ๋ฅธ ์ฝํ ์ธ ์ ๊ณต์ ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ACM์์ ๋ฐ๊ธ๋ฐ์ SSL ์ธ์ฆ์๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ HTTPS ์ฐ๊ฒฐ์ ์ ๊ณต
- Amazon Route 53: ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ฉ์ธ ์ด๋ฆ์ ๊ด๋ฆฌํ๊ณ , CloudFront ๋ฐฐํฌ์ ๋งคํํ์ฌ ์ฌ์ฉ์๊ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ์ ๊ทผํ ์ ์๋๋ก ํจ