Vladimir EreminЭта статья написана Владимиром Ереминым, менеджером Veeam по стратегии развития продуктов. Владимир активный участник форумов Veeam, Twitter и Spiceworks. Одна из областей специализации Владимира — PowerShell, поэтому статья посвящена работе с этим инструментом. Если у вас есть вопросы по принципам работы с PowerShell из этого материала, вы можете их задать на форумах Veeam. Кроме того, вы можете загрузить типовой сценарий для VMware и Hyper-V, а также обсудить их на форумах Veeam.

Veeam Backup Free Edition — самый популярный из инструментов Veeam, в первую очередь благодаря функционалу VeeamZIP, который позволяет создавать полные копии неограниченного числа виртуальных машин (ВМ) по необходимости. Однако VeeamZIP всегда имел одно небольшое, но неприятное ограничение — невозможность запланировать автоматическое резервное копирование. Поскольку запуск VeeamZIP осуществляется вручную, его интерфейс просто не предусматривал создания расписания. Если вы уже столкнулись с этим, то новости вас несомненно обрадуют: в Update 2 этой проблемы больше нет Мы получили по этому поводу множество обращений на форумах, в Twitter и других площадках и пошли навстречу пожеланиям пользователей. Теперь в редакции Free Edition доступен командлет Start-VBRZip PowerShell.

Принцип работы

Как уже было сказано, главная возможность Veeam Backup Free Edition — создание резервных копий ВМ с помощью VeeamZIP (с последующим восстановлением ВМ, файлов гостевых ОС и приложений из этих резервных копий). VeeamZIP всегда создает файл полной резервной копии (.vbk), который представляет собой отдельную точку восстановления. Редакция Free Edition позволяет сохранять его в репозитории резервных копий, а также локально или на сетевом диске.

Выполняя резервное копирование с помощью VeeamZIP, можно запустить процесс сразу для нескольких выбранных ВМ. Такое резервное копирование почти не требует вмешательства оператора, поэтому его удобно запускать вручную.

image

 

Update 2 позволяет написать простой сценарий PowerShell (здесь можно загрузить типовой сценарий для VMware, а здесь — для Hyper-V). Он запустит VeeamZIP для выбранной ВМ по расписанию, которое должно быть задано через Windows Scheduler. Мы разработали типовой сценарий, который не только обеспечит запуск резервного копирования ВМ с помощью VeeamZIP, но и отправит по электронной почте отчет о проделанной работе!

Параметры сценария

Сценарий позволяет создавать резервные копии работающих ВМ, которые запущены как на автономных хостах, так и в кластерах или на сервере vCenter. Перед запуском сценарий необходимо указать значения трех обязательных параметров: имена ВМ для резервного копирования, размещающие эти ВМ хосты и каталог, куда будут сохранены копии. Обратите внимание: сценарий был обновлен 18 мая по отзывам наших пользователей.

 

##################################################################

# Переменные, определяемые пользователем

##################################################################

# Имена ВМ для резервного копирования, через запятую (обязательный параметр). Например, $VMNames = “VM1”,”VM2”

$VMNames = ""

# Имя сервера vCenter или автономного хоста, где находятся ВМ (обязательный параметр)

$HostName = ""

# Каталог сохранения резервных копий. Например, C:\Backup (обязательный параметр)

$Directory = ""

 

По желанию вы можете изменить степень сжатия и срок хранения копии, отключить заморозку VMware и настроить уведомления:

# Требуемая степень сжатия (опционально; возможные значения: 0 - нет, 4 - с поддержкой дедупликации, 5 - оптимальная, 6 - высокая, 9 - максимальная)

$CompressionLevel = "5"

# «Заморозить» ВМ при создании снапшота (опционально; в гостевой ОС должны быть установлены VMware Tools или Hyper-V Integration Components. Возможные значения: $True/$False)

$EnableQuiescence = $True

# Настройки хранения (опционально; по умолчанию файлы VeeamZIP не удаляются и хранятся в указанном каталоге неограниченное время.

# Возможные значения: Never, Tonight, TomorrowNight, In3days, In1Week, In2Weeks, In1Month)

$Retention = "Never"

 

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

##################################################################

# Настройки уведомлений

##################################################################

# Включить уведомления (опционально)

$EnableNotification = $True

# Сервер SMTP

$SMTPServer = ""

# Отправитель

$EmailFrom = ""

# Получатель

$EmailTo = ""

# Тема

$EmailSubject = ""

 

Итоговый отчет будет выглядеть следующим образом:

Name Start Time End Time Result Details
CentOS-tiny_2015-03-26T180459 3/26/2015 6:04:59 PM 3/26/2015 6:07:17 PM Warning Processing finished with warnings at 3/26/2015 6:07:13 PM Cannot use VMware Tools quiescence because VMware Tools are not found.
CentOS-tiny_replica_2015-03-26T180720 3/26/2015 6:07:20 PM 3/26/2015 6:11:20 PM Success Processing finished at 3/26/2015 6:11:18 PM

Все указанные настройки производятся с помощью значений соответствующих переменных. Если вы хотите, чтобы файлы резервных копий удалялись через две недели, для переменной $Retention следует установить значение «In2Weeks» (строка) и т. д. Нет необходимости описывать здесь назначение каждой переменной и перечислять допустимые значения: в типовом сценарии дано краткое описание всех переменных.

Настраиваем расписание запуска сценария

Прежде чем создавать расписание для сценария, запустите его вручную и убедитесь в правильной работе.

Самый простой способ создать расписание для выполнения регулярного резервного копирования — использовать планировщик заданий Windows (Windows Task Scheduler). Просто откройте планировщик и создайте новую простую задачу:

image

Введите для нее имя и описание, чтобы в будущем было сразу понятно назначение задачи.

Следующая страница — «Task Trigger» (Триггер задачи). Здесь все очень просто и интуитивно понятно. Доступные параметры обеспечивают достаточную гибкость настроек: в зависимости от требуемого показателя RPO, резервное копирование можно выполнять от одного раза в месяц до нескольких раз в день. Большинство пользователей выполняют резервное копирование один раз в день:

image

Задайте время выполнения задачи в нерабочие часы. В приведенном примере задача выполняется каждый вечер в 22:00, начиная с 22 апреля 2015.

image

На следующей странице «Action» (Действие) укажите необходимость запуска программы и нажмите «Next» (Далее).

clip_image002

На панели «Start a Program» (Запуск программы) необходимо ввести в соответствующее поле команду:

Powershell –file “Путь к файлу Veeamzip.ps1”

clip_image004

И все! Если после создания задачи нужно внести в нее изменения, откройте окно ее свойств. Для этого поставьте флажок «Open the Properties» (Открыть свойства), перед тем как нажать «Finish» (Готово):

clip_image006

Поскольку задача может выполняться на сервере и без активного пользователя, рекомендуется указать логин и пароль. Это позволит выполнять задачу вне зависимости от регистрации в системе.

clip_image008

Закончив настройку задачи, щелкните по ней правой кнопкой мыши и выберите «Run» (Выполнить), чтобы убедиться в правильности выполнения.

clip_image009

PowerShell дает пользователям Veeam Backup Free Edition то, о чем они давно мечтали!

Теперь у вас есть отличная возможность сделать то, чего давно хотели — создать расписание резервного копирования для Veeam Backup Free Edition. Решение открывает гораздо больше возможностей для бэкапа и восстановления данных, чем альтернативные решения на базе сценариев.

GD Star Rating
loading...
Veeam Backup Free Edition: Теперь с PowerShell!, 5.0 out of 5 based on 5 ratings
  • Андрей Шибанов

    По данной ссылке: https://www.veeam.com/blog/wp-content/uploads/2015/05/VeeamZIP-updated-HV.zip
    Ошибка в строчке:
    $VM = Find-VBRViEntity -Name $VMName -Server $Server
    Коммандлет Find-VBRViEntity используется для VMware. А скрипт вроде как для Hyper-V.
    Должнобыть Find-VBRHvEntity
    $VM = Find-VBRHvEntity -Name $VMName -Server $Server

    GD Star Rating
    loading...
  • GSlavG

    Я правильно понимаю, что в строке:
    $ZIPSession = Start-VBRZip -Entity $VM -Folder $Directory …
    параметру -Folder мы можем передать только локальную директорию? Будет ли возможность работать с сетевыми каталогами во FREE версии? Или придется использовать «костыли» с репозиториями (чего очень делать не хочется)?

    GD Star Rating
    loading...
  • GSlavG

    Спасибо.
    А есть ориентировочные сроки добавления -NetworkCredentials?

    GD Star Rating
    loading...
    • Vladimir Eremin

      На данный момент «одна из следующий версий продукта» и есть ориентировочный срок. Точнее сейчас сказать сложно.

      GD Star Rating
      loading...
  • Gastello

    Появился ли параметр -NetworkCredentials в Veeam Backup & Replication 9.0 Update 2 ? и будет ли обновлён скрипт ? Заранее благодарю за ответ 🙂

    GD Star Rating
    loading...
    • Gastello

      Судя по всему — не появился.

      GD Star Rating
      loading...
      • Vladimir Eremin

        К сожалению, нет. Как только оный появится, скрипт будет обновлен.

        GD Star Rating
        loading...