چگونه گرافانا بالا بیاریم !؟

قبل از اینکه این نوشته را بخوانید، اکیداً توصیه می‌کنم که متن قبلی‌ام را دربارۀ کلیات مانیتورینگ و پرمتئوس مطالعه کنید. :)

خب، رسیدیم به گرافانا!

گرافانا چیست؟

گرافانا ابزار متن بازی است که متریک‌ها را می‌خواند و آن‌ها را خیلی ساده و روشن در قالب نمودارهایی کارآمد و جذاب نمایش می‌دهد. برای آشنایی با نحوۀ به‌کارگیری و راه‌اندازی آن اینجا را بخوانید.


نمونه‌ای از گرافانا
نمونه‌ای از گرافانا


خیلی ساده بخواهم بگویم، ابزار متن بازی (گیت هاب) است برای نمایش هرچه بهتر‌‌ متریک‌ها.

گرافانا متریک‌ها را از برخی منابع (مثلاً پرومتئوس که در نوشتۀ قبلی توضیح دادم) که خودمان به آن می‌دهیم، می‌خواند و می‌توان در آن نمودارهای خیلی متنوع و درعین‌حال خوشگلی :) کشید.

ازآنجاکه گرافانا ابزار متن باز است، پس یک docker image از آن در داکر هاب پیدا می‌شود.

حالا تنها کاری که لازم است بکنیم، این است که کانفیگ‌هایش را برای این ایمیج سِت کنیم و در سرورمان یا هر جای دیگری دلمان خواست، آن را بالا بیاوریم.

نحوۀ بالاآوردن گرافانا با داکر

ـ مرحلۀ اول:

باز هم مثل قبل یک فایل docker-compose.yaml داریم که باید آن را بالا بیاوریم. محتوای این فایل این است:

version: '3.1'
services:
     grafana:
           image: grafana/grafana:6.4.4
           container_name: grafana
     environment:
           - GF_SERVER_ROOT_URL=YOUR_SERVER_IP
           - GF_SECURITY_ADMIN_PASSWORD=asadasad
           - TZ=Asia/Tehran
     volumes:
          - ./volumes/dynamic/data:/var/lib/grafana
          - ./volumes/static:/etc/grafana
          - /var/log/docker/grafana-babr:/var/log/grafana
     ports:
         - 3000:3000
     user: &quot0&quot


خب مشخص است که اول می‌گوید: «برو ایمیج گرافانا رو بگیر و بیار و این environment_variable ها رو بهش بده.». بعد برخی چیزهایی را که لازم است، volume می‌کند.

ـ همین جا توضیح می‌دهم که volume چیست؟ در هر کانتینر داکر که در حال اجرا شدن باشد‌، دیتاهایی وجود دارد که اگر کانتینر را پایین بیاوریم، آن‌ها پاک می‌شوند. برای اینکه جلوی این اتفاق گرفته شود، آن‌ها را اصطلاحاً volume می‌کنند. مثلاً می‌گویند فلان فایل‌ها توی فلان مسیر از سیستم ذخیره بشود که بعداً که کانتینر ریست شد، برود و دوباره آن‌ها را از آنجا بخواند.

خب بعدش هم می‌گوید که روی چه پورتی بالا بیاید و آن را bind می‌کند به پورت سرور و تمام!

ـ مرحلۀ دوم:

فایلی هم به اسم grafana.ini هست که برای کانفیگ‌های بیشتر گرافانا استفاده می‌شود که چون خیلی حجیم است و قرار هم نیست برای کاربردهای ساده بخشی از آن را تغییر دهیم، از اینجا می‌توانید به آن دسترسی بیابید.

حالا که آن فایل را هم داریم، دستورات زیر را اجرا کنید:

sudo mkdir -p ./volumes/static/
sudo cp grafana.ini ./volumes/static/
docker-compose up -d

خب این‌ها هم که دیگر خودتان می‌دانید چی هستند! فایل‌هایی که باید در جای خودشان باشند.

باز هم تأکید می‌کنم که الان ما توی مسیری هستیم که فایل docker-compose.yaml وجود دارد.

خب الان گرافانای شما باید بالا آمده باشد. بروید توی localhost:3000 ببینیدش.

کاری که باید بکنید، این است که لاگین کنید (توی فایل docker-compose.yaml تعیین کردیم که یوزر و پسورد چیست!) و به بخش تنظیمات و قسمت اضافه‌کردن داشبورد جدید بروید و آنجا سورسش را پرومتئوسی بدهید که قبلاً اینجا بالا آوردیم.

اینکه چطور نمودار بسازید و... در این نوشته مدنظر نبوده است. خودتان کمی با آن ور بروید، یادش می‌گیرید. سخت نیست. :)

خب ممنون که خواندید. سؤالی پیشنهادی بود، حتماً کامنت بگذارید. :)

در نوشتۀ بعدی می‌روم سراغ graylog ان‌شاءالله...