diff --git a/Install_Zabbix_Server_4.2.html b/Install_Zabbix_Server_4.2.html new file mode 100644 index 0000000..829c004 --- /dev/null +++ b/Install_Zabbix_Server_4.2.html @@ -0,0 +1,276 @@ + + Install Zabbix Server 4.2 + + + + + + +
+

+Развертывание сервера с свободной системой мониторинга статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования Zabbix на ОС Linux CentOS 7 +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +Все описанные ниже действия выполнялись под пользователем root +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +Всем привет! Для реализации данного проекта мне потребовалось: +1) Прописать статические IP-адреса; +2) Обновить пакеты ОС Linux CentOS 7 до последней версии; +3) Отключить систему принудительного контроля доступа SELinux; +4) Установить дополнительный Epel-репозиторий; +5) Установить репозиторий Zabbix Server 4.2; +6) Установить пакеты Zabbix Server-а; +7) Установить и запустить сервис синхронизации времени; +8) Настроить брандмауэр; +9) Установить и настроить БД; +10) Установить и настроить Web-сервер Nginx; +11) Установить и настроить PHP. Установить дополнительные компоненты для PHP. Установить Nano; +12) Настроить совместнуб работу Nginx и PHP; +13) Создать и настроить БД; +14) Настроить конфигурационный файл Zabbix; +15) Запустить Zabbix Server; +16) Настроить Nginx; +17) Настроить Zabbix через Zabbix Web. +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +Предисловие: +------------ +Nano — это консольный текстовый редактор для UNIX и Unix-подобных операционных систем, основанный на библиотеке curses и распространяемый под лицензией GNU GPL. +------------ +SELinux — реализация системы принудительного контроля доступа, которая может работать параллельно с классической избирательной системой контроля доступа. +------------ +EPEL (Extra Packages for Enterprise Linux) ― это открытое бесплатное хранилище пакетов от Fedora. Оно содержит пакеты дополнительного программного обеспечения +для Linux. Пакеты этого репозитория не конфликтуют с пакетами RHEL, поэтому этот репозиторий самый безопасный в использовании для CentOS. +------------ +NMTUI — это инструмент командной строки, который используется для настройки сети в системах Gnu / Linux. При запуске он вызывает графический текстовый +интерфейс, который помогает пользователям легко и эффективно настраивать сетевые интерфейсы. +------------ +Zabbix — это свободная система мониторинга статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования. +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +1) Для избежания потери связи с АРМ/VM, нужно позаботиться о статической IP-адресации. Её можно настроить как на самой АРМ/VM, так и на самом сетевом +устройстве. Статическую адресацию можно прописать с помощью инструмента командной строки nmtui. +------------ +yum install -y NetworkManager-tui |#|#| Установка пакета "nmtui" для настройки сети на АРМ/VM +------------ +Гайд по тому, как пользоваться инструментом nmtui, вы можете посмотреть в интернете. +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +2) Обновление пакетов системы. +------------ +yum update -y && yum upgrade -y |#|#| Поиск и обновление пакетов системы +------------ +reboot |#|#| Команда для перезагрузки АРМ/VM +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +3) Отключение системы принудительного контроля доступа SELinux. +------------ +setenforce 0 |#|#| Команда для отключения SELinux в текущий момент +------------ +sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config |#|#| Команда для отключения SELinux на постоянную основу +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +4) Установка Epel-репозитория. +------------ +yum install -y epel-release |#|#| Команда для подключения Epel-репозитория +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +5) Установка репозитория Zabbix Server 4.2. +------------ +yum install -y https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-2.el7.noarch.rpm |#|#| Команда для подключения Zabbix-репозитория +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +6) Установка пакетов Zabbix Server-а. +------------ +yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get |#|#| Команда установки пакетов Zabbix Server-а +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +7) Установка и запуск сервиса синхронизации времени. +------------ +yum install -y chrony |#|#| Команда для установка пакета Chrony +------------ +systemctl enable chronyd |#|#| Команда для добавления службы Chrony в автозагрузку +------------ +systemctl start chronyd |#|#| Команда для запуска службы Chrony +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +8) Настройка брандмауэра. +------------ +firewall-cmd --permanent --add-port={80/tcp,443/tcp,10051/tcp,10050/tcp,10050/udp,10051/udp} |#|#| Команда для открытия tcp-портов: 80, 443, 10051, 10050 и udp-портов: 10050, 10051 +------------ +firewall-cmd --reload |#|#| Команда для перезапуска файрвола и применения всех изменений +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +9) Установка и настройка БД. +------------ +yum install -y mariadb mariadb-server |#|#| Команда для установки пакетов "Mariadb" и "Mariadb-Server" +------------ +systemctl enable mariadb |#|#| Команда для добавления службы Mariadb в автозагрузку +------------ +systemctl start mariadb<>/a |#|#| Команда для запуска службы Mariadb +------------ +mysqladmin -u root password |#|#| Команда для создания пароля для суперпользователя СУБД +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +10) Установка и настройка Web-сервера Nginx. +------------ +yum install nginx |#|#| Команда для установки пакета Nginx +------------ +systemctl enable nginx |#|#| Команда для добавления службы Nginx в автозагрузку +------------ +systemctl start nginx |#|#| Команда для запуска службы Nginx +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +11) Установка и настройка PHP. Установка дополнительных компонентов для PHP. Установка Nano. +------------ +yum install -y php php-fpm php-mysql php-pear php-cgi php-common php-ldap php-mbstring php-snmp php-gd php-xml php-gettext php-bcmath |#|#| Команда для установки пакета "PHP" и дополнительных пакетов для корректной работы "PHP" +------------ +yum install -y nano |#|#| Команда для установки пакета консольного текстового редактора Nano +------------ +nano /etc/php.ini |#|#| Команда для открытия файла "php.ini" в текстовом редакторе Nano +------------ +Приведите прописанные ниже строки в файле "php.ini" к следующему виду: + +date.timezone = "Asia/Yekaterinburg" +max_execution_time = 300 +post_max_size = 16M +max_input_time = 300 +max_input_vars = 10000 +------------ +systemctl enable php-fpm |#|#| Команда для добавления службы "php-fpm" в автозагрузку +------------ +systemctl start php-fpm |#|#| Команда для запуска службы "php-fpm" +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +12) Настройка совместной работы Nginx и PHP. +------------ +nano /etc/nginx/nginx.conf |#|#| Команда для открытия файла nginx.conf в текстовом редакторе Nano +------------ +Приведите раздел "server" в файле "nginx.conf" к следующему виду: + +server { + listen 80 default_server; + server_name _; + set $root_path /usr/share/nginx/html; + + root $root_path; + + location / { + index index.php; + } + + location ~ \.php$ { + fastcgi_pass 127.0.0.1:9000; + fastcgi_buffer_size 32k; + fastcgi_buffers 4 32k; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name; + include fastcgi_params; + fastcgi_param DOCUMENT_ROOT $root_path; + fastcgi_read_timeout 300; + } +} +------------ +nginx -t |#|#| Команда для проверки коррекности настроенной конфигурации Nginx +------------ +systemctl restart nginx |#|#| Команда для перезапуска службы Nginx +------------ +cd /usr/share/nginx/html |#|#| Команда для перехода в каталог "/usr/share/nginx/html" +------------ +nano index.php |#|#| Команда для создания файла "index.php" +------------ +Приведите текстовый файл "index.php" к следующему виду и не забудьте сохранить файл перед закрытием: + +<?php phpinfo(); ?> +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +13) Создание и настройка БД. +------------ +mysql -u root -p |#|#| Команда для входа в реляционную систему управления БД(При входе вводите пароль от суперпользователя СУБД) +------------ +CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; |#|#| Команда для создания БД "zabbix" +------------ +GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbixpassword'; |#|#| Команда для создания пользователя "zabbix" с паролем "zabbixpassword" +------------ +\q |#|#| Команда для выхода из реляционной системы управления БД +------------ +cd /usr/share/doc/zabbix-server-mysql-* |#|#| Команда для перехода в каталог "/usr/share/doc/zabbix-server-mysql-*" +------------ +gunzip create.sql.gz |#|#| Команда для распаковки архива с дампом базы +------------ +mysql -u root -p zabbix < create.sql |#|#| Команда для восстановления БД(При восстановлении вводите пароль от суперпользователя СУБД) +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +14) Настройка конфигурационного файла Zabbix. +------------ +nano /etc/zabbix/zabbix_server.conf |#|#| Команда для открытия файла "zabbix_server.conf" в текстовом редакторе Nano +------------ +Приведите прописанные ниже строки в файле "zabbix_server.conf" к следующему виду(имя базы и пользователя должны быть "zabbix" т.к.они созданы в "mariadb"): + +DBPassword=zabbixpassword +DBName=zabbix +DBUser=zabbix +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +15) Запуск Zabbix Server. +------------ +systemctl enable zabbix-server |#|#| Команда для добавления службы "zabbix-server" в автозагрузку +------------ +systemctl start zabbix-server |#|#| Команда для запуска службы "zabbix-server" +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +16) Настройка Nginx. +------------ +nano /etc/nginx/nginx.conf |#|#| Команда для открытия файла "nginx.conf" в текстовом редакторе Nano +------------ +Приведите строку в текстовом файле "nginx.conf" к следующему виду и не забудьте сохранить файл перед закрытием: + +set $root_path /usr/share/zabbix; +------------ +systemctl restart nginx |#|#| Команда для перезапуска службы "Nginx" +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +17) Настройка/установка Zabbix через Zabbix Web. +------------ +1. Открываете браузер и переходите по адресу http://IP-address server-a/zabbix/ — откроется страница установки Zabbix Web и нажимаем на кнопку "Next Step" +2. Далее внимательно смотрим на результаты проверки нашего Web-сервера — справа мы должны увидеть все OK. Когда все результаты будут OK, нажимаем на "Next Step" +3. Далее настройки подключения к базе оставляем как есть — дополнительно прописываем пароль, который задали при создании пользователя zabbix (в нашем случае zabbixpassword). После нажимаем "Next Step" +4. Далее в окне оставляем все как есть и нажимаем "Next Step" +5. В последнем окне мы проверяем настройки и нажимаем "Next Step" +6. После завершения установки нажимаем на кнопку "Finish" +7. Для входа в систему используйте следующие учетные данные: + +Login: Admin +Password: zabbix +-------------------------------------------------------------------------------------------------------------------------------------------------------------- +На этом инструкция закончена! Спасибо за внимание! +

+