2022 10 27
2022-10-27¶
Connectable 수료까지¶
[인프라 모니터링]
- CPU, Memory, Network, Disk 등 인프라 전반에 대한 모니터링
- 개인적으로는 https://monitor.connectable.fans 로 들어갈 수 있으면 좋을 듯
- Cloudwatch
- *참고: https://labs.brandi.co.kr/2019/05/30/kwakjs.html8
- 개요
- AWS 리소스 실시간 모니터링
- 임계값 넘어가면 경보 및 대처 ex) 인스턴스 중지, auto scaling 등
- Events, Logs, Metrics, Alarms
- 장점
- 편함. 세팅도 쉬웠던걸로 기억. 지금도 모니터링 갖춰져있긴 할 거임(개선만 하면 됨). 알람도 잘 보내주고
- 단점
- AWS 락인됨. 우테코에서 쓸때는 매번 로그인해야해서 귀찮아서 잘 안보게 된 듯
- 그라파나 & 프로메테우스
- 참고: https://essem-dev.medium.com/%ED%94%84%EB%A1%9C%EB%A9%94%ED%85%8C%EC%9A%B0%EC%8A%A4%EC%99%80-%EA%B7%B8%EB%9D%BC%ED%8C%8C%EB%82%98%EB%A1%9C-%EA%B0%9C%EB%B0%9C-%EC%84%9C%EB%B2%84-%EB%AA%A8%EB%8B%88%ED%84%B0%EB%A7%81%ED%95%98%EA%B8%B0-8942aea724b3
- 참고: https://benlee73.tistory.com/60
- 개요
- 개발 서버에는 익스포터 설치해 지표 노출시킴
- 프로메테우스에서 해당 지표를 모아서 저장함
- 그라파나가 데이터를 가져와서 각종 그래프로 보여줌
- 개발 서버 => 익스포터 => 프로메테우스 => 그라파나 => 브라우저
- 장점
- 간지남. 이것도 경보를 통해 슬랙/이메일 주네. 확실한 시계열 데이터 보는 방법
- 도커로 쉽게 띄울 수 있는거 같은데?
- 단점
- 약간 설치할게 있음. 외부로 데이터를 공개해야하는 군 (박주람 멘토님한테 물어보기)
- 쿠버네티스랑 같이 많이 쓰는구나
[JVM 모니터링]
- GC 모니터링 및 어플리케이션 쓰레드 등 리소스 검토
- Thread Dump도 한 번 떠보자
- 참고: https://d2.naver.com/helloworld/6043
- 참고: https://d2.naver.com/helloworld/37111
- VisualVM + VisualGC
- Oracle JDK가 제공하는 GUI 프로파일링/모니터링 툴
- 참고: https://developer111.tistory.com/35
- 설치하고 포트열어서 소켓통신 가능해보임
- JConsole
- HPJMeter
[로깅 백업]
- 현재 인스턴스 터지면 로그 다 날라감 => 백업해둘 필요가 있어보임
- S3 백업
- 그냥 우리 EC2의 로깅 파일들을 Crontab 활용하여 Script 써서 매일 S3로 보내도 괜찮을 듯
- 장점: 편함
- 단점: 시각화 안됨
- 그라파나 & 프로메테우스에서 로깅 시각화도 지원하나?
[인프라 구조 개선]
- 무중단 배포
- 참고: https://www.samsungsds.com/kr/insights/1256264_4627.html
- Rolling
- 새 버전을 점진적으로 배포하기
- 라우팅 멈췄다가 바꾸고 다시 라우팅해주고
- 인스턴스마다 차례로 배포해서 롤백도 쉬움
- 인스턴스 배포할 때 쪽수 모자라지기 때문에 트래픽 고려해서 처리해야함
- 배포 진행되는 동안 구버전/신버전 공존하기에 호환성 문제 발생할수도
- Blue-Green
- 블루: 구버전, 그린: 신버전
- 구버전과 동일하게 신버전 인스턴스 구성 => 이후 모든 트래픽 전환
- 빠른 롤백 가능 but 시스템 자원 2배로 필요
- Canary
- 신버전 제공 범위를 늘려가면서 확장
- 신버전 배포 전에 실제 운영환경에서 미리 테스트함
- 특정 사용자만 선택해서 새로운 기능 쓰게할 수 있
- ECS 쓸거 아니면 젠킨스 + 코드레벨에서 관리/제어가 필요할 듯?
- DB Replication
- 하면 좋을 듯!
- RDS 참고: https://developer88.tistory.com/317
- 코드레벨 참고: https://parkadd.tistory.com/128
- 코드레벨에서도 신경써줄것 많았던걸로 기억
- 그래도 RoutingDatasource 등을 써보면 좋을 듯
[팀 문화]
- 회고하기
- 제품, 운영, 협업, 프로젝트 진행 관점에 대한 회고
- 잘한거, 못한거, 개선포인트에 대한 회고
[블록체인]
- 멀티체인 지원
- 로그인을 하면 알아서 체인별 지갑 만들어주고 private/public key 관리 방안 고안
- Smart Contract 이전
- KIP17 컨트랙트 작성
- 블록체인 노드 운영하며 통신하는 인프라 구축