نصب مانیتورینگ سنتوس Glances، InfluxDB و Grafana
موضوعاتی که در این مقاله به آنها پرداخته خواهد شد، به شرح زیر است:
نصب مانیتورینگ سنتوس Glances، InfluxDB و Grafana یک ابزار رایگان، متن باز، مدرن و چند سکویی برای مانیتورینگ لحظهای شبیه به top و htop است که دارای ویژگی های پیشرفته ای می باشد.
InfluxDB یک پایگاه داده متن باز و مقیاس پذیر برای معیارها، رویدادها و تجزیه و تحلیل لحظهای است.
Grafana یک ابزار متنباز، دارای ویژگیهای غنی، قدرتمند، زیبا و بسیار توسعهیافته، ابزار متقابل پلتفرمی برای نظارت و تجزیه و تحلیل متریک، با داشبوردهای زیبا و قابل تنظیم است. این یک نرم افزار واقعی برای تجزیه و تحلیل داده ها است.
در این مقاله، نحوه نصب و پیکربندی Glances، InfluxDB و Grafana برای نظارت بر روی عملکرد سنتوس را توضیح خواهیم داد.
نصب مانیتورینگ سنتوس Glances، InfluxDB و Grafana7
مرحله اول: نصب Glances بر روی سنتوس ۷
ابتدا با استفاده از PIP آخرین نسخه Glances (v2.11.1) را نصب کنید. اگر PIP ندارید، آن را به همراه Python-headers که برای نصب psutil مورد نیاز است، مطابق دستور زیر نصب کنید:
yum install python-pip python-devel
پس از نصب PIP و Python-headers، دستورات زیر را برای نصب آخرین نسخه Glances و بررسی نسخه اجرا کنید:
pip install glances glances -V Glances v2.11.1 with psutil v5.4.7
اگر نصب مانیتورینگ Glances، InfluxDB و Grafana در سنتوس
را از قبل انجام دادید، میتوانید با استفاده از فرمان زیر آن را به آخرین نسخه ارتقا دهید.
pip install --upgrade glances
پ.ن
آیا نیاز به خرید سرور مجازی استرالیا دارید؟ لطفا بر روی لینک اون کلیک کنید! اگر نیاز به خرید وی پی اس استرالیا دارید کلیک کنید.
برای نصب مانیتورینگ Glances، InfluxDB و Grafana در سنتوس به عنوان یک سرویس دائمی، لازم است آن را از طریق systemd راهاندازی کنیم. بدین منظور، یک واحد جدید با ایجاد یک فایل به نام glances.service در مسیر /etc/systemd/system/ ایجاد کنید.
vim /etc/systemd/system/glances.service
قطعه پیکربندی زیر را درون فایل glances.service کپی و جایگذاری نمایید. این پیکربندی شامل موارد زیر است:
--config
: این گزینه مسیر فایل پیکربندی Glances را مشخص می کند.--export-influxdb
: این گزینه به Glances دستور می دهد تا آمار جمع آوری شده را به یک سرور InfluxDB با آدرس مشخص شده ارسال نماید.--disable-ip
: این گزینه ماژول IP را در Glances غیرفعال می کند.
[Unit] Description=Glances After=network.target influxd.service [Service] ExecStart=/usr/bin/glances --config /home/admin/.config/glances/glances.conf --quiet --export-influxdb --disable-ip Restart=on-failure RestartSec=30s TimeoutSec=30s [Install] WantedBy=multi-user.target
تغییرات را ذخیره و فایل را ببندید.
سپس پیکربندی مدیر systemd را دوباره بارگذاری کنید، سرویس Glances را راهاندازی کنید، وضعیت آن را مشاهده کنید و آن را برای شروع خودکار در زمان بوت فعال کنید.
دستورات زیر را اجرا کنید:
systemctl daemon-reload systemctl start glances.service systemctl status glances.service systemctl enable glances.service
سپس، باید فایل پیکربندی Glances که توسط توسعهدهنده ارائه شده است را با استفاده از دستور wget دانلود کنید. به صورت زیر عمل کنید:
mkdir ~/.config/glances/ wget https://raw.githubusercontent.com/nicolargo/glances/master/conf/glances.conf -P ~/.config/glances/
نصب کتابخانه Python برای برقراری ارتباط با InfluxDB
به منظور برقراری ارتباط بین ابزار Glances و پایگاه داده InfluxDB جهت ارسال آمار جمع آوری شده، نیازمند کتابخانه Python مربوط به InfluxDB هستیم. این کتابخانه را می توانید به راحتی از طریق دستور pip نصب نمایید.
sudo pip install influxdb
نصب مانیتورینگ سنتوس Glances، InfluxDB و Grafana7
مرحله 2: نصب InfluxDB در CentOS 7
در این مرحله، باید مخزن Yum مربوط به InfluxDB را اضافه کنید تا آخرین نسخه بسته InfluxDB را نصب کنید. به صورت زیر عمل کنید:
cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo [influxdb] name = InfluxDB Repository - RHEL $releasever baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable enabled = 1 gpgcheck = 1 gpgkey = https://repos.influxdata.com/influxdb.key EOF
پس از افزودن مخزن، مراحل نصب InfluxDB را ادامه دهید:
نصب InfluxDB:
yum install influxdb
قدم بعدی، سرویس InfluxDB را از طریق systemd راهاندازی کنید، با مشاهده وضعیت آن اطمینان حاصل کنید که در حال اجرا است و آن را برای شروع خودکار در زمان بوت سیستم فعال کنید.
systemctl start influxdb systemctl status influxdb systemctl enable influxdb
به طور پیش فرض، InfluxDB از پورت TCP 8086 برای برقراری ارتباط بین سرویس گیرنده و سرویس دهنده از طریق رابط برنامهنویسی کاربردی (API) HTTP استفاده میکند. برای برقراری ارتباط موفق با InfluxDB، میبایست این پورت را در فایروال سیستم خود با استفاده از دستور firewall-cmd باز کنید.
firewall-cmd --add-port=8086/tcp --permanent firewall-cmd --reload
برای ذخیره سازی داده های جمع آوری شده توسط Glances، لازم است یک پایگاه داده در InfluxDB ایجاد کنید. ابزار influx
که به همراه بسته های InfluxDB نصب می شود، روشی ساده برای برقراری ارتباط با این پایگاه داده فراهم می کند. جهت ورود به رابط خط فرمان (CLI) و اتصال خودکار به نمونه محلی InfluxDB، دستور influx
را اجرا نمایید.
influx
برای ایجاد یک پایگاه داده اختصاصی به نام glances جهت ذخیره سازی اطلاعات مانیتورینگ Glances، دستورات زیر را اجرا کنید:
دستور اول، پایگاه داده ای به نام “glances” را ایجاد می کند.
دستور دوم، لیست تمامی پایگاه داده های موجود روی سیستم را نمایش می دهد.
CREATE DATABASE glances
SHOW DATABASES
Connected to http://localhost:8086 version 1.6.2 InfluxDB shell version: 1.6.2 > CREATE DATABASE glances > SHOW DATABASES name: databases name ---- _internal glances >
برای خروج از پوسته InfluxQL، عبارت exit
را تایپ کرده و کلید Enter را بزنید.
مرحله ۳: نصب Grafana بر روی سنتوس 7
نصب Grafana از مخزن رسمی YUM
در این مرحله، برای نصب Grafana نیازمند اضافه کردن مخزن رسمی آن به سیستم خود هستیم. این کار با ویرایش فایل /etc/yum.repos.d/grafana.repo و افزودن پیکربندی زیر قابل انجام است:
[grafana] name=grafana baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt
پس از افزودن مخزن به تنظیمات YUM، بسته Grafana را با اجرای دستور زیر نصب کنید:
yum install grafana
systemctl daemon-reload systemctl start grafana-server systemctl status grafana-server systemctl enable grafana-server
دستورالعملهای فوق، مقدمات اولیه برای راهاندازی Grafana را فراهم میآورد. مراحل بعدی شامل پیکربندی Grafana برای برقراری ارتباط با InfluxDB و نمایش دادههای مانیتورینگ Glances بر روی داشبوردهای Grafana میباشند.
سپس، پورت 3000 را که سرور Grafana به آن گوش می دهد، در فایروال خود با استفاده از firewall-cmd باز کنید.
firewall-cmd --add-port=3000/tcp --permanent firewall-cmd --reload
مرحله ۴: نظارت بر عملکرد سرور CentOS ۷ از طریق Grafana
در این مرحله، میتوانید از طریق URL زیر به رابط وب Grafana دسترسی پیدا کنید، که به صفحه ورود هدایت میشود، از اطلاعات کاربری پیشفرض برای ورود استفاده کنید.
URL: http://SERVER_IP:3000 Username: admin Password: admin
پس از ورود به Grafana، از شما خواسته میشود رمز عبور جدیدی ایجاد کنید. پس از انجام این کار، همانطور که در تصویر زیر نشان داده شده است، به داشبورد اصلی هدایت خواهید شد.
بعداز آن، روی “Create your first data source” کلیک کنید،
که باید یک پایگاه داده InfluxDB باشد. در بخش تنظیمات، یک نام مناسب مانند “Glances Import” را وارد کنید، سپس برای دو متغیر مهم دیگر (URL HTTP و پایگاه داده InfluxDB) از مقادیر زیر استفاده کنید، همانطور که در تصویر نشان داده شده است.
HTTP URL: http://localhost:8086 InfluxDB Details - Database: glances
سپس بر روی “Save & Test” کلیک کنید تا به منبع داده متصل شوید. شما باید بازخورد “Data source is working” را دریافت کنید که نشان میدهد اتصال به منبع داده با موفقیت برقرار شده است.
حالا برای وارد کردن داشبورد Glances، بر روی علامت مثبت «+» کلیک کرده و طبق تصویر به بخش «وارد کردن» (Import) بروید.
شما باید یا آدرس URL یا شناسه یا فایل .JSON داشبورد Glances را داشته باشید
که میتوانید آن را از Grafana.com دانلود کنید. در این مورد، ما از داشبورد Glances که توسط توسعهدهنده Glances ایجاد شده است استفاده خواهیم کرد. آدرس URL آن به صورت https://grafana.com/dashboards/2387 میباشد و یا شناسه آن 2387 است.
پس از بارگذاری داشبورد Grafana، زیر گزینهها (options)، عبارت glances را پیدا کنید و خروجی داده InfluxDB (Glances Import) که قبلا ایجاد کردهاید را انتخاب کنید، سپس روی وارد کردن (Import) همانطور که در تصویر زیر نشان داده شده است، کلیک کنید.
بعد از وارد کردن موفق داشبورد Glances، باید بتوانید نمودارهایی را مشاهده کنید که عملکرد سرور شما را نشان میدهند، که Glances از طریق InfluxDB ارائه میکند.
در این مقاله نصب مانیتورینگ سنتوس Glances، InfluxDB و Grafana را توضیح دادیم. اگر سوالی دارید یا اطلاعاتی برای به اشتراک گذاشتن دارید، میتوانید از فرم نظرات زیر استفاده کنید.