Знакомство с Veeam Agent for Linux
Как вы, возможно, уже знаете, в недалеком будущем увидит свет наш новый продукт — Veeam Agent for Linux. И уже сейчас все желающие могут оценить это решение в ходе анонсированной программы бета-тестирования. Чтобы получить доступ к бета-версии, нужно зарегистрироваться здесь, и вы получите на email ссылку для скачивания. Обратите внимание, что период бета-тестирования закончится 1 сентября 2016 года – затем вы сможете установить уже релизную версию.
Итак, что же умеет бета? За ответом добро пожаловать под кат.
Veeam Agent for Linux — это наше новое бесплатное решение для резервного копирования машин под управлением Linux. Его основные характеристики:
- Может использоваться как для виртуальных, так и для физических машин.
- Работает с машинами семейств Debian и RedHat. Доступен в виде пакетов RPM и DEB.
- Поддерживаются версии ядра Linux, начиная с 2.6.32 (т е. даже если у вас очень старенькая инсталляция, то и она будет поддержана при условии, что у вас стоит официальное ядро для данного дистрибутива).
- Работает с 32-битной и 64-битной архитектурой.
Решение включает в себя следующие компоненты:
- Veeam Agent for Linux Service – компонент, отвечающий за работу со всеми задачами и необходимыми ресурсами. Регистрируется как обычный сервис, автоматически стартует при старте ОС и работает в фоновом режиме.
- Veeam Agent for Linux Job Manager – процесс, который запускается вышеназванным сервисом для каждой сессии задания резервного копирования и отвечает за ее работу.
- Veeam Agent – это, собственно, рабочая лошадка, которая выполняет операции передачи данных: во время бэкапа копирует их в репозиторий, а во время восстановления – наоборот, а также выполняет дедупликацию, компрессию, и т.д.
- Veeam Agent for Linux Driver – модуль ядра Linux, который отвечает за создание снапшотов томов вашей машины.
- SQLite database engine — используется для хранения конфигурации; если у вас его нет – то поставится в процессе установки продукта.
Veeam Agent for Linux умеет выполнять резервное копирование на уровне образа, работая внутри гостевой ОС, причем можно делать бэкапы на уровне томов и файлов. Для создания инкрементальных резервных копий нами был разработан специальный драйвер, который отслеживает измененные блоки (его модуль динамически подгружается в ядро).
Читателей, вероятно, порадует, что этот модуль поставляется в виде исходного кода. Поскольку версий ядра великое множество, то мы решили не пытаться написать и скомпилировать бинарную версию модуля для каждой из них – в итоге вполне могло оказаться, что на какой-то из версий что-то не поддерживается, и соответствующая часть пользователей не сможет использовать решение. Поэтому мы решили пойти по традиционному для Linux-сообщества пути – поставлять исходный код и компилировать модуль в процессе установки продукта, уже конкретно для той версии ядра, с которой ему предстоит работать. Пользователю не придется ничего компилировать вручную – все необходимые операции выполнит менеджер пакетов вашего дистрибутива: проверит наличие необходимых зависимостей, выдаст список недостающих, чтобы вы могли все поправить, и в ходе инсталляции автоматически скомпилирует и установит наш модуль.
Выполняем установку
Для работы решения необходимо наличие пакета Dynamic Kernel Module Support (DKMS), который требуется для компиляции модуля ядра, а также пакета LVM2, который требуется для поддержки операции с томами LVM. Если их нет на машине, то установите их – к примеру, DKMS на CentOS можно поставить из дополнительного репозитория EPEL.
После того, как прошла установка первого компонента, можно переходить к установке собственно Veeam Agent for Linux (для установки понадобятся права root):
Агент Veeam Agent for Linux устанавливается в виде сервиса, с которым затем можно работать, применяя команду veeamconfig. Для просмотра списка ее опций после команды veeamconfig введите —help. Ну и затем можно переходить уже непосредственно к работе – а там уже практически все понятно и без подсказок, но мы все же вкратце рассмотрим сначала процесс бэкапа.
Приступаем к резервному копированию
Поскольку среди пользователей Linux есть как продвинутые, так и начинающие, то мы в дополнение к командной строке предлагаем простенький графический интерфейс. Для его запуска используется командная строка – в ней вводим команду veeam. На экране появится GUI с приветственным сообщением и кнопками меню:
Чтобы создать новое задание резервного копирования, нажимаем C (Configure). Проходим по шагам мастера:
- Вводим имя, которое хотим дать заданию.
- На шаге Backup mode выбираем, хотим ли мы бэкапить всю машину (Entire machine), какой-либо том (Volume level backup) или отдельные файлы и папки (File level backup):
- Затем указываем тип репозитория (Destination Location), куда будут сохраняться резервные копии. Если репозитория у нас еще нет, то мастер попросит его создать. В качестве репозитория поддерживаются:
- устройства с прямым подключением (USB, eSATA, FС и т.п.)
- сетевые файловые системы NFS, SMB (CIFS)
- локальное устройство хранения (не рекомендуется)
В данном примере в качестве репозитория выбирается папка NFS с общим доступом:
После того, как все настройки сделаны, мастер предложит вам запустить задание сразу же. Если вы еще раз хотите пройтись по настройкам и, возможно, что-то поменять, можно либо вернуться к предыдущему шагу, нажав Prev, либо, если вы уже нажали Finish и вернулись в главное меню, нажать C. Для запуска задания из главного меню нажмите S. Если же вы захотите запустить задание в какой-то момент по требованию, то к вашим услугам соответствующая команда:
veeamconfig job start —name «BackupJob1»
В ходе выполнения задания по нажатию Enter можно посмотреть, что как идет и что пишется в лог:
Наше задание успешно отработало, и на экране появилась соответствующая информация в поле Status:
В репозитории на NFS-сервере теперь лежат файлы резервной копии (.VBK и .VBM), поименованные согласно названию задания и времени создания:
Имея резервную копию, можно посмотреть, как Veeam Agent for Linux умеет выполнять восстановление Linux-сервера на уровне файла, тома, или же вообще «на голое железо» — но об этом в следующем посте.
Полезные ссылки
UPD: Обратите внимание — по ссылке с 1 сентября выдается бета#2. Подробнее о ней можно прочитать тут. В топике есть инструкция и пароль для скачивания (он тот же, что и был для беты#1). Из свежедобавленного, в частности — появились пакеты для Fedora 23, Fedora 24, расширился набор команд CLI, появилась поддержка pre/post job scripts.
С информацией о найденных issues ждем вас на форуме — в новых топиках или в личных сообщениях (ответственному пользователю PTide).
Источник
Installing Veeam Agent for Linux
NOTE
To make UEFI systems with Secure Boot work with the pre-built veeamsnap kernel module, you need to enroll the Veeam public key to the MOK list using the mokutil utility. The key is available in the veeamsnap-ueficert-5.0.1.4493-1.noarch package residing on the Veeam repository. To enroll the key:
- Request the enrollment of the public key with the following command: mokutil —import veeamsnap-ueficert.crt .
- Reboot the Veeam Agent computer and complete the enrollment in the UEFI console.
To install Veeam Agent for Linux :
- Download the Veeam software repository installation package ( veeam-release ) from the this Veeam webpage , and save the downloaded package on the computer where you plan to install the product.
TIP
If the computer where you want to install Veeam Agent for Linux is not connected to the internet, you can download and install Veeam Agent for Linux packages manually. To learn more, see Installing Veeam Agent for Linux in Offline Mode .
- Navigate to the directory where you have saved the veeam-release package and install the package with the following commands:
For CentOS / RHEL / Oracle Linux / Fedora
rpm -ivh ./veeam-release* && yum check-update
For openSUSE / SLES
zypper in ./veeam-release* && zypper refresh
For Debian / Ubuntu
dpkg -i ./veeam-release* && apt-get update
For CentOS / RHEL / Fedora
yum install veeam
NOTE
[For CentOS / RHEL] If the dkms package is already installed in the OS, you can install Veeam Agent with one of the following commands:
With this command, the veeamsnap kernel module will be installed from the source RPM package using dkms .
- yum install kmod-veeamsnap veeam
With this command, the non-DKMS version of the veeamsnap kernel module will be installed from the pre-built kmod-veeamsnap binary package.
For Oracle Linux
yum install veeamsnap
yum install veeam
For openSUSE Tumbleweed
zypper in veeam
For openSUSE Leap 15.3
zypper in veeamsnap-kmp-default
zypper in veeam
For SLES with Default kernel
zypper in veeamsnap-kmp-default
zypper in veeam
For SLES with Trace kernel
zypper in veeamsnap-kmp-trace
zypper in veeam
For SLES with Xen kernel
zypper in veeamsnap-kmp-xen
zypper in veeam
For SLES with PAE kernel
zypper in veeamsnap-kmp-pae
zypper in veeam
For SLES with Preempt kernel
zypper in veeamsnap-kmp-preempt
zypper in veeam
For Debian / Ubuntu
apt-get install veeam
The following dependency packages may require special handling in case you see installation errors:
- The dkms package is not present in default repositories for some Linux distributions. You should obtain it from third-party repositories:
- EPEL repository (for CentOS / RHEL / Oracle Linux / Fedora)
- Packman repository (for openSUSE). To learn more , see Installing dkms in openSUSE .
For SLES, the dkms package is not available in the Packman repository. You must use the package intended for openSUSE. To learn more, see this Veeam KB article .
- Extended kernels, such as kernel-pae , kernel-uek and other, require appropriate kernel-devel packages to be installed, for example, kernel-pae-devel , kernel-uek-devel , and so on.
Version of the kernel-devel package must match your current kernel version. To check your current kernel version, run the uname -r command.
[For RHEL and derivatives] If the yum package manager installs packages that do not match your current kernel version, you should either update your system or fetch older versions of the required packages from the CentOS Vault repository .
In openSUSE systems, while installing the dkms package, you may see an error similar to the following:
Problem: nothing provides kernel-devel needed by dkms-2.2.0.3-14.1.noarch
Solution 1: do not install dkms-2.2.0.3-14.1.noarch
Solution 2: break dkms-2.2.0.3-14.1.noarch by ignoring some of its dependencies
To install the dkms package, do the following:
- Make sure that you have an appropriate kernel-devel package installed and its version matches your kernel version. For example:
> rpm -qa | grep kernel-default
kernel-default-devel-3.0.101-91.1
kernel-default-3.0.101-91.1
Источник
Installing Veeam Agent for Linux in Offline Mode
If a computer where you want to install Veeam Agent for Linux has no connection to the internet, for example, for security reasons, you can install Veeam Agent in the offline mode. In this scenario, you do not need to download and install the Veeam software repository installation package ( veeam-release ). Instead, you need to download all Veeam Agent packages from the Veeam software repository and install them on the target computer.
To install Veeam Agent :
- On a computer that is connected to the internet, download Veeam Agent packages intended for your Linux distribution from the Veeam software repository .
The repository has the following structure:
- For Debian packages: Package format > Package
For example, Veeam Agent packages in the Debian format reside in the /deb/veeam/ , /deb/veeamsnap/ and /deb/veeam-nosnap/ folders of the Veeam software repository.
- For RPM packages: Package format > Distribution > Version > Architecture
For example, Veeam Agent packages for 64-bit RHEL 7 reside in the /rpm/el/7/x86_64/ folder of the Veeam software repository, and packages for 64-bit SLES 15 SP2 reside in the /rpm/sles/SLE_15_SP2/x86_64/ folder.
- Save Veeam Agent packages to a directory that can be accessed from the computer where you want to install the product, for example, a directory on a local drive or USB drive, or a network shared folder.
- On the computer where you want to install Veeam Agent , navigate to the directory where you have saved the packages and install Veeam Agent :
- Installing Veeam Agent for Linux in CentOS / RHEL
- Installing Veeam Agent for Linux in Oracle Linux
- Installing Veeam Agent for Linux in Fedora
- Installing Veeam Agent for Linux in SLES
- Installing Veeam Agent for Linux in openSUSE
- Installing Veeam Agent for Linux in Debian / Ubuntu
TIP
You can also set up a local mirror of the Veeam software repository in your internal network and add this repository to the list of software sources on a computer where you want to install the product. These operations may differ depending on the Linux distribution and package manager that you use. To learn more, refer to the documentation of your Linux distribution.
After you add a local repository to the list of software sources on a computer, you will be able to install and upgrade Veeam Agent in a regular way. To learn more, see Installing Veeam Agent for Linux and Upgrading Veeam Agent for Linux .
To install Veeam Agent for Linux , use the following commands:
For 32-bit RHEL 6
rpm -i /kmod-veeamsnap-5.0.1.4493-2.6.32_131.0.15.el6.i386.rpm
rpm -i /veeam-5.0.1.4493-1.el6.i386.rpm
For 64-bit RHEL 6
rpm -i /kmod-veeamsnap-5.0.1.4493-2.6.32_131.0.15.el6.x86_64.rpm
rpm -i /veeam-5.0.1.4493-1.el6.x86_64.rpm
For CentOS 7 / RHEL 7
rpm -i /kmod-veeamsnap-5.0.1.4493-1.el7.x86_64.rpm
rpm -i /veeam-5.0.1.4493-1.el7.x86_64.rpm
For CentOS 8 / RHEL 8
rpm -i /kmod-veeamsnap-5.0.1.4493-4.18.0_80.el8.x86_64.rpm
rpm -i /veeam-5.0.1.4493-1.el8.x86_64.rpm
— path to a directory where you have saved Veeam Agent packages.
NOTE
The pre-built veeamsnap binaries require kernel 2.6.32-131.0.15 or later for RHEL 6 (excluding 2.6.32-279.el6.i686) and kernel 3.10.0-123 or later for CentOS / RHEL 7.0 – 7.7 to operate.
To install Veeam Agent for Linux , use the following commands:
For Oracle Linux 6
rpm -i /veeamsnap-5.0.1.4493-1.noarch.rpm
rpm -i /veeam-5.0.1.4493-1.el6.x86_64
For Oracle Linux 7
rpm -i /veeamsnap-5.0.1.4493-1.noarch.rpm
rpm -i /veeam-5.0.1.4493-1.el7.x86_64.rpm
For Oracle Linux 8
rpm -i /veeamsnap-5.0.1.4493-1.noarch.rpm
rpm -i /veeam-5.0.1.4493-1.el8.x86_64.rpm
— path to a directory where you have saved Veeam Agent packages.
To install Veeam Agent for Linux , use the following commands:
rpm -i /veeamsnap-5.0.1.4493-1.noarch.rpm
rpm -i /veeam-5.0.1.4493-1.fc24.x86_64.rpm
— path to a directory where you have saved Veeam Agent packages.
NOTE
If you use a Trace, Xen, PAE, or preempt kernel, you need to choose the corresponding veeamsnap package for installation instead of the default one, for example, veeamsnap-kmp-trace-5.0.1.4493_3.0.101_63-2.1.i586.rpm instead of veeamsnap-kmp-default-5.0.1.4493_3.0.101_63-2.1.i586.rpm .
To install Veeam Agent for Linux , use the following commands:
For 32-bit SLES 11 SP4
zypper in /veeamsnap-kmp-default-5.0.1.4493_k3.0.101_63-2.i586.rpm
zypper in /veeam-5.0.1.4493-1.sles11.i386.rpm
For 64-bit SLES 11 SP4
zypper in /veeamsnap-kmp-default-5.0.1.4493_k3.0.101_63-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles11.x86_64.rpm
For 64-bit SLES 12 SP2
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.4.21_69-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 12 SP3
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.4.73_5-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 12 SP4
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.12.14_94.41-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 12 SP5
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.12.14_120-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 15 SP0
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.12.14_23-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 15 SP1
zypper in /veeamsnap-kmp-default-5.0.1.4493_k4.12.14_195-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 15 SP2
zypper in /veeamsnap-kmp-default-5.0.1.4493_k5.3.18_22-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
For 64-bit SLES 15 SP3
zypper in /veeamsnap-kmp-default-5.0.1.4493_k5.3.18_57-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.sles12.x86_64.rpm
— path to a directory where you have saved Veeam Agent packages.
To install Veeam Agent for Linux , use the following commands:
For 32-bit openSUSE Tumbleweed
zypper in /veeamsnap-5.0.1.4493-1.sles.noarch.rpm
zypper in /veeam-5.0.1.4493-1.suse.i386.rpm
For 64-bit openSUSE Tumbleweed
zypper in /veeamsnap-5.0.1.4493-1.sles.noarch.rpm
zypper in /veeam-5.0.1.4493-1.suse.x86_64.rpm
For 64-bit openSUSE Leap 15.2
zypper in /veeamsnap-kmp-default-5.0.1.4493_k5.3.18_lp152.19-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.suse.x86_64.rpm
For 64-bit openSUSE Leap 15.3
zypper in /veeamsnap-kmp-default-5.0.1.4493_k5.3.18_57-2.x86_64.rpm
zypper in /veeam-5.0.1.4493-1.suse.x86_64.rpm
— path to a directory where you have saved Veeam Agent packages.
To install Veeam Agent for Linux , use the following commands:
For 32-bit Debian / Ubuntu 14.04, 16.04, 18.04, 20.04, 20.10, 21.04
dpkg -i /veeamsnap_5.0.1.4493_all.deb
dpkg -i /veeam_5.0.1.4493_i386.deb
For 64-bit Debian / Ubuntu 14.04, 16.04, 18.04, 20.04, 20.10, 21.04
dpkg -i /veeamsnap_5.0.1.4493_all.deb
dpkg -i /veeam_5.0.1.4493_amd64.deb
— path to a directory where you have saved Veeam Agent packages.
Источник