ابزار Prometheus یک سیستم پایش متنباز است که بسیار سبک بوده و یک ساز و کار هشدار دهنده عالی در خود دارد. در این مطلب قرار است با نحوه نصب و تنظیم این ابزار آشنا شویم. با ما همراه باشید.
نصب و تنظیم ابزار Prometheus
در این آموزش، نحوه نصب و تنظیم آخرین نسخه Prometheus در یک ماشین مجازی لینوکس توضیح داده میشود. در صورتی که قصد دارید از این ابزار در یک کلاستر Kubernetes استفاده کنید، حتماً این مطلب از وبلاگ آریانت را نیز مطالعه کنید.
قبل از شروع به کار
- حتماً دسترسی sudo به سرور لینوکس را در اختیار داشته باشید. چرا که فرمانهای مورد استفاده در این آموزش نیازمند این سطح دسترسی هستند.
- سرور برای دریافت باینری Prometheus حتماً دسترسی به اینترنت داشته باشد.
- مهمتر از همه اینکه، قواعد فایروال برای دسترسی پورت 9090 ابزار Prometheus در سرور تنظیم شده باشند.
نصب باینریهای Prometheus
گام ۱) بروزرسانی منبع بسته yum
sudo yum update -y
گام ۲) به صفحه رسمی دریافت ابزار Prometheus بروید و آخرین لینک دانلود باینری لینوکس را دریافت نمایید.
prometheus linux download link
گام ۳) با استفاده از فرمان curl، منبع را دریافت کرده، آن را از حالت tar استخراج کنید و فایل استخراجشده را به prometheus-files تغییر نام بدهید.
curl -LO url -LO https://github.com/prometheus/prometheus/releases/download/v2.22.0/prometheus-2.22.0.linux-amd64.tar.gz tar -xvf prometheus-2.22.0.linux-amd64.tar.gz mv prometheus-2.22.0.linux-amd64 prometheus-files
گام ۴) یک کاربر Prometheus و همینطور دایرکتوریهای موردنیاز را ایجاد نمایید. همچنین این کاربر را مالک این دایرکتوریها تنظیم کنید.
sudo useradd --no-create-home --shell /bin/false prometheus sudo mkdir /etc/prometheus sudo mkdir /var/lib/prometheus sudo chown prometheus:prometheus /etc/prometheus sudo chown prometheus:prometheus /var/lib/Prometheus
گام ۵) باینری Prometheus و promtool را از فولدر prometheus-files به مسیر /usr/local/bin کپی نموده و مالکیت را به کاربر Prometheus تغییر دهید.
sudo cp prometheus-files/prometheus /usr/local/bin/ sudo cp prometheus-files/promtool /usr/local/bin/ sudo chown prometheus:prometheus /usr/local/bin/prometheus sudo chown prometheus:prometheus /usr/local/bin/promtool
گام ۶) کنسولهای consoles و console_libraries را از prometheus-files به فولدر /etc/Prometheus کپی کنید. سپس مالکیت را نیز به کاربر Prometheus تغییر دهید.
sudo cp -r prometheus-files/consoles /etc/prometheus sudo cp -r prometheus-files/console_libraries /etc/prometheus sudo chown -R prometheus:prometheus /etc/prometheus/consoles sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
تنظیمات Prometheus
تمام تنظیمات ابزار Prometheus میبایست در فایل /etc/prometheus/prometheus.yml وجود داشته باشند.
گام ۱) ساخت فایل prometheus.yml
sudo vi /etc/prometheus/prometheus.yml
گام ۲) محتوای زیر را کپی کرده و در فایل prometheus.yml بچسبانید.
global: scrape_interval: 10s scrape_configs: - job_name: 'prometheus' scrape_interval: 5s static_configs: - targets: ['localhost:9090']
گام ۳) مالکیت فایل را به کاربر Prometheus تغییر دهید.
sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml
تنظیم فایل سرویس Prometheus
گام ۱) ایجاد یک فایل سرویس Prometheus
sudo vi /etc/systemd/system/prometheus.service
گام ۲) محتوای زیر را در این فایل کپی کنید.
[Unit] Description=Prometheus Wants=network-online.target After=network-online.target [Service] User=prometheus Group=prometheus Type=simple ExecStart=/usr/local/bin/prometheus \ --config.file /etc/prometheus/prometheus.yml \ --storage.tsdb.path /var/lib/prometheus/ \ --web.console.templates=/etc/prometheus/consoles \ --web.console.libraries=/etc/prometheus/console_libraries [Install] WantedBy=multi-user.target
گام ۳) سرویس system را دوباره راهاندازی کنید تا سرویس Prometheus ثبت شود. سپس سرویس Prometheus را اجرا نمایید.
sudo systemctl daemon-reload sudo systemctl start prometheus
با استفاده از فرمان زیر، وضعیت سرویس Prometheus را بررسی نمایید.
sudo systemctl status prometheus
وضعیت فعال میبایست مطابق زیر نشان داده شود.
دسترسی به رابط کاربری وب Prometheus
حالا میتوانید به رابط کاربری Prometheus از طریق پورت 9090 سرور prometheus دسترسی پیدا کنید.
http://<prometheus-ip>:9090/graph
در نتیجه، باید رابط کاربری را مطابق زیر مشاهده کنید.
میتوانید از سربرگ کوئری Prometheus برای درخواست آمار موردنیاز به صورت زیر استفاده کنید.
هماکنون، تنظیمات سرور Prometheus با موفقیت انجام گرفته است. در همین حال، برای دریافت آمار از سیستمهای منبع میبایست «مقصد» را در در فایل prometheus.yml ثبت کنید.
به عنوان مثال، اگر بخواهید ۱۰ سرور را زیرنظر داشته باشید، آدرسهای IP این سرور را میبایست به عنوان target یا مقصد در تنظیمات ابزار Prometheus ثبت کنید. در این حالت سرور میبایست ابزار Node Exporter را در خود نصب داشته باشد تا تمام آمار سیستم را جمعآوری کرده و در دسترس ابزار Node Exporter قرار دهد.