يك نرم افزار مانيتورينگ منبع باز براي شبكه ها و برنامه ها است. اين برنامه نظارت بر هزاران معيار (metricها) جمع آوري شده از سرور مجازي ها ، ماشين هاي مجازي ، دستگاه هاي شبكه و برنامه هاي وب را در زمان واقعي ارائه مي دهد. اين معيارها به شما كمك مي كند تا سلامت فعلي زيرساخت IT خود را تعيين كنيد و قبل از شكايت مشتريان مشكلات سخت افزار يا اجزاي نرم افزاري را تشخيص دهيد. اطلاعات مفيد در يك پايگاه داده ذخيره مي شود ، بنابراين مي توانيد داده ها را با گذشت زمان تجزيه و تحليل كرده و كيفيت خدمات ارائه شده را بهبود بخشيد ، يا براي ارتقاء برنامه هاي خود تصميم گيري كنيد.
Zabbix از گزينه هاي مختلفي براي جمع آوري معيارها استفاده مي كند ، از جمله آن مي توان به نظارت بدون عامل بر خدمات كاربر و معماري كلاينت-سرور مجازي اشاره كرد. براي جمع آوري متريك سرور مجازي ، از يك عامل كوچك در سرويس گيرنده تحت نظارت براي جمع آوري داده ها و ارسال آن به سرور مجازي Zabbix استفاده مي كند. Zabbix از ارتباط رمزگذاري شده بين سرور مجازي و كلاينت هاي متصل پشتيباني مي كند ، بنابراين هنگام گذر از شبكه هاي ناايمن ، از داده هاي شما محافظت مي شود.
سرور مجازي Zabbix داده هاي خود را در يك پايگاه داده رابطه اي ايجاد مي كند كه توسط MySQL ، PostgreSQL يا Oracle تهيه مي شود. همچنين مي توانيد داده هاي تاريخي را در پايگاه هاي داده nosql مانند Elasticsearch و TimescaleDB ذخيره كنيد. Zabbix يك رابط وب فراهم مي كند تا بتوانيد داده ها را مشاهده كرده و تنظيمات سيستم را پيكربندي كنيد.
در اين آموزش دو ماشين پيكربندي خواهيد كرد. يكي به عنوان سرور مجازي پيكربندي مي شود و ديگري به عنوان كلاينت كه بر آن نظارت مي كنيد. سرور مجازي از يك پايگاه داده MySQL براي ضبط داده هاي مانيتورينگ استفاده مي كند و از Apache براي سرويس رابط وب استفاده مي شود.
پيش نيازها
براي دنبال كردن اين آموزش ، به موارد زير نياز داريد:
• دو سرور مجازي Ubuntu 18.04 كه طبق مقاله نحوه راه اندازي سرور مجازي اوليه با Ubuntu 18.04 تنظيم شده باشد ، و شامل يك كاربر غير ريشه با امتيازات sudo و فايروال پيكربندي شده با ufw باشد. روي يك سرور مجازي ، Zabbix را نصب مي كنيد. اين آموزش به اين سرور مجازي، سرور مجازي Zabbix خواهد گفت. در واقع سرور مجازي دوم شما را كنترل مي كند. به اين سرور دوم، سرور دوم Ubuntu 18.04 گفته مي شود.
• سرور مجازي ي كه Zabbix را اجرا ميكند، به نصب Apache ، MySQL و PHP نياز دارد. اين لينك را دنبال كنيد تا اين موارد را روي سرور Zabbix پيكربندي كنيد.
علاوه بر اين ، از آنجا كه شما از سرور مجازي Zabbix براي دسترسي به اطلاعات با ارزش در مورد زيرساخت هاي خود استفاده مي كنيد كه نمي خواهيد كاربران غيرمجاز به آنها دسترسي پيدا كنند ، مهم است كه با نصب گواهي TLS / SSL ، سرور مجازي خود را ايمن نگه داريد. اين كار اختياري است اما به شدت توصيه ميشود. براي به دست آوردن گواهينامه رايگان TLS / SSL مي توانيد راهنماي Let’s Encrypt on Ubuntu 18.04 را دنبال كنيد.
مرحله 1 – نصب سرور مجازي Zabbix
ابتدا بايد Zabbix را روي سرور مجازي ي كه MySQL ،Apache و PHP را نصب كرده ايد ، نصب كنيد. به عنوان كاربر غير ريشه خود به اين دستگاه وارد شويد:
⦁ $ ssh sammy@zabbix_server_ip_address
⦁
Zabbix در مدير بسته Ubuntu موجود است ، اما قديمي است ، بنابراين از مخزن رسمي Zabbix براي نصب آخرين نسخه پايدار استفاده كنيد. بسته تنظيمات را دانلود و نصب كنيد:
⦁ $ wget https://repo.zabbix.com/zabbix/4.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.2-1+bionic_all.deb
⦁
⦁ $ sudo dpkg -i zabbix-release_4.2-1+bionic_all.deb
خروجي زير را مشاهده خواهيد كرد:
Output
Selecting previously unselected package zabbix-release.
(Reading database … 61483 files and directories currently installed.)
Preparing to unpack zabbix-release_4.2-1+bionic_all.deb …
Unpacking zabbix-release (4.2-1+bionicc) …
Setting up zabbix-release (4.2-1+bionicc) …
فهرست بسته را به روز كنيد تا مخزن جديد را شامل شود:
⦁ $ sudo apt update
⦁
سپس سرور مجازي Zabbix و Web Frontend را با پشتيباني پايگاه داده MySQL نصب كنيد:
⦁ $ sudo apt install zabbix-server-mysql zabbix-frontend-php
⦁
همچنين ، عامل Zabbix را نصب كنيد ، كه به شما امكان مي دهد اطلاعات مربوط به وضعيت سرور مجازي Zabbix را جمع آوري كنيد.
⦁ $ sudo apt install zabbix-agent
⦁
قبل از استفاده از Zabbix ، بايد يك بانك اطلاعاتي را تنظيم كنيد تا داده هايي را كه سرور مجازي Zabbix از عاملين خود جمع آوري خواهد كرد ، نگه داريد. مي توانيد اين كار را در مرحله بعدي انجام دهيد.
مرحله 2 – پيكربندي پايگاه داده MySQL براي Zabbix
بايد يك پايگاه داده MySQL جديد ايجاد كرده و آن را با برخي از اطلاعات اصلي پر كنيد تا براي Zabbix مناسب باشد. همچنين يك كاربر خاص براي اين بانك اطلاعات ايجاد خواهيد كرد تا Zabbix با حساب ريشه وارد MySQL نشود.
به عنوان كاربر ريشه با استفاده از رمز ريشه كه هنگام نصب سرور مجازي MySQL تنظيم كرده ايد وارد شويد
⦁ $ mysql -uroot -p
⦁
پايگاه داده Zabbix را با پشتيباني كاراكتر UTF-8 ايجاد كنيد:
⦁ Mysql> create database zabbix character set utf8 collate utf8_bin;
⦁
سپس كاربري ايجاد كنيد كه سرور مجازي Zabbix از آن استفاده كند ، به آن دسترسي به پايگاه داده جديد را بدهيد و رمز عبور را براي كاربر تنظيم كنيد:
⦁ Mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘your_zabbix_mysql_password’;
⦁
سپس اين مجوزهاي جديد را اعمال كنيد:
⦁ Mysql>flush privileges;
⦁
اين امر از كاربر و بانك اطلاعاتي مراقبت ميكند. از كنسول پايگاه داده خارج شويد:
⦁ Mysql>quit;
⦁
در مرحله بعد ، طرح و داده هاي اوليه را وارد كنيد. نصب Zabbix فايلي را در اختيارتان قرار مي دهد.
براي تنظيم شماتيك و وارد كردن داده ها به پايگاه داده zabbix ، دستور زير را اجرا كنيد. ازzcat استفاده كنيد چرا كه اطلاعات موجود در فايل ، فشرده است.
⦁ $ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
⦁
رمزعبور را براي كاربر zabbix MySQL كه هنگام درخواست از شما پيكربندي كرديد وارد نماييد.
در صورت موفقيت، اين فرمان خطايي به همراه نخواهد داشت. اگر خطاي ERROR 1045 (28000): Access denied for userzabbix@’localhost’ (using password: YES) را مشاهده كرديد ، مطمئن شويد كه از رمز عبور براي كاربر zabbix استفاده كرده ايد و نه كاربر root.
به منظور استفاده سرور مجازي Zabbix از اين پايگاه داده ، بايد گذرواژه پايگاه داده را در فايل پيكربندي سرور مجازي Zabbix تنظيم كنيد. فايل پيكربندي را در ويرايشگر متن مورد نظر خود باز كنيد. اين آموزش از nano استفاده مي كند:
⦁ $ sudo nano /etc/zabbix/zabbix_server.conf
⦁
به دنبال قسمت زير در فايل باشيد:
/etc/zabbix/zabbix_server.conf
### Option: DBPassword
# Database password. Ignored for SQLite.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
اين نظرات در فايل، نحوه اتصال به پايگاه داده را توضيح مي دهد. بايد مقدار DBPassword را در فايل براي كاربر پايگاه داده خود تنظيم كنيد . براي پيكربندي پايگاه داده، اين خط را زير كامنت ها اضافه كنيد:
/etc/zabbix/zabbix_server.conf
…
DBPassword=your_zabbix_mysql_password
اگر از nano استفاده مي كنيد با فشار دادن CTRL + X و سپس Y و ENTER، zabbix_server.conf را ذخيره كرده و ببنديد .
اين امر از پيكربندي سرور مجازي Zabbix مراقبت ميكند. در مرحله بعد ، براي كاركرد صحيح رابط وب Zabbix اصلاحاتي را در تنظيمات PHP ايجاد خواهيد كرد.
مرحله 3 – پيكربنديPHP براي Zabbix
رابط وب Zabbix به زبان PHP نوشته شده است و به برخي تنظيمات ويژه سرور مجازي PHP احتياج دارد. مراحل نصب Zabbix يك فايل پيكربندي Apache ايجاد كرد كه شامل اين تنظيمات است. در ديركتوري /etc/zabbix قرار دارد و به طور اوتوماتيك توسط Apache لود ميشود. شما بايد تغيير كوچكي در اين فايل ايجاد كنيد ، بنابراين آن را با دستور زير باز كنيد:
⦁ $ sudo nano /etc/zabbix/apache.conf
⦁
اين فايل شامل تنظيمات PHP است كه شرايط لازم براي رابط وب Zabbix را برآورده مي كند. با اين حال ، تنظيم منطقه زماني به طور پيش فرض باطل مي شود. براي اينكه مطمئن شويد Zabbix از زمان صحيح استفاده مي كند ، بايد منطقه زماني مناسب را تنظيم كنيد.
/etc/zabbix/apache.conf
…
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
خط منطقه زماني كه در بلوك كد قبلي هايلايت شده است را باطل كنيد و آن را به منطقه زماني خود تغيير دهيد. مي توانيد از اين ليست از مناطق زماني پشتيباني شده استفاده نماييد تا يك ليست مناسب براي خود پيدا كنيد. سپس فايل را ذخيره كنيد و ببنديد.
اكنون Apache را مجدداً راه اندازي كنيد تا اين تنظيمات جديد اعمال شود:
⦁ $ sudo systemctl restart apache2
⦁
اكنون مي توانيد سرور مجازي Zabbix را شروع كنيد.
⦁ $ sudo systemctl start zabbix-server
⦁
سپس بررسي كنيد كه آيا سرور مجازي Zabbix به درستي كار مي كند:
⦁ $ sudo systemctl status zabbix-server
⦁
وضعيت زير را مشاهده خواهيد كرد:
Output
● zabbix-server.service – Zabbix Server
Loaded: loaded (/lib/systemd/system/zabbix-server.service; disabled; vendor preset: enabled)
Active: active (running) since Fri 2019-04-05 08:50:54 UTC; 3s ago
Process: 16497 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
…
سرانجام ، سرور مجازي را فعال كنيد تا در زمان بوت شروع شود:
⦁ $ sudo systemctl enable zabbix-server
⦁
سرور مجازي تنظيم شده و به بانك اطلاعاتي وصل مي شود. سپس ، ظاهر وب را تنظيم كنيد.
توجه: همانطور كه در بخش پيش نيازها ذكر شد ، توصيه مي شود SSL / TLS را روي سرور مجازي خود فعال كنيد. براي بدست آوردن يك گواهينامه رايگان SSL براي Apache در Ubuntu 18.04 مي توانيد هم اكنون اين آموزش را دنبال كنيد. پس از اخذ گواهينامه هاي SSL / TLS مي توانيد دوباره به اين مرحله برگرديد و اين آموزش را ادامه دهيد.
مرحله 4 – پيكربندي تنظيمات رابط وب Zabbix
رابط وب به شما امكان مي دهد گزارش ها را مشاهده كنيد و ميزبان هايي را كه مي خواهيد تحت نظارت قرار دهيد اضافه نماييد ، اما قبل از استفاده از آن نياز به تنظيمات اوليه دارد. مرورگر خود را راه اندازي كنيد و به آدرس http: // zabbix_server_name / zabbix / برويد. در صفحه اول يك پيام خوش آمديد مشاهده خواهيد كرد. براي ادامه بر روي next step كليك كنيد.
در صفحه بعدي ، جدول را مشاهده خواهيد كرد كه ليست تمامي پيش نيازهاي اجراي Zabbix را نشان مي دهد.
همه مقادير موجود در اين جدول بايد ok باشد ، بنابراين تأييد كنيد كه هستند. حتماً تا پايين صفحه رفته و همه پيش نيازها را نگاه كنيد. هنگامي كه تأييد كرديد كه همه چيز آماده است ، براي ادامه روي next step كليك كنيد.
صفحه بعدي اطلاعات اتصال داده را مي پرسد.
به سرور مجازي Zabbix در مورد بانك اطلاعاتي خود آگاهي داديد ، اما رابط وب Zabbix براي مديريت هاست و خواندن داده نيز به دسترسي به بانك اطلاعاتي احتياج دارد. بنابراين اعتبارات MySQL را كه در مرحله 2 پيكربندي كرده ايد وارد كنيد و براي ادامه بر روي next step كليك كنيد.
در صفحه بعدي مي توانيد گزينه ها را روي مقادير پيش فرض آنها قرار دهيد.
name اختياري است. در صورت داشتن چندين سرور مجازي نظارت ، از آن در رابط وب استفاده مي شود. براي ادامه بر روي next step كليك كنيد.
صفحه بعدي خلاصه پيش از نصب را نشان مي دهد تا بتوانيد تأييد كنيد كه همه چيز صحيح است.
بر روي next step كليك كنيد تا به صفحه نهايي برويد.
ستاپ رابط وب اكنون تكميل شده است. اين فرآيند فايل پيكربندي /usr/share/zabbix/conf/zabbix.conf.php را ايجاد مي كند كه مي توانيد در آينده از آنها نسخه پشتيبان تهيه كنيد و استفاده كنيد. براي رفتن به صفحه ورود ، روي Finish كليك كنيد. كاربر پيش فرض Admin و پسورد zabbix است.
قبل از ورود به سيستم ، عامل Zabbix را در دومين سرور مجازي Ubuntu خود تنظيم كنيد.
مرحله 5 – نصب و پيكربندي عامل Zabbix
حال بايد نرم افزار عامل را تنظيم كنيد كه داده هاي مانيتورينگ را به سرور مجازي Zabbix ارسال مي كند.
وارد سرور مجازي Ubuntu دوم شويد:
⦁ $ ssh sammy@second_ubuntu_server_ip_address
⦁
سپس ، دقيقاً مانند سرور مجازي Zabbix ، دستورات زير را براي نصب بسته تنظيمات مخزن اجرا كنيد:
⦁ $ wget https://repo.zabbix.com/zabbix/4.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.2-1+bionic_all.deb
⦁
⦁ $ sudo dpkg -i zabbix-release_4.2-1+bionic_all.deb
سپس ، شاخص بسته را به روز كنيد:
⦁ $ sudo apt update
⦁
سپس عامل Zabbix را نصب كنيد:
⦁ $ sudo apt install zabbix-agent
⦁
در حالي كه Zabbix از رمزگذاري مبتني بر گواهي پشتيباني مي كند ، تنظيم مجوز فراتر از محدوده اين آموزش است ، اما مي توانيد از كليدهاي از پيش اشتراكي (PSK) براي برقراري ارتباط بين سرور مجازي و كلاينت استفاده كنيد.
ابتدا يك PSK ايجاد كنيد:
⦁ $ sudo sh -c “openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk”
⦁
كليد را نشان دهيد تا بتوانيد آن را در جايي كپي كنيد. براي پيكربندي هاست به آن احتياج خواهيد داشت.
⦁ $ cat /etc/zabbix/zabbix_agentd.psk
⦁
كليد چيزي شبيه به اين خواهد بود:
Output
12eb854dea38ac9ee7d1ded2d74cee6262b0a56710f6946f7913d674ab82cdd4
اكنون تنظيمات عامل Zabbix را ويرايش كنيد تا اتصال ايمن آن به سرور مجازي Zabbix تنظيم شود. فايل پيكربندي عامل را در ويرايشگر متن خود باز كنيد:
⦁ $ sudo nano /etc/zabbix/zabbix_agentd.conf
⦁
هر تنظيماتي درون اين فايل از طريق كامنت هاي آگاهي دهنده در سراسر فايل مستند ميشود ، اما نياز به ويرايش برخي از آنها داريد.
ابتدا بايد آدرس IP سرور مجازي Zabbix را ويرايش كنيد. بخش زير را پيدا كنيد:
/etc/zabbix/zabbix_agentd.conf
…
### Option: Server
# List of comma delimited IP addresses (or hostnames) of Zabbix servers.
# Incoming connections will be accepted only from the hosts listed here.
# If IPv6 support is enabled then ‘127.0.0.1’, ‘::127.0.0.1’, ‘::ffff:127.0.0.1’ are treated equally.
#
# Mandatory: no
# Default:
# Server=
Server=127.0.0.1
…
مقدار پيش فرض را به IP سرور مجازي Zabbix تغيير دهيد:
/etc/zabbix/zabbix_agentd.conf
…
Server=zabbix_server_ip_address
…
در مرحله بعد ، بخشي را پيدا كنيد كه اتصال ايمن به سرور مجازي Zabbix را پيكربندي كرده و پشتيباني از پيش اشتراك گذاري شده كليد را فعال كنيد. بخش TLSConnect را پيدا كنيد ، كه اينگونه به نظر مي رسد:
/etc/zabbix/zabbix_agentd.conf
…
### Option: TLSConnect
# How the agent should connect to server or غير مجاز مي باشد. Used for active checks.
# Only one value can be specified:
# unencrypted – connect without encryption
# psk – connect using TLS and a pre-shared key
# cert – connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for ‘unencrypted’ connection)
# Default:
# TLSConnect=unencrypted
…
سپس اين پيوند را براي پيكربندي پشتيباني از كليد پيش اشتراكي اضافه كنيد:
/etc/zabbix/zabbix_agentd.conf
…
TLSConnect=psk
…
سپس ، بخش TLSAccept را پيدا كنيد ، كه اينگونه خواهد بود :
/etc/zabbix/zabbix_agentd.conf
…
### Option: TLSAccept
# What incoming connections to accept.
# Multiple values can be specified, separated by comma:
# unencrypted – accept connections without encryption
# psk – accept connections secured with TLS and a pre-shared key
# cert – accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for ‘unencrypted’ connection)
# Default:
# TLSAccept=unencrypted
…
با افزودن اين خط پيوندهاي ورودي را براي پشتيباني از كليدهاي از پيش اشتراك گذاري پيكربندي كنيد:
/etc/zabbix/zabbix_agentd.conf
…
TLSAccept=psk
…
سپس بخش TLSPSKIdentity را پيدا كنيد كه اينگونه خواهد بود:
/etc/zabbix/zabbix_agentd.conf
…
### Option: TLSPSKIdentity
# Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKIdentity=
…
با افزودن اين خط ، يك نام منحصر به فرد براي شناسايي كليد پيش اشتراكي خود انتخاب كنيد:
/etc/zabbix/zabbix_agentd.conf
…
TLSPSKIdentity=PSK 001
…
هنگامي كه هاست خود را از طريق رابط وب Zabbix اضافه مي كنيد ، از اين به عنوان شناسه PSK استفاده خواهيد كرد.
سپس گزينه اي را انتخاب كنيد كه به كليد پيش اشتراكي قبلي تان اشاره دارد. گزينه TLSPSKFile را بيابيد:
/etc/zabbix/zabbix_agentd.conf
…
### Option: TLSPSKFile
# Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKFile=
…
اين خط را اضافه كنيد تا عامل Zabbix به فايل PSK شما اشاره كند:
/etc/zabbix/zabbix_agentd.conf
…
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
…
فايل را ذخيره كنيد و ببنديد. اكنون مي توانيد عامل Zabbix را مجدداً راه اندازي كنيد و آن را به گونه اي تنظيم كنيد تا در زمان بوت شروع شود:
⦁ $ sudo systemctl restart zabbix-agent
⦁
⦁ $ sudo systemctl enable zabbix-agent
بهتر است بررسي كنيد كه عامل Zabbix به درستي اجرا شده است يا خير:
⦁ $ sudo systemctl status zabbix-agent
⦁
وضعيت زير را مشاهده خواهيد كرد ، نشان مي دهد عامل در حال اجرا است:
Output
● zabbix-agent.service – Zabbix Agent
Loaded: loaded (/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-04-05 09:03:04 UTC; 1s ago
…
عامل ، اتصالات حاصله از سرور مجازي را از پورت 10050 گوش مي دهد. UFW را براي برقراري اتصال به اين پورت پيكربندي كنيد:
⦁ $ sudo ufw allow 10050/tcp
⦁
مي توانيد اطلاعات بيشتري در مورد UFW در راهنماي نحوه راه اندازي فايروال با UFW در Ubuntu 18.04 كسب كنيد.
اكنون عامل شما آماده پذيرش اتصالات و ارسال داده به سرور مجازي Zabbix است. اما براي استفاده از آن ، بايد از طريق كنسول وب سرور مجازي به آن پيوند دهيد. در مرحله بعد ، پيكربندي را كامل مي كنيد.
مرحله 6 – اضافه كردن هاست جديد به سرور مجازي Zabbix
نصب يك عامل بر روي سرور مجازي ي كه مي خواهيد نظارت كنيد ، فقط نيمي از روند كار است. هر هاستي كه براي نظارت مي خواهيد نياز به ثبت در سرور Zabbix دارد، كه مي توانيد اين كار را از طريق رابط وب انجام دهيد.
با رفتن به آدرس http: // zabbix_server_name / zabbix / وارد رابط وب سرور مجازي Zabbix شويد.
هنگامي كه وارد سيستم شده ايد ، در نوار پيمايش بالا بر روي Configuration و سپس Hosts كليك كنيد. سپس بر روي دكمه Create host در گوشه سمت راست بالاي صفحه كليك كنيد. با اين كار صفحه پيكربندي ميزبان باز مي شود.
نام هاست و آدرس IP را تنظيم كنيد تا نام هاست و آدرس IP سرور مجازي دوم Ubuntu شما را منعكس نمايد ، سپس هاست را به يك گروه اضافه كنيد. مي توانيد يك گروه موجود ، به عنوان مثال سرور مجازي هاي لينوكس را انتخاب كنيد يا گروه خود را ايجاد كنيد. هاست مي تواند در چند گروه باشد. براي اين كار ، نام گروه موجود يا جديد را در قسمت Groups وارد كرده و از ليست پيشنهادي مقدار مورد نظر را انتخاب كنيد.
پس از افزودن گروه ، بر روي تب Templates كليك كنيد.
Template OS Linux را در قسمت جستجو تايپ كنيد و سپس بلافاصله در زير نوار جستجو روي add كليك كنيد تا اين الگو به هاست اضافه شود.
در مرحله بعد ، به سربرگ Encryption برويد. PSK را هم براي اتصال به هاست و هم اتصالات حاصله از هاست انتخاب كنيد. سپس PSK identity را روي PSK 001 قرار دهيد ، كه مقدار تنظيم TLSPSKIdentity عامل Zabbix است كه قبلاً پيكربندي كرده ايد. سپس مقدار PSK را روي كليد توليد شده براي عامل Zabbix تنظيم كنيد. اين چيزي است كه در فايل /etc/zabbix/zabbix_agentd.psk در دستگاه عامل ذخيره شده است.
در آخر ، بر روي دكمه Add در پايين فرم كليك كنيد تا ميزبان ايجاد شود.
ميزبان جديد خود را در اين ليست مشاهده خواهيد كرد. يك دقيقه صبر كنيد و صفحه را مجدد لود كنيد تا برچسب هاي سبز نشان دهند كه همه چيز خوب است و اتصال رمزگذاري شده است.
در صورت داشتن سرور مجازي هاي اضافي كه بايد نظارت كنيد ، به هر هاست وارد شويد ، عامل Zabbix را نصب كنيد ، يك PSK توليد كنيد ، عامل را پيكربندي كنيد و سپس همان مراحل اضافه كردن اولين هاست خود را تكرار كنيد، تا هاست را به رابط وب اضافه كنيد.
سرور مجازي Zabbix اكنون سرور مجازي دوم Ubuntu را كنترل مي كند. اكنون ، اعلان هاي ايميل را تنظيم كنيد تا در مورد مشكلات به شما اطلاع داده شود.
مرحله 7 – پيكربندي اعلان هاي ايميل
Zabbix به طور خودكار انواع مختلفي از اعلان ها را پشتيباني مي كند: ايميل ، Jabber ، پيام كوتاه و غيره. همچنين مي توانيد از روش هاي اعلان جايگزين مانند Telegram يا Slack نيز استفاده كنيد. ليست كامل ادغام ها را مي توانيد در اينجا مشاهده كنيد.
ساده ترين روش ارتباطي ايميل است و اين آموزش اعلان ها را براي اين نوع رسانه پيكربندي مي كند.
در نوار پيمايش بالا بر روي Administration ، و سپس Media types كليك كنيد. ليست انواع رسانه ها را مشاهده خواهيد كرد. روي ايميل كليك كنيد.
گزينه هاي SMTP را مطابق تنظيمات ارائه شده توسط سرويس ايميل خود تنظيم كنيد. اين آموزش از ويژگي هاي SMTP Gmail براي تنظيم اعلان هاي ايميل استفاده مي كند. اگر مي خواهيد اطلاعات بيشتري درباره اين تنظيمات داشته باشيد ، به نحوه استفاده از سرور مجازي SMTP Google مراجعه كنيد.
توجه: اگر از تأييد صحت دو مرحله اي با Gmail استفاده مي كنيد ، بايد يك رمزعبور app براي Zabbix توليد كنيد. لازم نيست آن را به خاطر بسپاريد ، فقط بايد يك بار رمز عبور برنامه را هنگام تنظيم وارد كنيد. در مركز راهنمايي Google دستورالعملهايي درباره نحوه توليد اين رمز عبور پيدا خواهيد كرد.
همچنين مي توانيد قالب پيام — html يا متن ساده را انتخاب كنيد. در آخر ، بر روي دكمه Update در پايين فرم كليك كنيد تا پارامترهاي ايميل به روز شود.
اكنون يك كاربر جديد ايجاد كنيد. در نوار پيمايش بالا روي Administrator و سپس Users كليك كنيد. ليست كاربران را مشاهده خواهيد كرد. سپس بر روي دكمه Create user در گوشه سمت راست بالاي صفحه كليك كنيد. با اين كار صفحه پيكربندي كاربر باز مي شود.
نام كاربري جديد را در قسمت Alias وارد كرده و رمزعبور جديدي تنظيم كنيد. در مرحله بعد كاربر را به گروه administrator اضافه كنيد. Zabbix administrators را در قسمت Groups تايپ كرده و آن را از ليست پيشنهادي انتخاب كنيد.
پس از افزودن گروه ، بر روي تب Media كليك كرده و روي لينك Add كه زير آن خط كشيده شده كليك كنيد. يك پنجره pop-up مشاهده خواهيد كرد.
آدرس ايميل خود را در قسمت Send to وارد كنيد. مي توانيد بقيه گزينه ها را روي مقادير پيش فرض بگذاريد. براي ارسال ، روي دكمه add در پايين كليك كنيد.
اكنون به سربرگ Permissions برويد.Zabbix Super Admin را از منوي كشويي نوع كاربر انتخاب كنيد.
در آخر ، بر روي دكمه Add در پايين فرم كليك كنيد تا كاربر ايجاد شود.
اكنون بايد اعلان ها را فعال كنيد. بر روي تب Configuration و سپس Actions در نوار پيمايش بالا كليك كنيد. عملكردي از پيش تنظيم شده را مشاهده خواهيد كرد ، كه وظيفه ارسال اعلان ها به همه ادمين هاي Zabbix را بر عهده دارد. مي توانيد تنظيمات را با كليك روي نام آن بررسي و تغيير دهيد. براي اهداف اين آموزش از پارامترهاي پيش فرض استفاده كنيد. براي فعال كردن اين عمل ، بر روي لينك قرمز Disabled در ستون Status كليك كنيد.
اكنون آماده دريافت هشدار هستيد. در مرحله بعدي ، يك مورد را آزمايش مي كنيد تا تنظيم اعلان خود بررسي نماييد.
مرحله 8 – ايجاد هشدار آزمايشي
در اين مرحله ، براي اطمينان از اتصال همه موارد ، يك هشدار تست توليد مي كنيد. به طور پيش فرض ، Zabbix مقدار فضاي ديسك خالي روي سرور مجازي شما را پيگيري مي كند. به طور خودكار تمام ديسك هاي قرار داده شده را شناسايي ميكند و بررسي هاي مربوطه را اضافه مي كند. اين شناسايي هر ساعت اجرا مي شود ، بنابراين بايد مدت زماني صبر كنيد تا اعلان شروع شود.
يك فايل موقت ايجاد كنيد كه به اندازه كافي بزرگ باشد تا هشدار استفاده از سيستم فايل Zabbix را فعال كند. براي اين كار ، اگر هنوز به سيستم متصل نشده ايد ، به سرور مجازي Ubuntu دوم خود وارد شويد.
⦁ $ ssh sammy@second_ubuntu_server_ip_address
⦁
در مرحله بعد مشخص كنيد كه چه مقدار فضاي خالي روي سرور مجازي داريد. براي اين كار مي توانيد از دستور df استفاده كنيد:
⦁ $ df -h
⦁
دستور df ميزان استفاده از فضاي ديسك سيستم فايل شما را گزارش مي كند ، و -h باعث مي شود كه خروجي قابل خواندن باشد. خروجي مانند زير را مشاهده خواهيد كرد:
Output
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 25G 1.2G 23G 5% /
در اين حالت فضاي آزاد 23 گيگابايت است. فضاي آزاد شما ممكن است متفاوت باشد.
از دستور fallocate استفاده كنيد ، كه به شما امكان مي دهد فضاي اختصاصي را به يك فايل اختصاص بدهيد يا ندهيد، تا فايلي ايجاد كنيد كه بيش از 80٪ فضاي موجود ديسك را داشته باشد. اين كار براي ايجاد هشدار كافي خواهد بود:
⦁ $ fallocate -l 20G /tmp/temp.img
⦁
Zabbix پس از گذشت حدود يك ساعت ، هشداري در مورد ميزان فضاي خالي ديسك ارائه مي كند و عملي را كه پيكربندي كرده ايد ، اجرا مي كند كه پيامي را ارسال خواهد كرد. مي توانيد صندوق ورودي خود را براي دريافت پيام از سرور مجازي Zabbix بررسي كنيد. پيامي مانند خواهيد ديد:
Output
Problem started at 10:37:54 on 2019.04.05
Problem name: Free disk space is less than 20% on volume /
Host: Second Ubuntu server
Severity: Warning
Original problem ID: 34
همچنين مي توانيد براي مشاهده نوتيفيكيشن و جزئيات آن به سربرگ Monitoring و سپس Dashboard برويد.
اكنون كه مي دانيد هشدارها كار مي كنند ، فايل موقت ايجاد شده را حذف كنيد تا بتوانيد فضاي ديسك خود را دوباره پس بگيريد:
⦁ $ rm -f /tmp/temp.img
⦁
پس از يك دقيقه Zabbix پيام بازيابي را ارسال مي كند و هشدار از داشبورد اصلي ناپديد مي شود.
نتيجه
در اين آموزش يك راه حل ساده و ايمن براي نظارت تنظيم كرديد كه به شما در نظارت بر وضعيت سرور مجازي هاي تان كمك مي كند. اكنون مي تواند مشكلات را به شما هشدار دهد ، و شما اين فرصت را داريد كه فرآيندهاي رخ داده در زيرساخت IT خود را تجزيه و تحليل كنيد.
براي كسب اطلاعات بيشتر درباره راه اندازي زيرساخت هاي نظارتي ، راهنماي نحوه نصب Elasticsearch ، Logstash و Kibana (Elastic Stack) در Ubuntu 18.04 و مقاله نحوه جمع آوري معيارهاي زيرساخت با Metricbeat در Ubuntu 18.04 را بررسي كنيد.
از اين لينك ها زير مي توانيد آمورش هاي بيشتري براي لينوكس پيدا كنيد :
استفاده از nsh براي دستورات از راه دور اوبونتو 18 – ميزباني وب سايت با Caddy اوبونتو 18
تنظيم سرور ذخيره سازي آبجكت با استفاده از Minio در اوبونتو 18 – ضبط و اشتراك گذاري ترمينال با Terminalizer اوبونتو
تنظيم مسيريابي شرطي و پاسخگو با React Router v4 – ايجاد يك URL كوتاه كننده با Django و GraphQL
يك برنامه رديابي سلامت را با React ،GraphQL و Okta – ساخت برنامه ******** زمان حقيقي React و GraphQL
به روزرساني فيلترهاي مرتب سازي Angular (زاويه اي) – با استفاده از React ، Superagent و API اينستاگرام
نحوه ساختن يك برنامه جهاني با Nuxt.js و Django – دكمه دانلود با ريزتعاملات با CSS ، anime.js و segment.js
نحوه اضافه كردن عكسهاي پيشرفته در Node و Express – با Vue ،GraphQL و Apollo Client يك وبلاگ ساخت
يك برنامه SSR با روتر Preact ، Unistore و Preact بسازيد – ساخت برنامه هاي وب پيشرونده با Angular
اشكال زدايي JavaScript در توليد با نقشه هاي منبع – مي توان با Koa برنامه “سلام جهاني” ساخت
ساختن يك برنامه با Node ، React ، Okta – مديريت حالت فرم در React با Redux Form
نحوه تنظيم Laravel ، Nginx و MySQL – ارتقاء از AngularJS به Angular با ngUpgrade
استفاده از ويژوال استوديو از راه دور – احراز هويت API با JSON Web Tokens و Passport
راه اندازي يك پروژه React با Parcel – ايجاد Swiper مانند Netflix را در Vue
ساختن يك ربات تلگرام با Laravel و BotMan – استفاده از map، filter، و reduce در جاوااسكريپت
چگونه مي توان موتور جستجوي زمان واقعي را با Vue – ساختن سيستم مستندات (Documentation) با Vue و VuePress
استفاده از اشتراك زنده با كد ويژوال استوديو – ساخت يك مقياس اندازه گيري قدرت رمز عبور را در React
شروع عملي GraphQL با Node.js و Express – ساخت يك برنامه آب و هوا در Django
نحوه نصب Discourse روي Ubuntu 18 – تأييد رمز عبور با استفاده از درخواست فرم Laravel
نحوه نصب MySQL در CentOS 8 – استفاده از پسوند PDO PHP براي انجام تراكنش MySQL
نصب و پيكربندي SNMP Daemon و Client در Ubuntu 18 – نصب Linux، Nginx، MariaDB،PHP در Debian 10
كلمات كليدي خريد سرور
خريد vps – خريد سرور مجازي – خريد سرور – سرور هلند – فروش vps – سرور مجازي آمريكا – خريدvps – سرور مجازي هلند – فروش سرور مجازي – سرور آمريكا – vps – سرور مجازي انگليس – سرور مجازي آلمان – سرور مجازي كانادا – خريد vps آمريكا – خريد وي پي اس – سرور – خريد سرور مجازي هلند – vps خريد – سرور مجازي فرانسه – سرور مجازي هلند – خريد vps آمريكا – خريد سرور مجازي ارزان هلند – vps – خريد vps هلند – خريد سرور مجازي آمريكا – خريد vps فرانسه – تست vps – سرور مجازي تست – سرور مجازي ويندوز – ارزانترين vps – خريد وي پي اس – vps ارزان –
برچسبها:Dashboard, Logstash, Metricbeat, Monitoring,