MASTER DB가 다운되면?
서비스가 중단될 수 있음
DB가 다운되면 서비스 중단이 발생할 수 있는데, 이때 모니터링과 분산처리를 통해 문제를 파악하고 해결할 수 있다.
자동화할 수 있으며 개념적인 측면으로 살펴보면 VRRP를 활용하여 다운된 서버의 연결을 다른 대기중인 서버로 계승시키는 방법이 있다.
이를 사용하는 대표적인 서비스가 리눅스 환경의 Keepalived이다.
위와 같이 트래픽이 몰리는 등의 이유로 장애나 성능 저하가 발생했을 때 분산처리를 하고 서비스가 정상적으로 동작할 수 있도록 처리하는 모든 기법들
모니터링 툴들을 이용해 서비스 상태를 모니터링 하고 AB, Jmeter 등과 같이 대규모 트래픽을 임의로 흉내낼 수 있는 툴을 사용하여 연습해볼 수 있음
두가지를 합쳐서 내가 만들었던 서비스에 대한 트래픽 모니터링과 이를 관리할 수 있는 능력을 갖출 것
재해에 대비하여 미리 구비해둔 대안 서비스나 데이터 센터를 의미하며, 평소에는 미리 구축만 된 상태로 대기한다. (일종의 백업 개념)
여러대의 서버나, 네트워크 장비가 공유된 가상의 IP를 통해 서비스를 제공하며, 장애를 탐지하여 가상 IP를 통해 자동으로 승계하여 서비스의 연속성을 보장한다.
글로벌 설정(알림 이메일 관련)
vrrp에 사용할 스크립트 선언(체크 주기 등)
vrrp 인스턴스 설정
로그 수집
수집 대상 서버에 설치된 Exporter로 부터 로그를 수집하는 프로그램.(모니터링에 사용)
cat > /etc/yum.repos.d/prometheus.repo << 'EOF'
[prometheus]
name=prometheus
baseurl=https://packagecloud.io/prometheus-rpm/release/el/7/x86_64
repo_gpgcheck=1
enabled=1
gpgkey=https://packagecloud.io/prometheus-rpm/release/gpgkey
https://raw.githubusercontent.com/lest/prometheus-rpm/master/RPM-GPG-KEY-prometheus-rpm
gpgcheck=1
metadata_expire=300
EOF
프로메테우스가 동작하기 위해서는 각 컴퓨터에서 사용중인 프로그램에 맞는 프로메테우스 Exporter를 설치해야 한다.
exporter archives << exporter 리스트
CPU의 데이터를 자동으로 수집
다양한 수집 방법으로 모아진 로그를 연결해 시각화할 수 있는 도구
yum install -y grafana
하나하나 추가하긴 번거롭고 많다.
공식 홈페이지에서 대시보드를 받아 사용할 수 있다.
사용할 로그 연동을 참조하여 수집된 데이터 로그와 연결 할 수 있다.

마음에 드는 대시보드 검색 후 ID 복사


Node_Exporter는 CPU, 메모리 등에 대한 로그만 수집하지만 [DB]_exporter는 Select문 등 DB와 관련된 로그를 수집하여 SQL사용에 따른 상태 모니터링도 가능하다.