จะติดตั้งและกำหนดค่า Prometheus บน Linux ได้อย่างไร (อูบุนตูและ CentOS)

เผยแพร่แล้ว: 2019-08-26

วิธีติดตั้งและกำหนดค่า Prometheus บน Linux Host - Crunchify Tips

โพรมีธีอุสคืออะไร?

Prometheus เป็นระบบ Monitoring ระดับโลกที่มาพร้อมกับ Time Series Database เป็นค่าเริ่มต้น เป็นระบบโอเพ่นซอร์สที่สร้างขึ้นในปี 2555

บริษัท 500 อันดับแรกของโลกใช้ Prometheus ในการรวบรวมเมตริกสำหรับโครงสร้างพื้นฐานและแอปพลิเคชัน Prometheus รองรับโมเดลข้อมูลหลายมิติด้วยข้อมูลอนุกรมเวลา ซึ่งส่วนใหญ่ระบุเป็นเมตริก

ไม่มีข้อกำหนดในการจัดเก็บข้อมูลพิเศษ เนื่องจาก Prometheus ใช้ Time Series DB (TSDB) ส่วนหนึ่งของการติดตั้งของตัวเอง

ในบทช่วยสอนนี้ เราจะติดตั้ง Prometheus บน Linux Ubuntu และ CentOS ด้วยขั้นตอนง่ายๆ

มาเริ่มกันเลย:

ขั้นตอนที่ 1 ตรวจสอบเวอร์ชัน Linux OS

คำสั่ง: cat /etc/os-release

ขั้นตอนด้านล่างใช้กับ Ubuntu Linux OS

ขั้นตอนที่ 2 สร้าง Prometheus Data และ Config Folder

คำสั่ง :

มาตรวจสอบทั้งสองโฟลเดอร์กัน:

ขั้นตอนที่ 3 เปลี่ยนความเป็นเจ้าของโฟลเดอร์ Data

สิ่งนี้จำเป็นเพื่อหลีกเลี่ยงปัญหาการอนุญาตในขั้นตอนต่อไป

ขั้นตอนที่ 4 สร้างไฟล์ prometheus.yml

ไปที่โฟลเดอร์ /crunchify/prometheus/conf และสร้างไฟล์ prometheus.yml

เนื้อหาไฟล์ prometheus.yml:

Note: ในไฟล์ด้านบน – แทนที่ IP ด้วยโฮสต์/VM IP ของคุณ

นี่คือ Directory structure สำหรับบทช่วยสอนนี้:

ติดตั้ง Prometheus บน Linux - โครงสร้างแผนผังไดเร็กทอรี

ขั้นตอนที่ 5 ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Docker บน VM ของคุณ

จะตรวจสอบได้อย่างไรว่าติดตั้ง Docker หรือไม่?

นั่นหมายความว่าไม่ได้ติดตั้งนักเทียบท่าบนโฮสต์/VM ของคุณ โปรดปฏิบัติตามบทช่วยสอนการติดตั้ง Docker อย่างสมบูรณ์เพื่อติดตั้ง Docker บนโฮสต์/VM ของคุณ

ขั้นตอนที่ 6 ติดตั้ง Docker Compose

Pre-requisite คือการติดตั้ง Docker ก่อนที่จะดำเนินการตามขั้นตอนด้านล่าง (ขั้นตอนที่-5)

ดำเนินการด้านล่างสามคำสั่ง:

ขั้นตอนที่ 7 ตรวจสอบ Docker Compose Version

ยินดีด้วย – ติดตั้ง docker compose บน VM ของคุณเรียบร้อยแล้ว

ขั้นตอนที่ 8 สร้างไฟล์ docker-compose.yml

ไปที่โฟลเดอร์ /crunchify/prometheus.

เนื้อหาไฟล์ docker-compose.yml:

ขั้นตอนที่ 9 ติดตั้ง Prometheus Start/Stop เป็นส่วนหนึ่งของการควบคุมระบบ

สร้างไฟล์ vi /etc/systemd/system/prometheus.service

เนื้อหาไฟล์ prometheus.service:

ขั้นตอนที่ 10 เริ่มบริการ Prometheus

เซิร์ฟเวอร์ Prometheus เริ่มทำงานบน Linux:

เซิร์ฟเวอร์ Prometheus เริ่มทำงานบน Linux Ubuntu

ยินดีด้วย!! คุณเริ่ม Prometheus บนโฮสต์ของคุณสำเร็จแล้ว

มาเล่นกับ Prometheus Dashboard และ UI . กันเถอะ


จะตรวจสอบได้อย่างไรว่า Prometheus ทำงานถูกต้องหรือไม่?

Prometheus Metrics Endpoint - เคล็ดลับการย่อ


จะตรวจสอบสถานะ UP ของโฮสต์หรือ VM โดยใช้ Prometheus ได้อย่างไร

จะตรวจสอบสถานะ UP ของโฮสต์หรือ VM โดยใช้ Prometheus ได้อย่างไร


จะตรวจสอบ Prometheus Configuration บนเบราว์เซอร์ได้อย่างไร?

วิธีตรวจสอบการกำหนดค่า Prometheus บนเบราว์เซอร์


ข้อมูลรันไทม์ Prometheus

เวลาทำงาน 2019-08-26 03:07:24.244852166 +0000 UTC
ไดเรกทอรีการทำงาน /prometheus
โหลดการกำหนดค่าใหม่ ประสบความสำเร็จ
โหลดการกำหนดค่าสำเร็จครั้งล่าสุด 2019-08-26 03:07:24 +0000 UTC
หัวโขน 533
อนุกรมเวลาหลัก 533
การทุจริตของ WAL 0
โรคกระดูกพรุน 36
GOMAXPROCS 1
GOGC
GODEBUG
การเก็บรักษา 15 วัน

ข้อมูล Prometheus สร้าง

เวอร์ชั่น 2.12.0
การแก้ไข 43acd0e2e93f9f70c49b2267efa0124f1e759e86
สาขา ศีรษะ
BuildUser root@7a9dbdbe0cc7
BuildDate 20190818-13:53:16
GoVersion go1.12.8

แฟล็กบรรทัดคำสั่งโพรมีธีอุส:

alertmanager.notification-queue-capacity 10000
alertmanager.timeout 10s
config.file /etc/prometheus/prometheus.yml
log.format logfmt
log.ระดับ ข้อมูล
query.lookback-delta 5m
query.max-concurrency 20
query.max-samples 50000000
query.timeout 2m
rule.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 /prometheus
storage.tsdb.retention 0s
storage.tsdb.retention.size 0B
storage.tsdb.retention.time 0s
storage.tsdb.wal-compression เท็จ
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-ที่อยู่ 0.0.0.0:9090
web.max-การเชื่อมต่อ 512
web.page-title เซิร์ฟเวอร์การรวบรวมและประมวลผล Prometheus Time Series
web.read-timeout 5m
web.route-prefix /

และคุณพร้อมแล้ว คุณ successfully installed Prometheus และตรวจสอบคุณสมบัติทั้งหมดแล้ว