작성
·
125
0
안녕하세요. 좋은 강의 잘 듣고 있습니다.
예제에서 처럼이 아니라 EC2안에 DB 서버를 설치하게 된다면, 또 Spring 서버 뿐만이 아니라 필요에 따라 그 옆에 express 서버도 한 EC2 안에서 같이 돌릴 일도 있을 거라 생각하는데, 그런 경우에는 각각의 메트릭을 어떤 식으로 측정이 가능할지 질문 드립니다.
답변 2
0
안녕하세요 효범님! 강의 잘 들어주셔서 감사해요ㅎㅎ
질문에 대해 답변 드려볼게요!
말씀해주신 대로 하나의 EC2 안에서 각각의 프로그램(DB 서버, Spring 서버 등)에 관해
모니터링을 하려면 각각의 프로세스에 대해 메트릭을 수집해야 합니다.
링크에 설명이 나름 자세히 나와있는 것 같아서
링크 첨부드려볼게요!
링크에 나와있는 키워드를 바탕으로 검색해보시면서 학습해보셔도 좋을 것 같습니다~!!
Docker 컨테이너를 활용해 여러 프로그램을 실행시키는 경우
'도커 컨테이너 모니터링'이라는 키워드로 검색해보기
컨테이너를 사용하지 않는 경우
이 외로 궁금하신 점 생기시면 또 질문 남겨주세요~~~
0
안녕하세요, 인프런 AI 인턴입니다. 장효범님!
EC2 내에 DB 서버와 함께 여러 서비스를 실행하는 경우, 각 서비스의 성능 메트릭을 측정하고 관리하는 것은 매우 중요한 부분입니다. 이렇게 다양한 서비스들이 하나의 EC2 인스턴스에서 동작한다면, 다음과 같은 방법을 통해 개별적인 메트릭을 수집하고 모니터링할 수 있습니다.
CloudWatch 에이전트를 사용한 메트릭 수집: AWS CloudWatch 에이전트를 사용하면 특정 EC2 인스턴스 내의 세부적인 메트릭을 수집할 수 있습니다. CloudWatch는 CPU, 메모리, 디스크 I/O 등 다양한 시스템 수준의 지표를 모니터링하는 데 유용합니다. 특정 프로세스에 대한 메트릭(예: DB나 애플리케이션 서버)에 집중해서 수집할 수 있도록 설정할 수 있습니다.
Prometheus 및 Grafana: Prometheus는 애플리케이션 내부의 메트릭을 수집하고 저장할 수 있는 툴입니다. Grafana를 통해 수집된 데이터를 시각화할 수 있어, DB 및 각 서버의 성능 지표를 명확하게 모니터링할 수 있습니다.
어플리케이션별 내부 로깅 및 모니터링: 각 애플리케이션(ex. Spring, Express)에서 자체적으로 제공하는 모니터링 기능이나 라이브러리(예: Spring Actuator, PM2 등)를 활용하여 성능 데이터를 수집할 수 있습니다.
DB 모니터링 도구: 데이터베이스 특정적으로는 MySQL, PostgreSQL 등에 따라 다양한 모니터링 솔루션을 사용할 수 있습니다. 예를 들어, MySQL의 경우 기본 제공되는 성능 스키마를 활용하여 다양한 메트릭을 수집할 수 있습니다.
관련해서 더 많은 정보를 참고하고 싶으신 경우, 아래의 링크를 확인해 보시면 도움이 될 것입니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
cloudwatch가 있는데 왜 grafana와 prometheous를 또 쓰는 건지 궁금했었는데 프로세스별로 메트릭을 분리하기 위해서였군요.
질문에 답이 되었습니다. 정말 감사드립니다!