- Ubuntu 환경에서 API 서버를 운영하기 위한 메뉴얼을 작성합니다.
- Spring 기반 프로젝트가 아니더라도, 전체적인 설계를 참고하실 수 있습니다.
- 편의상 Config-Gateway-API Server를 하나의 Git Repo 로 관리중인 것을 감안해주시면 감사하겠습니다.
- 설계 목표 작성
- 디렉토리 구조 구성
- 서비스 포트 구성
- Ubuntu 초기 세팅
- Common Setting
- Package Management, Timezone, Locale
- Swap Memory, Docker, User Group
- 운영에 필요한 라이브러리 및 alias 설정
- API Server Setting
- Web Server Setting
- Common Setting
- Database 구성
- MySQL Docker 환경 구성
- MySQL Backup 자동화
- API Server 구성
- 공통 로그 정책 설립
- Config Server, Gateway, API Server 구성
- 각 서버별 기동/중지 쉘 스크립트 작성
- 전체 서비스 헬스체크 쉘 스크립트 작성
- 전체 서비스 기동 쉘 스크립트 작성
- 시스템 리소스 헬스체크 쉘 스크립트 작성
- Monitoring 및 APM 구성
- Grafana & Prometheus 기반 API 서버 모니터링 구축
- Pinpoint APM 구축
- Grafana & Prometheus 기반 웹 서버 모니터링 구축
- Nginx 접속 경로 관리
- Jenkins CI/CD 구성
- Jenkins Docker 환경 구축
- Jenkins Job Pipeline 구축
- nGrinder 성능테스트 환경 구성