Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up
Appearance settings
Zabbix Windows Server Backup: Save Your Data Now
In today’s world, data is everything. Every business needs to ensure the safety of their data, and that includes backing up their data regularly, so that they can restore it in case of an emergency. Zabbix Windows Server Backup is one such efficient and reliable way to backup your data. Here, we will walk you through the process of backing up your Windows server with Zabbix.
Why Windows Server Backup?
Windows Server Backup is a built-in feature in Windows servers since Windows Server 2008. It provides an easy-to-use and automated way to backup data, and it’s free! You can backup critical files, folders, system state, and the entire system image. You also have the option to schedule automatic backups, which saves time and effort.
Why Zabbix?
Zabbix is an open-source monitoring tool that helps you monitor your servers and services. It can monitor everything from servers, applications, and network devices, to your business processes. It provides detailed performance metrics and real-time alerts, so you can respond to issues quickly. It’s user-friendly and easy to set up, making it a versatile and efficient tool.
How to Backup Windows Server with Zabbix
- Step 1: Install Zabbix on your Windows Server
- Step 2: Configure Zabbix Agent
- Step 3: Add Windows Server to Zabbix Server
- Step 4: Configure Windows Server Backup
- Step 5: Monitor Your Windows Server Backup with Zabbix
Before you can start monitoring your Windows server with Zabbix, you need to install Zabbix agent on your Windows server. You can download the agent from the official website and follow the installation wizard to complete the setup.
After installation, you need to configure the Zabbix agent on your Windows server. You can edit the configuration file according to your needs, but the default configuration should work fine in most cases.
The next step is to add your Windows server to Zabbix Server. Log in to your Zabbix Server and navigate to the Configuration tab. Click on Hosts, then click on Create Host. Enter the name of your Windows server and its IP address, and select the appropriate groups and templates.
Now that your Windows server is added to Zabbix, you can configure Windows Server Backup. Launch Windows Server Backup, and follow the wizard to configure your backup settings. You can choose to backup critical files and folders, system state, and the entire system image. You also have the option to schedule automatic backups.
Once you have configured Windows Server Backup, you can monitor it through Zabbix. Navigate to the Monitoring tab and select your Windows server. Here, you can see the backup status and the backup history. You can also set up alerts to notify you in case of backup failures.
Final Thoughts
Backing up your Windows server is essential to ensuring the safety of your data. Windows Server Backup and Zabbix are two powerful tools that can help you do just that. By following these simple steps, you can backup your data efficiently and monitor it in real-time. So, don’t wait until it’s too late. Backup your Windows server with Zabbix today!
Zabbix Windows Server Backup: Все, что нужно знать
Сохранение копий данных является важной частью работы любой компании. В случае сбоя в работе сервера, они помогают быстро восстановить данные и сэкономить время и деньги компании. Существует множество программ и систем, которые могут помочь в создании резервных копий, но в этой статье мы рассмотрим, как использовать Zabbix для создания резервных копий Windows серверов.
Что такое Zabbix?
Zabbix — это программное обеспечение с открытым исходным кодом, которое используется для мониторинга сети и серверов. Оно было разработано в 1998 году и с тех пор стало одним из наиболее популярных инструментов мониторинга среди IT-специалистов. Основная задача Zabbix — это сбор данных о состоянии различных серверов и сетей, а также их анализ и отображение с помощью графиков и дашбордов.
Zabbix Windows Server Backup
Для того, чтобы использовать Zabbix для создания резервных копий Windows серверов, необходимо выполнить несколько простых шагов:
- Шаг 1: Установите на сервер Zabbix агент на Windows
- Шаг 2: Настройте контроль сервера в Zabbix
- Зайдите в Zabbix frontend и перейдите в Configuration -> Hosts.
- Нажмите кнопку Create host и введите имя сервера и IP-адрес. Выберите выключатель в положение Monitored by Zabbix agent.
- Во вкладке Templates добавьте шаблон Template OS Windows.
- Сохраните изменения.
- Шаг 3: Настройте правила резервного копирования на сервере
- Зайдите в Configuration -> Actions.
- Нажмите кнопку Create action и введите имя правила.
- В поле Condition добавьте триггер, который сработает в случае ошибки резервного копирования, например:
- В поле Operations добавьте действия, которые будут выполнены в случае срабатывания триггера. Для этого можете использовать PowerShell-скрипты:
- Сохраните изменения.
Перед тем как начать работать с Zabbix, вам понадобится установить на Windows сервер агент Zabbix. Агент собирает данные о производительности сервера и передает их в Zabbix для дальнейшего анализа. Вы можете загрузить агента Zabbix на официальном сайте разработчика:
https://www.zabbix.com/download_agents
Контроль сервера в Zabbix — это процесс, позволяющий собирать данные о состоянии сервера. Для того, чтобы настроить контроль сервера в Zabbix:
В Zabbix есть возможность создавать правила резервного копирования на Windows сервере. Для того, чтобы настроить правила резервного копирования:
Template OS Windows: system > backup errors > count(10m) > 0
Send message to user: Zabbix Admin — Backup failedRun remote command: C:\backupscript.ps1
Теперь, если на сервере возникнет ошибка резервного копирования, вы получите уведомление в Zabbix и сможете выполнить соответствующие действия.
Общий итог
Zabbix — это мощный инструмент мониторинга и контроля состояния серверов, сетей и приложений. Он позволяет создавать правила резервного копирования на Windows сервере, а также настраивать уведомления в случае ошибок. В целом, использование Zabbix для создания резервных копий Windows серверов помогает обеспечить надежность и безопасность данных компании и сэкономить время и деньги на их восстановление в случае сбоя.
Zabbix Windows Server Backup: How to Ensure Your Data is Safe
As a Windows Server administrator, you know the importance of keeping your data safe. Windows Server provides a built-in backup solution, but sometimes that’s not enough. That’s where Zabbix comes in.
What is Zabbix?
Zabbix is an open-source monitoring software that allows you to monitor and track your servers, network devices, and applications in real-time. It provides an easy-to-use web interface that lets you keep an eye on your infrastructure, and it can send alerts when something goes wrong.
Why use Zabbix for Windows Server backup?
While Windows Server’s built-in backup solution is adequate, it has limitations. For example, it only allows you to backup to a limited number of destinations, and it doesn’t provide real-time monitoring or alerts. Zabbix, on the other hand, can provide real-time monitoring of your backup process, as well as alerts if something goes wrong.
Zabbix also allows you to backup to a variety of destinations, including remote servers, cloud storage, and external hard drives. This provides you with more flexibility and helps ensure that your data is safe.
How to configure Zabbix for Windows Server backup
Configuring Zabbix for Windows Server backup is a straightforward process. Here are the steps:
- Install Zabbix on your Windows Server.
- Configure Zabbix to monitor your server by adding it to the Zabbix web interface.
- Create a backup job in Windows Server’s built-in backup solution.
- Create a Zabbix action that will send an alert if the backup job fails.
- Configure the Zabbix action to send you an email or other notification when a backup job fails.
Best practices for using Zabbix for Windows Server backup
Here are some best practices for using Zabbix for Windows Server backup:
- Monitor your backup process in real-time. This will help you identify any issues before they become critical.
- Backup to multiple destinations to ensure redundancy.
- Test your backups regularly to ensure that they can be restored.
- Use a dedicated backup server to store your backups.
- Encrypt your backups to ensure that they are secure.
Conclusion
Zabbix provides an easy-to-use solution for monitoring and tracking your Windows Server backups. It allows you to backup to a variety of destinations, monitor your backup process in real-time, and receive alerts if something goes wrong. By following best practices, you can ensure that your data is safe and always available when you need it.
Этот метод основан на активных проверках. Это означает, что отслеживаемый компьютер свяжется с Zabbix сервером самостоятельно, чтобы сообщить о состоянии резервного копирования. Убедитесь, что ваша инфраструктура настроена для работы с активными проверками!
Он работает с планировщиком задач Windows. Когда в журнале резервного копирования происходят определенные события, они отправляются на Zabbix сервер с помощью zabbix_sender.
Все необходимые файлы можно скачать здесь.
Установите шаблон AgentTrapper.WindowsBackup
Импорт файла: AgentTrapper.WindowsBackup.xml. Это создаст шаблон с именем «AgentTrapper.WindowsBackup».
В этом шаблоне есть два элемента:
- winbackup.status (статус резервного копирования): это может быть либо «Выполняется», либо «Успешно завершено».
- winbackup.lasterror (Последнее резервное копирование, аномалия произошла):
- Значение 0: с момента запуска последнего резервного копирования ошибок не было.
- Значение — это дата: дата и время появления предупреждения или ошибки.
- Этот элемент сбрасывается на 0 каждый раз при запуске нового резервного копирования.
Есть три триггера:
- A backup anomaly was logged during the last backup: появляется, когда во время последнего резервного копирования возникло предупреждение или ошибка.
- A backup has completed successfully: появляется, когда резервное копирование было успешно завершено (информационное).
- No backup status reported in last 48 hours: появляется, если winbackup.status не обновлялся в течение последних 48 часов. Если вы не делаете ежедневные резервные копии, вы можете изменить этот порог.
Установка запланированных задач
Я экспортировал запланированные задачи в файлы XML, поэтому вы можете использовать планировщик задач для их импорта. Необходимо добавить три запланированных задачи:
- ZabbixAgent_BackupStarted.xml
- Запускается при запуске резервного копирования
- Устанавливает для элемента winbackup.status значение «Выполняется».
- Сбрасывает ключ winbackup.lasterror на «0».
- ZabbixAgent_BackupCompleted.xml
- Запускается после успешного завершения резервного копирования
- Эта задача устанавливает для элемента winbackup.status значение «Успешно завершено».
- ZabbixAgent_BackupAttention.xml
- Запускается при возникновении предупреждения, ошибки или критической ошибки
- Эта задача устанавливает winbackup.lasterror на текущую дату и время.
Вам нужно будет самостоятельно изменить файлы XML перед их импортом. В частности, пути к zabbix_sender и его файлу конфигурации должны быть адаптированы к вашей ситуации. Файлы XML были созданы для моих настроек, поэтому при необходимости скорректируйте их.
Откройте файлы XML и посмотрите раздел <Actions>:
<Actions Context="Author">
<Exec>
<Command>cmd.exe</Command>
<Arguments>/E:ON /C ""C:\Program Files\Zabbix Agent\zabbix_sender.exe" -c "C:\Program Files\Zabbix Agent\zabbix_agentd.conf" -k winbackup.lasterror -s %COMPUTERNAME% -o "%Date% %Time%""</Arguments>
</Exec>
</Actions>
Обратите особое внимание на эти команды и проверьте правильность!
Table of Contents
Есть тестовый zabbix cервер который стоит на дешевом VDS работающий на обычных sata дисках.
При незначительной нагрузке iowait процессора составлял порядка 20%.
Попробуем перенести сервер на такой же дешевый VDS, но на ssd дисках.
Заодно распишем процедуру бэкапа и восстановления zabbix сервера.
Бэкап
Процесс бэкапа не сложный, надо скопировать пару директории в которых zabbix хранит настройки и свои скрипты, а так же сделать дамп бады данных.
В базе данных zabbix хранит настройки хостов за которыми он следит и полученные с элементов данных значения.
Данных в базе может скопиться быть очень много и поговаривают что если делать дамп с помощью mysqldump, то на болшьших базах время восстановления может занять дни. В данном случае резервную копию сделаем по старинке.
Так же полезно будет скопировать настройки веб сервера и ssl сертификаты
В итоге список того, что надо забэкапить будет таким:
-
Базу данных в которой zabbix хранит настройки и данные.
-
Директорию /etc/zabbix с настройками zabbix агента и сервера.
-
Директорию /usr/share/zabbix с файлами веб-интерфейса и скриптами.
-
Выборочно или целиком директорию /etc/httpd с настройками apache агента и сервера.
-
Директорию /etc/letsencrypt c ssl сертификатом.
Простой скрипт, без учета версионности и без копирования на какой-либо третий сервер.
- copy_zabbix_server.sh
-
#!/bin/bash ROPT="-v -az --delete" #RSYNC rsync $ROPT /etc/zabbix/ /backup/zabbix_server/etc_zabbix rsync $ROPT /usr/share/zabbix/ /backup/zabbix_server/usr_share_zabbix rsync $ROPT /etc/httpd/ /backup/zabbix_server/etc_httpd rsync $ROPT /etc/letsencrypt/ /backup/zabbix_server/etc_letsencrypt #STOP ZABBIX systemctl stop zabbix-server sleep 3 #MYSQLDUMP mysqldump -u USERNAME -pPASSWORD zabbix_db > /backup/zabbix_server/zabbix_db.sql #START ZABBIX systemctl start zabbix-server #TAR tar -czvf /backup/zabbix_server.tar.gz -C /backup/ zabbix_server
Восстановление
Восстанавливать zabbix можно на заранее подготовленный резервный сервер или на совсем свежий сервер.
В первом, если на резервном сервере уже установлен mysql, zabbix сервер и агент, подготовлен apache и лежит
актуальная версия бэкапа, то остается только из бэкапа полностью скопировать файлы в /etс/zabbix, /usr/share/zabbix и накатить базу данных.
Во втором случае, перед восстановлением, фактически надо сделать установку zabbix c нуля и только потом копировать файлы из бэкапа.
Рассмотрим второй случай подробнее, процесс восстановления будет состоять из следующий шагов:
-
Копируем бэкап на резервный сервер.
-
Ставим свежий mysql.
-
Восстанавливаем базу zabbix_db.
-
Ставим zabbix сервер и агента.
-
Восстанавливаем конфигурации zabbix сервера и агента.
-
Ставим apache и certbot.
-
Восстанавливаем конфигурации apache для вэб интерфейса zabbix.
Курсивом выделены шаги которые надо сделать если бы у нас уже был подготовлен резервный сервер.
Копируем бэкап
По scp копируем бэкап с server1 на server2 и разархивируем его.
[root@server2 ~]# mkdir src [root@server ~]# cd src/ [root@server2 src]# scp root@server1.mykb.ru:/backup/zabbix_server.tar.gz ./ root@server1.mykb.ru's password: zabbix_server.tar.gz 100% 22MB 10.9MB/s 00:02 [root@server2 src]# ll root@server2 src]# ll total 22380 -rw-r--r-- 1 root root 22915028 авг 4 22:45 zabbix_server.tar.gz [root@server2 src]# tar zxvf zabbix_server.tar.gz [root@server2 src]# cd zabbix_server [root@server2 zabbix_server]# ll total 63868 drwxr-xr-x 5 root root 4096 июн 19 17:59 etc_httpd drwxr-xr-x 8 root root 4096 июн 19 18:10 etc_letsencrypt drwxr-xr-x 4 root root 4096 авг 5 01:52 etc_zabbix drwxr-xr-x 13 root root 4096 июл 22 13:21 usr_share_zabbix -rw-r--r-- 1 root root 65382565 авг 5 12:14 zabbix_db.sql
Установка mysql
У нас есть свежий Centos7 на котором обновили все пакеты, включилт epel репозиторий и выключили selinux.
Ставим mysql.
[root@server2 ~]# yum install -y mariadb mariadb-server Loaded plugins: fastestmirror ... Dependencies Resolved ========================================================================================================================================================================================= Package Arch Version Repository Size ========================================================================================================================================================================================= Installing: mariadb x86_64 1:5.5.52-1.el7 base 8.7 M mariadb-server x86_64 1:5.5.52-1.el7 base 11 M Installing for dependencies: libaio x86_64 0.3.109-13.el7 base 24 k perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k perl-DBD-MySQL x86_64 4.023-5.el7 base 140 k perl-DBI x86_64 1.627-4.el7 base 802 k perl-Data-Dumper x86_64 2.145-3.el7 base 47 k perl-IO-Compress noarch 2.061-2.el7 base 260 k perl-Net-Daemon noarch 0.48-5.el7 base 51 k perl-PlRPC noarch 0.2020-14.el7 base 36 k Transaction Summary ========================================================================================================================================================================================= Install 2 Packages (+9 Dependent packages) Total download size: 21 M Installed size: 108 M ... Complete!
Включаем автозагрузку и запускаем mysql.
[root@server2 ~]# systemctl enable mariadb.service Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service. [root@server2 ~]# systemctl start mariadb
Делаем первоначальную настройку mysql.
[root@server2 ~]# /usr/bin/mysql_secure_installation
Установка mysql завершена, теперь создадим пустую бащу zabbix_db.
[root@server2 ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 10 Server version: 5.5.52-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database zabbix_db character set utf8 collate utf8_bin; Query OK, 1 row affected (0.03 sec) MariaDB [(none)]> grant all privileges on zabbix_db.* to zabbix_user@localhost identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> quit Bye
Восстановление базы данных
Заличаем базу.
[root@server2 zabbix_server]# date Сб авг 5 12:40:18 MSK 2017 [root@server2 zabbix_server]# mysql -u zabbix_user -p zabbix_db < zabbix_db.sql Enter password: [root@server2 zabbix_server]# date Сб авг 5 12:41:00 MSK 2017
База размером 65Мбайт залилась за 42 секунды.
Установка zabbix сервера и агента
Подключаем репозиторий zabbix.
[root@server2 zabbix_server]# rpm -i http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm warning: /var/tmp/rpm-tmp.bp7LnJ: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Ставим.
[root@server2 zabbix_server]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent Loaded plugins: fastestmirror ... Dependencies Resolved ========================================================================================================================================================================================= Package Arch Version Repository Size ========================================================================================================================================================================================= Installing: zabbix-agent x86_64 3.2.7-1.el7 zabbix 345 k zabbix-server-mysql x86_64 3.2.7-1.el7 zabbix 1.8 M zabbix-web-mysql noarch 3.2.7-1.el7 zabbix 5.8 k Installing for dependencies: OpenIPMI-libs x86_64 2.0.19-15.el7 base 502 k OpenIPMI-modalias x86_64 2.0.19-15.el7 base 15 k dejavu-fonts-common noarch 2.33-6.el7 base 64 k dejavu-sans-fonts noarch 2.33-6.el7 base 1.4 M fontpackages-filesystem noarch 1.44-8.el7 base 9.9 k fping x86_64 3.10-4.el7 epel 46 k iksemel x86_64 1.4-6.el7 epel 50 k libX11 x86_64 1.6.3-3.el7 base 606 k libX11-common noarch 1.6.3-3.el7 base 162 k libXau x86_64 1.0.8-2.1.el7 base 29 k libXpm x86_64 3.5.11-3.el7 base 54 k libjpeg-turbo x86_64 1.2.90-5.el7 base 134 k libpng x86_64 2:1.5.13-7.el7_2 base 213 k libtool-ltdl x86_64 2.4.2-22.el7_3 updates 49 k libxcb x86_64 1.11-4.el7 base 189 k libxslt x86_64 1.1.28-5.el7 base 242 k net-snmp-libs x86_64 1:5.7.2-24.el7_3.2 updates 747 k php-bcmath x86_64 5.4.16-42.el7 base 57 k php-gd x86_64 5.4.16-42.el7 base 127 k php-ldap x86_64 5.4.16-42.el7 base 52 k php-mbstring x86_64 5.4.16-42.el7 base 505 k php-mysql x86_64 5.4.16-42.el7 base 101 k php-pdo x86_64 5.4.16-42.el7 base 98 k php-xml x86_64 5.4.16-42.el7 base 125 k t1lib x86_64 5.1.2-14.el7 base 166 k unixODBC x86_64 2.3.1-11.el7 base 413 k zabbix-web noarch 3.2.7-1.el7 zabbix 3.7 M Transaction Summary ========================================================================================================================================================================================= Install 3 Packages (+27 Dependent packages) Total download size: 12 M Installed size: 57 M ... Complete!
Восстанавливаем конфигурации zabbix
Бэкапы конфигураций у нас лежат в директориях etc_zabbix и usr_share_zabbix.
[root@server2 zabbix_server]# ll total 63868 drwxr-xr-x 5 root root 4096 июн 19 17:59 etc_httpd drwxr-xr-x 8 root root 4096 июн 19 18:10 etc_letsencrypt drwxr-xr-x 4 root root 4096 авг 5 01:52 etc_zabbix drwxr-xr-x 13 root root 4096 июл 22 13:21 usr_share_zabbix -rw-r--r-- 1 root root 65382565 авг 5 12:14 zabbix_db.sql [root@server2 zabbix_server]# ll etc_zabbix/ total 68 drwxr-x--- 2 apache apache 4096 июл 22 13:21 web -rw-r--r-- 1 root root 10363 авг 5 01:52 zabbix_agentd.conf -rw-r--r-- 1 root root 10339 июн 11 20:10 zabbix_agentd.conf~ drwxr-xr-x 2 root root 4096 июл 22 13:25 zabbix_agentd.d -rw-r----- 1 root zabbix 14886 июн 11 19:41 zabbix_server.conf -rw-r----- 1 root root 14876 май 6 03:32 zabbix_server.conf~ -r-------- 1 zabbix zabbix 73 авг 5 01:52 zbxpsk
Копируем
[root@server2 zabbix_server]# cp -rp etc_zabbix/ /etc/zabbix/ [root@server2 zabbix_server]# cp -rp usr_share_zabbix/ /usr/share/zabbix/
Устанавливаем apache и certbot
Ставим apache c поддержкой ssl.
[root@server2 zabbix_server]# yum install httpd mod_ssl
Включаем автозагрузуку и запускаем.
[root@server2 zabbix_server]# systemctl enable httpd Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. [root@server2 zabbix_server]# systemctl start httpd
Ставим обвязку для работы с Letsencrypt.
[root@server2 zabbix_server]# yum install python2-certbot-apache Loaded plugins: fastestmirror ... Dependencies Resolved ========================================================================================================================================================================================= Package Arch Version Repository Size ========================================================================================================================================================================================= Installing: python2-certbot-apache noarch 0.14.1-1.el7 epel 144 k Installing for dependencies: audit-libs-python x86_64 2.6.5-3.el7_3.1 updates 70 k augeas-libs x86_64 1.4.0-2.el7 base 355 k certbot noarch 0.14.1-3.el7 epel 19 k checkpolicy x86_64 2.5-4.el7 base 290 k dialog x86_64 1.2-4.20130523.el7 base 208 k libcgroup x86_64 0.41-11.el7 base 65 k libsemanage-python x86_64 2.5-5.1.el7_3 updates 104 k policycoreutils-python x86_64 2.5-11.el7_3 updates 445 k pyOpenSSL x86_64 0.13.1-3.el7 base 133 k python-IPy noarch 0.75-6.el7 base 32 k python-augeas noarch 0.5.0-2.el7 base 25 k python-backports x86_64 1.0-8.el7 base 5.8 k python-backports-ssl_match_hostname noarch 3.4.0.2-4.el7 base 12 k python-cffi x86_64 1.6.0-5.el7 base 218 k python-enum34 noarch 1.0.4-1.el7 base 52 k python-idna noarch 2.0-1.el7 base 92 k python-ipaddress noarch 1.0.16-2.el7 base 34 k python-ndg_httpsclient noarch 0.3.2-1.el7 epel 43 k python-parsedatetime noarch 1.5-3.el7 epel 61 k python-ply noarch 3.4-10.el7 base 123 k python-psutil x86_64 2.2.1-1.el7 epel 114 k python-pycparser noarch 2.14-1.el7 base 104 k python-requests noarch 2.6.0-1.el7_1 base 94 k python-setuptools noarch 0.9.8-4.el7 base 396 k python-six noarch 1.9.0-2.el7 base 29 k python-urllib3 noarch 1.10.2-2.el7_1 base 100 k python-zope-component noarch 1:4.1.0-3.el7 epel 227 k python-zope-event noarch 4.0.3-2.el7 epel 79 k python-zope-interface x86_64 4.0.5-4.el7 base 138 k python2-acme noarch 0.14.1-1.el7 epel 170 k python2-certbot noarch 0.14.1-3.el7 epel 417 k python2-configargparse noarch 0.11.0-1.el7 epel 30 k python2-cryptography x86_64 1.3.1-3.el7 base 471 k python2-dialog noarch 3.3.0-6.el7 epel 94 k python2-future noarch 0.16.0-2.el7 epel 799 k python2-mock noarch 1.0.1-9.el7 epel 92 k python2-pyasn1 noarch 0.1.9-7.el7 base 100 k python2-pyrfc3339 noarch 1.0-2.el7 epel 13 k pytz noarch 2012d-5.el7 base 38 k setools-libs x86_64 3.3.8-1.1.el7 base 612 k Transaction Summary ========================================================================================================================================================================================= Install 1 Package (+40 Dependent packages) Total download size: 6.5 M Installed size: 27 M ... Complete!
Восстанавливаем корфигурацию apache и cetbot
Настройки apache для zabbix:
[root@server2 zabbix_server]# cat etc_httpd/conf.d/vhosts.conf NameVirtualHost *:80 NameVirtualHost *:443 <VirtualHost *:80> ServerName server.mykb.ru Redirect / https://server.mykb.ru/ </VirtualHost> <VirtualHost *:443> ServerName server.mykb.ru ServerAdmin someone@mykb.ru DocumentRoot /usr/share/zabbix ##### SSLEngine on SSLCertificateKeyFile /etc/letsencrypt/live/server.mykb.ru/privkey.pem SSLCertificateFile /etc/letsencrypt/live/server.mykb.ru/cert.pem SSLCertificateChainFile /etc/letsencrypt/live/server.mykb.ru/chain.pem #### <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Require all granted <IfModule mod_php5.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 always_populate_raw_post_data -1 php_value date.timezone Europe/Moscow </IfModule> </Directory> <Directory "/usr/share/zabbix/conf"> Require all denied </Directory> <Directory "/usr/share/zabbix/app"> Require all denied </Directory> <Directory "/usr/share/zabbix/include"> Require all denied </Directory> <Directory "/usr/share/zabbix/local"> Require all denied </Directory> ErrorLog logs/mykb_error.log CustomLog logs/mykb_access.log common </VirtualHost>
Просто копируем файл vhosts.conf
[root@server2 zabbix_server]# cp -p etc_httpd/conf.d/vhosts.conf /etc/httpd/conf.d/vhosts.conf
Копируем файлы Letsencrypt.
[root@server2 zabbix_server]# cp -rp etc_letsencrypt/ /etc/letsencrypt/
Запускаем zabbix
Запускаем zabbix сервера и агента
[root@server2 zabbix_server]# systemctl enable zabbix-server Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service. [root@server2 zabbix_server]# systemctl enable zabbix-agent Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service. [root@server2 zabbix_server]# systemctl start zabbix-server [root@server2 zabbix_server]# systemctl start zabbix-agent
Переходи по ссылке прописанной в vhosts.conf и проверяем.
Если в ходе восстановления изменился ip адрес, то надо пройтись по всех хостам и его поменять.
Заключение
Переход на ssd диски помог, загрузка сильно упала.
Для регулярного бэкапа скрит не подходит, надо в него добавить оповещения, проверку на запуск zabbix сервер, версионность и копирование на третий сервер.
Полезные ссылки
An up-to-date Zabbix Server backup will allow you to quickly restore the monitoring system configuration in case of software failures or hardware failures.
The basic information and configuration of Zabbix Server are stored in a database (the most commonly used is PostgreSQL or MySQL/MariaDB). In the simplest case, you can backup your server by simply exporting the database to a file from mysql/mariadb or postgresql command line.
If you don’t need historical data and want to reduce the size of the Zabbix Server database dump, you can exclude tables with History, Trends, and Events (these tables are named: history, history_uint, history_text, history_str, history_log, trends, trends_uint, events). By excluding these tables, you can reduce the size of your backups by 90%. The list of tables to be ignored can be specified using --ignore-table
:
# mysqldump --ignore-table=zabbix.history --ignore-table=zabbix.history_uint --ignore-table=zabbix.trends --ignore-table=zabbix.trends_uint --ignore-table=zabbix.events -u USERNAME -h localhost -pPASSWORD zabbix | gzip -c > /backups/zabbix_`date +%Y-%m-%d`.sql.gz
In addition to backing up the Zabbix database, you can backup configuration files for Zabbix Server, web servers (usually Nginx or Apache) and SSL certificates: /etc/nginx/, /etc/httpd/, /etc/apache2, /etc/zabbix/, /usr/lib/zabbix.
To create an archive with zabbix http files, you can run the command:
# tar -cvjf /backups/`date +%Y-%m-%d`_zabbix.tar.bz2 /usr/share/zabbix/
Also, you can export and import some server items through the Zabbix web interface or API. You can separately export the following configuration items: Hosts, Templates, Media types, Maps, images, Host groups, and Template groups. This will also allow you to quickly transfer hosts from the old Zabbix Server to the new one.
Note. When you back up a database via a dump, we recommend disabling table locks (--single-transaction --skip-lock-tables
). Otherwise, the performance of the Zabbix Server during data export may drop significantly.
You can use the zabbix-backup (https://github.com/npotorino/zabbix-backup) to back up the Zabbix Server database. The script allows you to select tables to be added to the backup and supports Zabbix versions from 3.1 to 6.2.
To install the script and perform a backup, run the commands:
git clone https://github.com/npotorino/zabbix-backup
cd zabbix-backup
./zabbix-dump -t psql -H localhost -P 5432 -o /var/backup
Hint. You can use Zabbix to monitor your VMware ESXi hosts.