Перейти к основному содержанию
 

Veritas Backup Exec 20 — траблшутинг резервирования Linux

Veritas Backup Exec

Заметки о том, как я пытался забэкапить папку Linux на Ubuntu Server с помощью Veritas Backup Exec 20. Несколько раз наступил на грабли, получил полезный опыт, в итоге резервное копирование было-таки настроено.

Бэкапить собираюсь папку на сервере Ubuntu. На Ubuntu установлен агент RALUS:

RALUS — Backup Exec Remote Agent для Linux и UNIX серверов

Тестовый стенд представляет собой сервер Window c Veritas Backup Exec 20. Резервирование Linux настраиваю по мануалу:

Veritas Backup Exec 20 — резервирование папки Linux

Ошибка первая — RALUS

При попытке добавить сервер получаю ошибку:

veritas

В данном случае решение простое, нужно проверить, установлен ли на целевом сервере агент RALUS и запущен ли он. У меня агент оказался не запущен, я просто забыл. Запускаю агент:

/etc/init.d/VRTSralus.init start

Ошибка вторая — локальный пользователь

Снова пытаюсь добавить сервер и получаю ошибку:

veritas

Backup Exec не может пройти аутентификацию. Всё проверяю, логин, пароль. Логинюсь по SSH с Windows сервера с Backup Exec на Ubuntu. Всё работает, а ошибка остаётся. Методом научного тыка выясняю, что проблема была в том, что я пытался залогиниться под доменной учётной записью, несмотря на то, что доменная аутентификация на сервере Ubuntu разрешена, RALUS требует именно локальную учётную запись. Создаю её.

Ошибка третья — группа beoper

В третий раз он закинул невод. Снова ошибка:

linux

Ошибка информативная. Учётная запись не входит в группу операторов Backup Exec — beoper. Добавляю пользователя в группу beoper:

usermod -a -G beoper my_local_username

veritas

Ошибка четвёртая — подсеть

Наконец-то сервер добавлен. Сервер dns00 добавился в список, при этом написано "Никогда не было резервного копирования".

veritas

Правой кнопкой > Резервное копирование > Резервное копирование на диск.

veritas

Выбираем "Резервное копирование с использованием агента". Далее.

veritas

Теперь нужно выбрать свойства резервного копирования.

veritas

Слева выбираем что копировать. Кнопка "Проверить/изменить иден..." позволит сменить пользователя. Для выбора папок нажимаем "Изменить".

veritas

Выбираем нужные папки для резервного копирования. Замечу, что список папок выводится. OK.

veritas

Справа настраиваем расписание и свойства резервного копирования. OK.

А теперь пытаюсь, собственно, выполнить резервное копирование, и оно завершается с ошибкой:

Серверу Backup Exec не удалось подключиться к удаленному компьютеру dns00 посредством подсети 10.12.60.0/24 через сетевой интерфейс Ethernet0.

backup

Подсеть 10.12.60.0/24 — это подсеть сервера Backup Exec, сервер Ubuntu живёт в другой подсети. Вероятно, возникла какая-то проблема на сетевом уровне.

На самом деле проблема совершенно другая, не связанная с сетью, и это камень в огород Veritas Backup Exec. Вот что им стоило по-другому написать ошибку, и я бы сэкономил кучу времени, но обо всём по порядку.

Начинаю траблшутинг.

Траблшутинг — поиск и устранение неисправности с применением систематического подхода. Как правило, проблема может находиться в одном или нескольких звеньях цепи между точкой A и точкой Б. Есть несколько подходов к решению проблемы:

  1. Идти последовательно от точки А к точке Б, проверяя каждое звено цепи.
  2. Идти последовательно от точки Б к точке А, проверяя каждое звено цепи.
  3. Метод деления отрезка пополам: проверить звено в середине цепи, выяснить в каком участке наблюдается проблема, перейти к нему.
  4. Инженер на основе собственного опыта определяет звено с наиболее вероятным источником проблемы, после переходит к следующему звену с менее вероятным источником проблемы и так далее.

Логирование RALUS

Я начал с конца, т.е. с сервера Ubuntu. Посмотрим логи агента RALUS, для этого запустим его в debug mode. Правим в файле /etc/VRTSralus/ralus.cfg опцию RANT NDMP Debug Level, она по умолчанию 0:

Software\Symantec\Backup Exec For Windows\Backup Exec\Engine\Logging\RANT NDMP Debug Level=1

Больше логов:

Software\Symantec\Backup Exec For Windows\Backup Exec\Engine\Logging\RANT NDMP Debug Level=2

Останавливаем агент:

 /etc/init.d/VRTSralus.init stop

Для отображения списка вариантов запуска:

cd /opt/VRTSralus/bin
./beremote --help

ralus

Запускаем агент вручную в DEBUG режиме с выводом в консоль:

cd /opt/VRTSralus/bin
./beremote --log-console

Запускаем агент вручную в DEBUG режиме с выводом в файл:

cd /opt/VRTSralus/bin
./beremote --log-file <file name>

Запускаем агент вручную в DEBUG режиме с выводом в консоль и в файл:

cd /opt/VRTSralus/bin
./beremote --log-console --log-file <file name>

Анализирую логи в момент попытки бэкапа и не вижу ничего криминального, обращений нет.

Снифер пакетов tcpdump

Для собственного успокоения проверяю, приходят ли какие-нибудь пакеты с Backup Exec с помощью tcpdump:

tcpdump — анализатор сетевого трафика

Не приходят пакеты.

Снифер пакетов Wireshark

Проверю, уходят ли пакеты с Backup Exec. Мне в помощь Wireshark.

Wireshark — анализатор сетевого трафика

Не уходят пакеты.

А вот это уже интересно. Круг поисков ограничился самим Veritas Backup Exec 20.

Логирование Backup Exec

Veritas Backup Exec 20 позволяет выполнить резервное копирование с включённым режимом дебага. Для этого выбираем задание резервного копирования и в контекстном меню (правой кнопкой) нажимаем "Выполнять с включенной отладкой".

veritas

Подтверждаем выполнение. OK.

veritas

В журнале задания появляется новый блок:

Данные журнала отладки для задания.

Здесь указываются файлы логов, которые можно использовать для поиска и устранения неисправности:

C:\Program Files\Veritas\Backup Exec\logs\CRON01-bengine02.log
C:\Program Files\Veritas\Backup Exec\logs\CRON01-beremote01.log

veritas

Анализирую логи и нахожу ошибку:

NDMPAgentConnector::HandleConnectionError: ndmpConnect failed: The remote machine dns00 was not detected on the selected subnet 10.12.60.0/24 via network interface Ethernet0, and the 'Fallback' option was not chosen.

backup

Ошибка почти та же самая, что и в журнале резервного копирования, за исключением одного "..and the 'Fallback' option was not chosen". Получается, что есть некоторая опция Fallback, которую можно выбрать. Углубляюсь в настройка Backup Exec и нахожу эту опцию:

Разрешить использование любого доступного сетевого интерфейса, подсети или протокола для агентов Backup Exec, не связанных с указанным выше сетевым интерфейсом, подсетью или протоколом.

backup

Получается, что по умолчанию Backup Exec может бэкапить сервера с помощью агента только из той же подсети. Независимо от того, может ли Backup Exec видеть содержимое директорий сервера или нет.

Галку можно установить и для каждого задания в отдельности и глобально для всего Backup Exec.

Устанавливаю галку и проблема устранена. Удачного дебага.