티스토리 뷰
시스템을 구축하면서 만났던 이슈들을 적어보기로 했다.
물론 훨씬 많은데 개인 노션에 정리해두었던것들부터 정리해보자
- 컨테이너 메모리 부족
- Issue : 컨테이너 배포시에 메모리 부족으로 배포가 안되는 문제 service (서비스 이름) was unable to place a task because no container instance met all of its requirements. The closest matching container-instance (컨테이너 인스턴스 아이디) has insufficient memory available. For more information, see the Troubleshooting section of the Amazon ECS Developer Guide.
- Problem : CPU, Memory를 1024로 잡았었는데 t3.small의 스펙상 200% 배포에는 불충분한 메모리였다.CPU는 2048인데 메모리는 1942임
- Solve : Memory를 512로 줄였다.
- 배포할때마다 태스크 개수가 자동으로 scale up
- Issue : git에 코드를 업데이트한 후 CI/CD가 돌아가면 Deploy 과정에서 자동으로 태스크 개수가 늘어나는 문제
- Problem : desired_count 라는 설정이 ECS Service에서 자동으로 무시되는 설정이라고 함
- Solve
- ASG를 막는 설정을 Service에 추가해줌
enable_autoscaling = false
- ui에서도 수정 가능
- ASG를 막는 설정을 Service에 추가해줌
- Port가 unhealthy
- Issue : 서비스 배포시 Port가 unhealthy하여 배포가 안되는 문제
- service (서비스 이름) instance (인스턴스 아이디) port (배포하려는 포트) is unhealthy in target-group (타겟그룹 이름) due to (reason Health checks failed)
- Problem :
- health check를 하면 아직 띄워지지 않은 api 서버로 /api/health 요청을 쏴서 unhealthy 결과가 도출됨
- DB 연결이 원활이 이루어지지 않아 발생됨
- Solve :
- health check 라우트를 / 루트로 바꾸고, 반환 HTTP code를 404로 변경
- DB의 보안그룹 설정을 통해 인바운드 규칙에 prod springboot server의 private subnet을 추가해줌
- DB와 prod vpc 간의 피어링 라우트테이블에 추가해줌
- Service가 꼬여 무한으로 실패
- Issue : 서비스를 매포하면 바로 실패 떠버리는 문제
- Problem : 서비스 배포 로직상으로 꼬임이 생긴 모양
- Solve : 서비스 삭제 후 다시 생성하니 해결됨
'인프라' 카테고리의 다른 글
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ECS
- github action
- SG
- EC2
- Grafana
- 서버
- RDS
- subnet
- 모니터링
- 리액트
- springboot
- html
- ci/cd
- javascript
- Hook
- CSS
- ALB
- Workflow
- AWS
- 로깅
- 인프라
- Service
- Grafana Alert
- VPC
- Docker
- react
- redux
- LOKI
- ecr
- js
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
글 보관함