Linux에서 Prometheus를 설치 및 구성하는 방법은 무엇입니까? (우분투 및 CentOS)

게시 됨: 2019-08-26

Linux 호스트에서 Prometheus를 설정 및 구성하는 방법 - Crunchify 팁

프로메테우스란?

Prometheus는 세계 최고 수준의 모니터링 시스템이며 기본적으로 시계열 데이터베이스와 함께 제공됩니다. 원래 2012년에 구축된 오픈 소스 시스템입니다.

세계 상위 500대 기업은 인프라 및 애플리케이션에 대한 메트릭을 수집하기 위해 Prometheus를 사용하고 있습니다. Prometheus는 주로 메트릭으로 식별되는 시계열 데이터로 다차원 데이터 모델을 지원합니다.

Prometheus는 자체 설치의 TSDB( Time Series DB ) 부분을 사용하므로 특별한 데이터 저장 요구 사항은 없습니다.

이 튜토리얼에서는 매우 간단한 단계로 Linux Ubuntu 및 CentOS에 Prometheus를 설치합니다.

시작하자:

1단계 Linux OS 버전 확인

명령: cat /etc/os-release

아래 단계는 Ubuntu Linux OS 에 적용됩니다.

2단계 Prometheus 데이터 및 구성 폴더 생성

명령 :

두 폴더를 모두 확인하겠습니다.

Step-3 데이터 폴더 소유권 변경

이는 이후 단계에서 권한 문제를 방지하기 위해 필요합니다.

4단계 prometheus.yml 파일 생성

/crunchify/prometheus/conf 폴더로 이동하여 prometheus.yml 파일을 만듭니다.

prometheus.yml 파일 내용:

Note: 위 파일에서 IP를 호스트/VM IP로 바꾸십시오.

이 튜토리얼의 Directory structure 는 다음과 같습니다.

Linux에서 Prometheus 설정 - 디렉토리 트리 구조

5단계 VM에 Docker를 설치했는지 확인합니다.

Docker가 설치되어 있는지 확인하는 방법은 무엇입니까?

즉, 호스트/VM에 도커가 설치되어 있지 않습니다. 호스트/VM에 Docker를 설치하려면 Docker 설치 자습서를 완전히 따르십시오.

6단계 Docker Compose 설치

Pre-requisite 은 아래 단계를 실행하기 전에 먼저 Docker를 설치하는 것입니다. (5단계)

아래 세 가지 명령을 실행합니다.

7단계 Docker Compose 버전 확인

축하합니다. Docker compose가 VM에 성공적으로 설치되었습니다.

8단계 docker-compose.yml 파일 생성

/crunchify/prometheus 폴더로 이동합니다.

docker-compose.yml 파일 내용:

9단계 시스템 제어의 일부로 Prometheus Start/Stop을 설치합니다.

vi /etc/systemd/system/prometheus.service 파일 생성

prometheus.service 파일 내용:

Step-10 Prometheus 서비스 시작

Linux에서 시작된 Prometheus 서버:

Linux Ubuntu에서 시작된 Prometheus 서버

축하 해요!! 호스트에서 Prometheus를 성공적으로 시작했습니다.

Prometheus 대시보드와 UI를 가지고 놀자


Prometheus가 올바르게 실행되고 있는지 확인하는 방법은 무엇입니까?

Prometheus 메트릭 엔드포인트 - Crunchify 팁


Prometheus를 사용하여 호스트 또는 VM의 UP 상태를 확인하는 방법은 무엇입니까?

Prometheus를 사용하여 호스트 또는 VM의 UP 상태를 확인하는 방법은 무엇입니까?


브라우저에서 Prometheus 구성을 확인하는 방법은 무엇입니까?

브라우저에서 Prometheus 구성을 확인하는 방법


Prometheus 런타임 정보

가동 시간 2019-08-26 03:07:24.244852166 +0000 UTC
작업 디렉토리 /프로메테우스
구성 다시 로드 성공적인
마지막으로 성공한 구성 다시 로드 2019-08-26 03:07:24 +0000 UTC
헤드 청크 533
헤드 시계열 533
WAL 손상 0
고루틴 36
고맥스프록스 1
GOGC
고데버그
스토리지 보유 15일

프로메테우스 빌드 정보

버전 2.12.0
개정 43acd0e2e93f9f70c49b2267efa0124f1e759e86
나뭇 가지 머리
빌드 사용자 root@7a9dbdbe0cc7
빌드 날짜 20190818-13:53:16
고버전 go1.12.8

Prometheus 명령줄 플래그:

alertmanager.notification-대기열 용량 10000
alertmanager.timeout 10초
설정 파일 /etc/prometheus/prometheus.yml
로그 형식 logfmt
로그.레벨 정보
query.lookback-delta 5m
query.max-동시성 20
query.max-샘플 50000000
쿼리.시간 초과 2m
rules.alert.for-grace-period 10m
rules.alert.for-outage-tolerance 1시간
rules.alert.resend-delay 1m
storage.remote.flush-deadline 1m
storage.remote.read-concurrent-limit 10
storage.remote.read-sample-limit 50000000
storage.tsdb.allow-overlapping-blocks 거짓
storage.tsdb.max-block-duration 36시간
storage.tsdb.min-block-duration 2시간
storage.tsdb.no-lockfile 거짓
storage.tsdb.path /프로메테우스
storage.tsdb.retention 0초
storage.tsdb.retention.size 0B
storage.tsdb.retention.time 0초
storage.tsdb.wal-압축 거짓
storage.tsdb.wal-segment-size 0B
web.console.libraries console_libraries
web.console.templates 콘솔
web.cors.origin .*
web.enable-admin-api 거짓
web.enable-lifecycle 거짓
web.external-url
web.listen-address 0.0.0.0:9090
web.max-connections 512
web.page-title Prometheus 시계열 수집 및 처리 서버
web.read-timeout 5m
web.route-접두사 /

모든 준비가 완료되었습니다. successfully installed Prometheus 하고 모든 기능을 확인했습니다.