앞의 글에서 인프라 구축, Grafana 설정까지 완료하였으니 CI/CD 구축을 해보자 이전에는 Github Actions 를 사용했었는데 비용 문제 등으로 인해 AWS CodePipeline 으로 넘어갔다. 추후 Terraform 코드로 작성할테지만 UI 로 설정해보자 Pipeline 은 Github Actions의 Job 처럼 생성하는 사람 마음대로 구성할 수 있다. Source -> Build -> Deploy 순으로 실행되도록 파이프라인을 구성했다. 0️⃣ CodePipeline 1️⃣ Source Github 의 특정 Repository 의 branch 와 연결하는 단계이다. 해당 Repository 에 특정 branch 에 commit/push 되면 트리거가 걸려 이 Code Pipeline ..
프로세스 1️⃣ 이미지 준비 API Server Dockerfile 을 통해 API Server 이미지를 생성하여 ECR 에 올려서 준비하기 (추후 CI/CD 를 통해 자동화됨) Grafana 프로비저닝이 필요하다면 아키텍처에 맞는 grafana / loki 이미지를 pull 받아 프로비저닝된 이미지로 생성하여 ECR 에 올려서 준비하기 이 프로젝트에서는 기본 이미지를 사용한 후 나중에 Terraform 으로 프로비저닝 해줄 예정이기에 ECR 에 올리는거 생략하고 기본 Grafana 이미지를 준비한다. Loki 프로비저닝이 필요하여 아래의 config 파일과 Dockerfile 로 이미지 생성하여 ECR 에 올려서 준비하기 더보기 auth_enabled: false server: http_listen_p..
이번에는 ECS에 대해 알아보자. Amazon Elastic Container Service로 컨테이너화된 애플리케이션의 손쉬운 배포, 관리 및 크기 조정을 지원하는 완전 관리형 컨테이너 오케스트레이션 서비스이다. 구성요소는 다음과 같다. 1. Amazon ECR (Elastic Container Registry) 아마존에서 지원하는 컨테이너 이미지 저장소로 ECR 레포지토리에서 이미지 URI를 이용해 빌드한 이미지를 푸시하거나 가져올 수 있다. 완전 관리형 컨테이너 레지스트리로, 이미지와 아티팩트를 어디서나 쉽게 보관, 관리, 공유 및 배포하도록 지원한다. 2. 태스크 정의 (Task Definition) 애플리케이션을 구성하는 컨테이너를 설명하는 텍스트(JSON)이다. 3. 태스크 (Task) 태스크..
- Total
- Today
- Yesterday
- github action
- LOKI
- springboot
- 로깅
- ci/cd
- RDS
- ECS
- Docker
- 모니터링
- Grafana Alert
- react
- Hook
- CSS
- Grafana
- 서버
- SG
- 인프라
- redux
- javascript
- AWS
- EC2
- ALB
- Service
- subnet
- ecr
- html
- Workflow
- 리액트
- js
- VPC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |