استفاده از ابزار Node exporter بهترین روش برای جمعآوری آمار و ارقام مرتبط با سرور لینوکس به منظور مانتیورینگ است. در این مطلب قرار است که کاربرد این ابزار را بررسی کنیم. با ما همراه باشید.
پایش سرورهای لینوکس با استفاده از Prometheus
در این آموزش، نحوه نصب Prometheus node exporter را در یک سرور لینوکس به منظور استخراج آمار نقاط شبکه به سرور Prometheus فراخواهیم گرفت.
قبل از شروع به کار
ابزار Node Exporter برای اجرا و راهاندازی حتماً نیاز به سرور Prometheus نیاز دارد. در صورت تمایل به نصب Prometheus، میتوانید از راهنمای وبلاگ آریانت در این رابطه استفاده کنید.
باز بودن پورت 9100 در فایروال سرور. Prometheus آمار از طریق این پورت فراخوانی میکند.
نصب باینری Node Exporter
گام ۱) آخرین نسخه بسته ابزار Node Exporter را دریافت کنید. برای این منظور میبایست بخش دانلودهای Prometheus را به منظور یافتن آخرین نسخه جستجو کنید و سپس این فرمان را برای دریافت آخرین بسته بروزرسانی نمایید.
[php]
cd /tmp
curl -LO https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz
[/php]
گام ۲) استخراج فایل فشرده tarball
[php]
tar -xvf node_exporter-0.18.1.linux-amd64.tar.gz
[/php]
گام ۳) باینری Node Exporter را به مسیر /usr/local/bin انتقال دهید.
[php]
sudo mv node_exporter-0.18.1.linux-amd64/node_exporter /usr/local/bin/
[/php]
ایجاد سرویس سفارشی ابزار Node Exporter
گام ۱) ایجاد کاربر node_exporter برای اجرای سرویس Node Exporter
[php]
sudo useradd -rs /bin/false node_exporter
[/php]
گام ۲) در زیرمجموعه systemd، یک فایل سرویس node_exporter بسازید.
[php]
sudo vi /etc/systemd/system/node_exporter.service
[/php]
گام ۳) محتوای فایل سرویس را اضافه کرده و آن را ذخیره نمایید.
[php]
[Unit]
Description=Node Exporter
After=network.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter
[Install]
WantedBy=multi-user.target
[/php]
گام ۴) سیستم را دوباره راهاندازی کرده و سرویس Node Exporter را اجرا کنید.
[php]
sudo systemctl daemon-reload
sudo systemctl start node_exporter
[/php]
گام ۵) وضعیت ابزار Node Exporter را بررسی کنید. این کار برای اطمینان از فعالبودن این ابزار صورت میگیرد.
[php]
sudo systemctl status node_exporter
[/php]
گام ۶) سرویس Node Exporter را برای شروع به کار سیستم فعال نمایید.
[php]
sudo systemctl enable node_exporter
[/php]
حالا ابزار Node Exporter قادر خواهد بود که آمار را از طریق پورت 9100 استخراج کند.
امکان مشاهده تمام آمار سرور از طریق آدرس سرور در /metrics مطابق زیر ممکن خواهد بود.
[php]
http://<server-IP>:9100/metrics
[/php]
تنظیم سرور به عنوان Target در سرور Prometheus
اکنون با فعالبودن ابزار Node Exporter و اجرای آن در سرور، باید این سرور را به عنوان مقصد یا target در تنظیمات سرور Prometheus وارد کنیم.
نکته: این تنظیمات میبایست در سرور Prometheus انجام شوند.
گام ۱) به سرور Prometheus وارد شوید و فایل prometheus.yml را باز کنید.
[php]
sudo vi /etc/prometheus/prometheus.yml
[/php]
گام ۲) در زیر بخش scrape config، مقصد node exporter را مطابق زیر اضافه کنید. همچنین آدرس 10.142.0.3 را با IP سرور خودتان جایگزین نمایید. عبارت “Job name” نیز میتواند عنوان هاست یا IP سرور شما باشد که بیشتر برای شناسایی مورد استفاده قرار میگیرد.
[php]
– job_name: ‘node_exporter_metrics’
scrape_interval: 5s
static_configs:
– targets: [‘10.142.0.3:9100’]
[/php]
گام ۳) سرویس Prometheus را دوباره راهاندازی کنید تا تغییرات اِعمال شوند.
[php]
sudo systemctl restart prometheus
[/php]
حالا اگر وضعیت target را در رابط کاربری وب Prometheus با آدرس http://<prometheus-IP>:9090/targets بررسی کنید، وضعیت را مشابه زیر مشاهده خواهید کرد.

وضعیت ابزار Prometheus Node Exporter
همچنین میتوانید از مرورگر توصیفی Prometheus برای درخواست آمار مرتبط با نقطه شبکه استفاده کنید. در اینجا، برخی از پارامترهای کلیدی را برای این منظور مشاهده میکنید.
[php]
node_memory_MemFree_bytes
node_cpu_seconds_total
node_filesystem_avail_bytes
rate(node_cpu_seconds_total{mode="system"}[1m])
rate(node_network_receive_bytes_total[1m])
[/php]

کوئریهای آمار Prometheus Node Exporter