-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
Description
🥸 어떤 기능인가요?
운영 환경에서 사용할 수 있는 모니터링/알림/성능테스트/보안 시스템을 새롭게 구축합니다.
이메일 알림 없이 Slack만 사용
커스텀 메트릭, InfluxDB, K6, Grafana 대시보드 등
성능/비즈니스/운영 모니터링을 위한 모든 기능을 통합
운영/모니터링 서버의 보안 그룹도 안전하게 구성
✅ 작업 내용
-
AlertManager에서 Slack 알림만 사용하도록 설정
- AlertManager 설정 파일 생성 및 Slack Webhook 연동
- 이메일 알림 관련 설정은 추가하지 않음
- Slack 알림 템플릿 파일 작성
-
Slack Webhook 환경변수(SLACK_WEBHOOK_URL) 추가 SLACK_WEBHOOK_URL=https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK
-
InfluxDB, K6(성능테스트), Grafana 대시보드 등 모니터링 인프라 구축
- InfluxDB 서비스 도커 컴포즈에 추가
- Grafana에서 InfluxDB 데이터소스 및 대시보드 구성
- K6 부하/스트레스/스파이크/지속성 테스트 스크립트 작성
- K6 결과를 InfluxDB로 저장하도록 연동
- Grafana에서 K6/InfluxDB/커스텀 메트릭 대시보드 설계
- 성능테스트 자동화 스크립트(performance-test.sh) 작성
-
커스텀 메트릭/모니터링 백엔드 코드 개발
- CustomMetricsService, CustomMetricsController 등 Spring Boot 코드 작성
- Prometheus에서 커스텀 메트릭 수집 가능하도록 엔드포인트 구현
-
운영/모니터링 서버 보안 그룹 정책 설계 및 적용
[프로덕션 서버]
| 타입 | 포트 | 소스(예시) | 설명 |
|---|---|---|---|
| SSH | 22 | 내 IP/운영자 IP | 관리용 |
| HTTP | 80 | 0.0.0.0/0 | 웹 서비스 |
| HTTPS | 443 | 0.0.0.0/0 | 웹 서비스 |
| (내부용) | 8081 | 모니터링 서버 IP | 필요시 내부통신용 |
| (내부용) | 8082 | 모니터링 서버 IP | 필요시 내부통신용 |
[모니터링 서버]
| 타입 | 포트 | 소스(예시) | 설명 |
|---|---|---|---|
| SSH | 22 | 내 IP/운영자 IP | 관리용 |
| Grafana | 3000 | 내 IP/운영자 IP | 대시보드 |
| Prometheus | 9090 | 내 IP/운영자 IP | 메트릭 |
| AlertMgr | 9093 | 내 IP/운영자 IP | 알림 |
| Loki | 3100 | (내부만) | 로그 |
| Promtail | 9080 | (내부만) | 로그 |
- deploy-monitoring.yml 워크플로우 작성/수정
- 운영 서버의 .env 파일 최신화 및 불필요 변수 제거
- 워크플로우에서 환경변수, 설정파일, 도커 컴포즈 자동 배포
- 운영 백엔드 컨테이너도 최신 이미지로 배포
- 커스텀 메트릭 등 신규 기능이 실제로 동작하는지 확인
- 운영 환경에서 Slack 알림 및 성능테스트 정상 동작 확인
- 실제 장애/테스트 알림이 Slack으로 오는지 검증
- K6 성능테스트 결과가 InfluxDB/Grafana에 정상 반영되는지 확인
- 운영/모니터링 서버 보안 그룹 적용 여부 최종 점검
- AWS 콘솔에서 실제 적용 상태 확인
😇 이때까지 끝낼게요!
N/A
😵 참고할만한 자료(선택)
🙇♀️ 이슈 확인했어요:)
팀원에게 이슈 확인을 부탁해요! 이슈를 확인한 팀원은 체크 표시를 해주세요!
- 김태현
- 은나현
- 이상민
- 송창욱