CLOUD/OpenSource

[Prometheus] 모니터링 시스템

alsruds 2023. 2. 28. 18:10

[ 준비 ]

※ CentOS 3대 준비

》 Server 1대 / Node 2대

》 CPU : 1 / MEM : 2 / HDD : 20

네트워크 설정 : 2023.02.15 - [클라우드/리눅스] - [Linux] 네트워크 설정

 

[Linux] 네트워크 설정

[ 명령어를 사용한 네트워크 설정 ] ● ifconfig 명령어 》 ifconfig [장치명] [IP 주소] netmask [서브넷 마스크] [ DHCP 서버를 이용한 설정 ] ● 파일로 설정 》 /etc/sysconfig/network-scripts/ifcfg-[장치명]

alsrudalsrudalsrud.tistory.com

》 각 컴퓨터 호스트 이름 설정 

vi /etc/hostname
  • 서버 hostname : server
  • 노드1 hostname : 01-node
  • 노드2 hostname : 02-node

》 /etc/hosts 파일 설정 : 기존 파일에 추가

[server의 IP]	server 		
[01-node의 IP]	01-node	
[02-node의 IP]	02-node

 

☞ ping 으로 통신 확인! ☜

 

[ 서버 ]

데이터 수집 서버

※ 참고 : https://www.server-world.info/en/note?os=CentOS_Stream_8&p=prometheus&f=1

 

● 레포지터리 추가

cat > /etc/yum.repos.d/prometheus.repo <<'EOF' 
[prometheus]
name=prometheus
baseurl=https://packagecloud.io/prometheus-rpm/release/el/$releasever/$basearch
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

 

 설치

dnf -y install prometheus2

 

● /etc/prometheus/prometheus.yml 설정 파일 수정 : 마지막에 추가

☆ 들여쓰기(띄어쓰기 2칸) 주의  

  - job_name: node
    static_configs:
      - targets: ['01-node:9100', '02-node:9100']

》 targets : 데이터 수집 대상 (/etc/hosts 에서 써줬던 이름)

 

서버 시작

systemctl start prometheus

 

방화벽 해제

systemctl stop firewalld
systemctl disable firewalld

 

☞ 확인하기 ☜

웹 브라우저에서 [ server ip ] : 9090 접속

잘 접속되는 것을 확인!

 

[ 노드 ]

● 레포지터리 추가

cat > /etc/yum.repos.d/prometheus.repo <<'EOF' 
[prometheus]
name=prometheus
baseurl=https://packagecloud.io/prometheus-rpm/release/el/$releasever/$basearch
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

 

 설치

dnf -y install node_exporter

 

● 실행

systemctl restart node_exporter

 

방화벽 해제

systemctl stop firewalld
systemctl disable firewalld

 

☞ 확인하기 ☜

프로메테우스 서버 [ server ip ] : 9090 접속 후 Status>Targets 확인 시 등록했던 노드 확인 가능!

노드가 등록된 것을 확인~