شما برای مطالعه این مقاله فقط 10 دقیقه وقت نیاز دارید

نصب و راه اندازی زبیکس

نحوه نصب و راه اندازی نرم افزار مانیتورینگ zabbix در اوبونتو

4/5 - (2 امتیاز)

اگر بخواهیم یکی از نرم افزار های محبوب برای مانیتورینگ را معرفی کنیم، بی شک zabbix را خدمت شما معرفی خواهیم کرد. Zabbix یکی از نرم افزار های متن باز است که قادر است پارامتر های دستگاه های شبکه، سیستم ها و برنامه های شما را جمع آوری کند و از فعالیت ها و عملکردهای آنان مطمئن شود. zabbix این توانایی را دارد که پس از بررسی کردن موارد گفته شده، در صورتی که مشکلی وجود داشت، هشدار دهد.

نرم افزار زبیکس مناسب کسانی است که از سرور لینوکس استفاده می کنند و می خواهند تا به راحتی سرورهایشان را مدیریت کنند.

اگر می خواهید از این نرم افزار برای مانیتورینگ استفاده کنید، می توانید هم با agent و هم بدون agent این کار را انجام دهید. شما می توانید agent زابیکس را روی سیستم عامل های مختلف اجرا کنید. از جمله سیستم عامل هایی که می توانید روی آن ها اجرا کنید، می توان به موارد زیر اشاره کرد:

  • Linux
  • UNIX
  • macOS
  • Windows
  • و…

اما ما می خواهیم در این مقاله نحوه نصب و راه اندازی نرم افزار مانیتورینگ zabbix در اوبونتو را به شما آموزش دهیم. البته این کار را به کمک MySQL انجام خواهیم داد که به عنوان پشتیبانی پایگاه داده در نظر گرفته می شود. پس اگر شما هم می خواهید از این نرم افزار برای مانیتورینگ سرور استفاده کنید، همراه ما باشید.

پیش نیاز های لازم برای نصب و راه اندازی zabbix

در این قسمت می خواهیم مواردی که نیاز دارید تا به کمک آن zabbix را نصب کنید، معرفی کنیم. اولین چیزی که باید وجود داشته باشد، دسترسی sudo است؛ پس قبل از هرچیزی، این اطمینان را داشته باشید که از دسترسی sudo برای ورود به سایت استفاده کرده اید.

یک پایگاه داده MySQL ایجاد کنید

نرم افزار zabbix هم از MySQL/MariaDB و هم از PostgreSQL پشتیبانی می کند، اما می خواهیم از MySQL به عنوان پشتیبانی پایگاه داده استفاده کنیم. در صورتی که MySQL روی سرور اوبونتو شما نصب نشده است، دستورالعمل هایی که در پایین برایتان آورده ایم را دنبال کنید تا آن را نصب کنید. دستور زیر را وارد کنید و به کمک آن وارد MySQL shell شوید.

$ sudo mysql

دستور زیر را وارد کنید تا با کمک آن از داخل MySQL shell یک پایگاه داده جدید ایجاد کنید.

mysql> CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;

پس از آن که این مرحله را هم انجام دادید، از دستور زیر استفاده کنید و یک حساب کاربری MySQL ایجاد کنید و اجازه دسترسی به پایگاه داده را بدهید. البته در نظر داشته باشید که به جای عبارت change-with-strong-password که در کد آورده ایم، یک رمز عبور قوی قرار دهید.

Mysql> GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'change-with-strong-password';

پس از انجام این مرحله، باید به کمک کد زیر، از MySQL خارج شوید.

Mysql> EXIT;

زبیکس را روی ubuntu نصب کنید

برای آن که بتوانید از آخرین نسخه zabbix استفاده کنید، ما نصب آن را از منابع رسمی خود زبیکس برایتان آورده ایم.

wget <a href="https://repo.zabbix.com/zabbix/6.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.2-2%2Bubuntu22.04_all.deb">https://repo.zabbix.com/zabbix/6.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.2-2%2Bubuntu22.04_all.deb</a>

پس از آن که کار دانلودتان تمام شد، برای آن که منبع زبیکس را روی سیستم اوبونتو خودتان قرار دهید، دستور زیر را وارد کنید:

$ sudo apt install ./ zabbix-release_6.2-2%2Bubuntu22.04_all.deb

از دستور زیر برای آپدیت فهرست پکیج و نصب Zabbix server،Web frontened با پشتیبانی پایگاه‌داده، Zabbix agent را انجام دهید:

$ sudo apt update
$ sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

مزیتی که این دستور دارد، این است که آپاچی، PHP و ماژول های دیگر را هم نصب می کند.

چگونه PHP را برای frontend Zabbix پیکربندی کنیم؟

در طی فرایند نصب، یک فایل پیکربندی آپاچی ایجاد می شود که تنظیمات لازم برای آپاچی و PHP را دارا است. تنها کاری که شما باید انجام دهید، این است که تغییرات کوچکی انجام دهید و منطقه زمانی مناسب را تنظیم کنید. بهتر است این فایل پیکربندی را باز کنید و خط موقعیت زمانی را تغییر دهید و آن را به موقعیت زمانی خودتان شخصی سازی کنید.

/etc/apache2/conf-enabled/zabbix.conf ... <IfModule mod_php7.c> 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 max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Iran/Tehran </IfModule> ...

پس از آن که کارتان تمام شد، فایل پیکربندی را ذخیره کنید و سرویس آپاچی را راه اندازی مجدد کنید تا با تنظیمات جدید شروع کنید.

پکیج نصب zabbix یک فایل dump است که یک ساختار اولیه و داده برای سرور زبیکس یا MySQL دارد.

کد زیر برای dump فایل MySQL است:

$ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

 

پس از آن که فعال سازی را به پایان رساندید، باید رمزکاربری که در مراحل قبلی ایجاد کرده اید را وارد کنید. البته توجه داشته باشید در صورتی که این کار موفقیت آمیز باشد، به شما خروجی نشان داده نمی شود.

پس از آن که این مرحله را طی کردید، باید فایل پیکربندی zabbix را ویرایش کنید و تنظیم پسورد پایگاه داده را نیز انجام دهید.

فایل پیکربندی را در ویرایشگرتان باز کنید.

$ sudo nano /etc/zabbix/zabbix_server.conf

بخش زیر را پیدا کنید و قسمت DBPassword را uncomment کنید و پسورد پایگاه داده را هم به آن بیافزایید.

/etc/zabbix/zabbix_server.conf
...
### Option: DBPassword
#  Database password.
#  Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=change-with-strong-password
...

فایل را سیو کنید و پس از آن، را ببندید.

سرور زبیکس و تمام سرویس های agents را راه اندازی مجدد کنید و تنظیم کنید تا در زمان بوت شدن سیستم، کارشان را شروع کنند.

$ sudo systemctl restart zabbix-server zabbix-agent
$ sudo systemctl enable zabbix-server zabbix-agent

برای آن که از فعال بودن سرور اطمینان حاص کنید، از دستور زیر استفاده کنید.

$ sudo systemctl status zabbix-server

پس از آن، خروجی مشابه با خروجی زیر را مشاهده کنید.

zabbix-server.service - Zabbix Server
Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-11-29 03:30:44 PST; 43s ago
Main PID: 14293 (zabbix_server)
Tasks: 34 (limit: 2319)
CGroup: /system.slice/zabbix-server.service
...

چگونه نصب و پیکربندی frontend زبیکس را انجام دهیم؟

رابط شبکه zabbix توسط PHP نوشته شده است و این امکان را می دهد که بتوانید سرور را پیکربندی کنید و داده هایی که جمع آوری شده اند را مشاهده کنید و سرورهایی که می خواهید آن ها را مانیتور کنید را بیافزایید.

پیش از آن که استفاده از رابط شبکه را شروع کنید، ابتدا آن را نصب کنید.

مرورگری که استفاده می کنید را باز کنید و نام دامنه یا public IP address را با زبیکس در ادامه دستور تایپ کنید، یعنی به صورت زیر:

http(s)://your_domain_or_ip_address/zabbix

پس از آن که این مراحل را انجام دادید، با یک پیغام خوش آمدگویی مواجه خواهید شد؛ در این مرحله کاری که باید انجام دهید، این است که روی Next step کلیک کنید و به ادامه مراحل بپردازید.

پس از آن که این مرحله را هم پشت سر گذاشتید، اطلاعات زیر را مشاهده می کند که تمام پیش نیازهای PHP را برای اجرا کردن frontend زبیکس را به صورت فهرست وار نشان می دهد.

در این مرحله کاری که شما باید انجام دهید، این است که مقادیری که در این جدول وجود دارد را اوکی کنید. شما می توانید به پایین صفحه بروید و تایید تنظیم بودن موارد را انجام دهید و به مرحله بعدی بروید.

نصب و پیکربندی زبیکس

در صفحه بعدی که برایتان باز می شود، از شما خواسته می شود تا اطلاعات متصل شدن به پایگاه داده را وارد کنید. تمام این ها را قبلا ایجاد کرده اید و کافیست که در این قسمت وارد کنید.

نصب و پیکربندی زبیکس

در اسمی که برای سرورتان انتخاب می کنید، کاملا مختار هستید. در صورتی که تعداد سرورهای مانتیورینگ زبیکس شما بیشتر از یک عدد است، نام سرور زبیکس خودتان را انتخاب کنید و برای ادامه مراحل، روی گزینه Next step کلیک کنید.

انتخاب نام سرور زبیکس

در صفحه بعدی خلاصه اطلاعاتی که از قبل نصب شده اند، به شما نشان داده خواهد شد.

نصب و پیکربندی زبیکس

بر روی گزینه Next step کلیک کنید و پس از آن که نصب تکمیل شد، به صفحه ای هدایت می شوید که نصب شدن رابط شبکه زبیکس را اطلاع می دهد. روی گزینه Finish کلیک کنید تا به صفحه لاگین زبیکس خودتان دسترسی داشته باشید.

در این بخش در نظر داشته باشید که کاربر به صورت پیش فرض Admin است و گذرواژه zabbix است. username و password را وارد کنید و Sign in را بزنید.

نصب و راه اندازی زبیکس

زمانی که وارد سیستم شوید، به داشبورد مدیریت انتقال پیدا می کنید. از اینجا شما می توانید شخصی سازی نصب زبیکس را شروع کنید و سرورهای جدید را هم اضافه کنید. اولین کاری که باید انجام دهید، این است که رمز عبورتان را تغییر دهید. برای انجام این کار باید روی آیکون پروفایلی که در بالای صفحه است کلیک کنید و به صفحه پروفایل کاربر وارد شوید.

Host جدید را به سرور زبیکس اضافه کنید

برای افزودن Host جدید، برای مانیتورینگ سرور، دو مرحله پیش رو دارید: اول این که باید agent زبیکس را روی Host از راه دور نصب کنید و پس از آن Host را به وسیله رابط شبکه وارد سرور زبیکس کنید.

نصب کردن agent زبیکس

ابتدا کد زیر را وارد کنید.

$ wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/ zabbix-release_6.2-2%2Bubuntu22.04_all.deb
$ sudo apt install ./ zabbix-release_6.2-2%2Bubuntu22.04_all.deb

از کد زیر استفاده کنید و پکیج را آپدیت کنید و agent زبیکس را نصب کنید.

$ sudo apt update
$ sudo apt install zabbix-agent

برای فعال کردن Zabbix repository از دستورهایی که در زیر برایتان می آوریم، استفاده کنید.

Zabbix از دو روش برای رمزگذاری ارتباط سرور-کلاینت پشتیبانی می کند:

  • certificate-based encryption
  • Preshared Key (PSK)

اما ما اینجا از گزینه دوم یعنی Preshared Key (PSK) برای برقراری ارتباط بین سرور و agent استفاده می کنیم. برای آن که یک PSK ایجاد کنید، از دستور زیر استفاده کنید و آن را در یک فایل ذخیره کنید:

$ openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agentd.psk

کلید PSK شبیه کامند زیر خواهد بود:

output

fc3077ed3db8589ec920ac98a7ddea96aca205eb63bbd29c66ae91743a7ecbb6

فایل متعلق به پیکربندی agent زبیکس را باز کنید:

$ sudo nano /etc/zabbix/zabbix_agentd.conf

پس از آن که IP سرور را پیدا کردید، مقدار پیش فرض را به IP سرور Zabbix تغییر دهید:

/etc/zabbix/zabbix_agentd.conf
... ### Option: Server #  List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies. #  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 #  and '::/0' will allow any IPv4 or IPv6 address. #  '0.0.0.0/0' can be used to allow any IPv4 address. #  Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com # # Mandatory: yes, if StartAgents is not explicitly set to 0 # Default: # Server= Server=127.0.0.1 ...

کاری که در این مرحله باید انجام دهید، این است که گزینه TSLConnect را پیدا کنید و وضعیت آن را به uncomment تغییر دهید و آن را روی PSK تنظیم کنید.

/etc/zabbix/zabbix_agentd.conf

...

### Option: TLSConnect

#  How the agent should connect to server or proxy. 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=psk

...

در اینجا هم باید گزینه TLSAccept را پیدا کنید و وضعیت آن را به uncomment تغییر دهید و آن را روی PSK تنظیم کنید.

/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=psk ...

پس از آن که کاری که گفتیم را انجام دادید، گزینه TLSPSKIdentity را پیدا کنید و آن را مانند مراحل قبلی uncomment کنید و روی PSK 001 تنظیم کنید. دقت کنید که مقدار آن باید string منحصر به فردی باشد.

/etc/zabbix/zabbix_agentd.conf

...

### Option: TLSPSKIdentity

#  Unique, case sensitive string used to identify the pre-shared key.

#

# Mandatory: no

# Default:

TLSPSKIdentity=PSK 001

...

تنها یک مورد دیگر مانده است: گزینه TLSPSKFile را پیدا کنید و آن را هم uncomment کنید و آن را بر فایل PSK که در مراحل پیشین ایجاد کرده اید، تنظیم کنید.

/etc/zabbix/zabbix_agentd.conf ... ### Option: TLSPSKFile #  Full pathname of a file containing the pre-shared key. # # Mandatory: no # Default: TLSPSKFile=/etc/zabbix/zabbix_agentd.psk ...

اکنون فایل را ذخیره سازی کنید و از آن خارج شوید.

داستان به اینجا ختم نمی شود، بلکه در این بخش هم باید یک سری کارها را انجام دهید. برای مثال سرویس agent زبیکس را استارت کنید و تنظیمات آن را مشخص کنید تا در زمان بوت، آغاز شود.

$ sudo systemctl start zabbix-agent

$ sudo systemctl enable zabbix-agent

در این مرحله باید یک قانون فایروالی را تعیین کنید که ترافیک از سرور Zabbix شما روی پورت 10050 TCP فعال کند.

اگر از ufw برای مدیریت فایروال خودتان استفاده می کنید و می خواهید تا اجازه دسترسی از آدرس IP 192.168.121.70 صادر کنید، می توانید این کار را از طریق دستور زیر انجام دهید:

$ sudo ufw allow proto tcp from 192.168.121.70 to any port 10050

سرور جدید ثبت کنید

خب تا اینجا نصب و پیکربندی agent را روی سروری که قصد مانتیورینگ آن را داشتیم، انجام دادیم. کاری که باید اکنون باید انجام دهیم این است که ثبت سرور در زبیکس را انجام دهیم.

در رابط شبکه سرور Zabbix با کاربر ادمین وارد سیستم شوید.

http(s)://your_domain_or_ip_address/zabbix

پس از آن که به سیستم وارد شدید، در قسمت نوار منوی بالایی، روی قسمت Configuration و سپس روی host کلیک کنید.

در گوشه بالایی سمت راست روی گزینه Create host راست کلیک کنید تا صفحه راه اندازی سرور باز شود.

نام سرور، آدرس IP سروری که می خواهید آن را مانیتور کنید را وارد کنید. از لیست گروه ها، گروهی را انتخاب کنید و سرور را در یک یا چند تا از آن ها اضافه کنید. شما می توانید یک گروه جدید باز کنید و یک نام برای آن انتخاب کنید. نامی که می توانید انتخاب کنید، Linux Servers است.

پس از آن که این کار را انجام دادید، روی نوار Templates کلیک کنید و گزینه Template OS Linux را انتخاب کنید. پس از این مرحله، روی اد کلیک کنید تا template را به سرور اضافه کنید. حالا روی نوار Encryption کلیک کنید. به این موضوع توجه کنید که برای Connections to host و Connections from host PSK را انتخاب کنید.

مقدار PSK identity را روی PSK 001 تنظیم کنید.

در فیلد PSK value که ثبت شده است، کلید ایجاد شده برای agent زبیکس که در فایل  /etc/zabbix/zabbix_agentd.pskذخیره شده است را وارد کنید.

و در نهایت شما باید برای اضافه کردن سرور، روی گزینه آبی رنگ اد کلیک کنید.

سخن آخر

احتمالا تا این مقاله به پایان برسد و شما نصب و راه اندازی را انجام دهید، خسته شده اید! اما همانطور که می بینید، به راحتی موفق به نصب و راه اندازی نرم افزار زبیکس در اوبونتو شدید و یاد گرفتید که چگونه سرور های جدید را باید اضافه کنید.

در صورتی که نصب را انجام دادید، اما با ارور مواجه شدید، با ما در کامنت ها مطرح کنید تا در سریع ترین زمان پاسخ دهیم و به شما کمک کنیم تا نصب را به پایان برسانید. اگر این مقاله برایتان مفید بود، با به اشتراک گذاری آن، به در شدن خستگی ما کمک کنید!

 

سوالات متدوال:

بله؛ زبیکس یکی از نرم افزار های مانیتورینگ سرور است که متن باز است.

مطالب مشابهی که شاید علاقمند باشید

32 تا حرف داریم ولی باهاش می تونیم حرف بزنیم، ارتباط برقرار کنیم، آثار هنری خلق کنیم، آموزش بدیم، محبت کنیم، نفرت بورزیم و... برای همین دنیای کلمات، برای من جذاب ترین دنیاست. منم تصمیم گرفتم نویسنده بشم تا با 32 تا حرف فارسی، کلی مقاله آموزشی بنویسم و هم معلم باشم و هم نویسنده. سعی می کنم ساده و روان بنویسم تا هیچوقت از یاد گرفتن خسته نشید و لذت ببرید.

دیدگاه های شما

2 دی 1401
محمد

سلام ممنون از مطلب خوبتون آخرین نسخه زبیکس رو روی ubuntu 22.04 نصب کردم. در مرحله apt update دو خطا داره Err:5 https://repo.zabbix.com/zabbix-agent2-plugins/1/ubuntu jammy InRelease Could not wait for server fd - select (11: Resource temporarily unavailable) [IP: 50.7.134.35 443] Err:6 https://repo.zabbix.com/zabbix/6.2/ubuntu jammy InRelease Could not wait for server fd - select (11: Resource temporarily unavailable) [IP: 50.7.134.35 443] و در مرحله apt install zabbix-server-mysql zabbix-apache-conf خطا میده: unable to locate package zabbix-apache-conf unable to locate packeage zabbix-sql-scripts نسخه ubuntu 22.04 jammy و ubuntu arm 64 تست کردم فقط روی همین دوتا SQL و apache ارور میده بقیه بخش ها نصب شد لطفا راهنمایی کنید ممنون

    4 دی 1401
    مارال آزاد

    سلام. همانطور که از خطا مشخص هست، در زمان نصب شما ظاهرا ریپازیتوری(سرورهای دانلود) zabbix در دسترس نبوده است! لطفا مجدد و در بازه زمانی دیگری تست بفرمایید

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید