Категория: Руководства
Коллега написал краткий, но содержательный пост для корпоративного блога, который сегодня и предлагается вашему вниманию (правильнее было бы назвать его «авторская русскоязычная версия, с изменениями и дополнениями»).
День добрый,
Меня зовут Владимир Ерёмин, я работаю в компании Veeam Software на позиции product manager. Одной из вверенных мне областей является PowerShell оснастка к нашему продукту Veeam Backup and Replication, и именно о работе с оной и пойдет речь далее.
Начнем с небольшого лирического отступления.
По ходу своей деятельности я неоднократно сталкивался с мнением, что скрипты и все, что с ними связано — это удел хардкорных бородачей, и, как говорил персонаж известного мультфильма, лучше не касаться их и десятиметровой палкой. В реальности, как это обычно водится, все выглядит несколько по-другому.
При должной сноровке знание PowerShell’a сильно облегчает жизнь – берешь задачу, выполнение которой потенциально могло занять N-ое количество часов, и, благодаря автоматизации, сводишь ее до нескольких минут. Избавляешь себя любимого от рутины, предотвращаешь фактор человеческой ошибки, вдобавок, учишься всякому новому и ранее неизведанному в процессе написания скриптов. Не стоит также забывать, что работа с тем же Nano Server’ом будет строиться исключительно через PowerShell. Поэтому, друзья, если вы не изучали PowerShell ранее, настоятельно рекомендую приступить к его изучению прямо сейчас.
Как и у каждой уважающей себя софтверной компании, у нас есть свой флагманский продукт, в нашем случае — всем известный и горячо любимый Veeam Backup & Replication. Чтобы никто не ушел обиженным, выпускается он в нескольких версиях, начиная от Free и заканчивая Enterprise Plus.
Главная особенность, которой может похвастаться бесплатная версия, — функция упрощённого бэкапа, называемая VeeamZIP.
Несмотря на всю свою простоту и удобство, была у VeeamZIP одна раздражающая деталь, которая заставляла пользователей вновь и вновь проливать скупые и не очень слёзы на наших форумах, а именно — невозможность создавать бэкапы по расписанию.
Все поменялось, когда с выпуском Veeam Backup & Replication v8 Update 2 мы отдали на откуп общественности несколько PowerShell командлетов. Используя их, пользователь был в состоянии написать простой скрипт, с помощью которого создавался бэкап одной или нескольких машин. Помимо этого, благодаря Task Scheduler, скрипту можно было выставить какое угодно расписание.
Прекрасно понимания, что для некоторых пользователей комбинация слов “простой” и “скрипт” выглядит слегка странной, я написал небольшой пример (скачать его можно тут [1] и тут [2] ). Ниже мы разберем его немного более подробно.
Как было сказано ранее, скрипт позволяет создавать бэкапы выбранных виртуальных машин. Машины могут находиться как на обычных хостах/кластерах, так и тех, что управляются vCenter’ом (да, в качестве разбора был выбран пример для VMware).
У скрипта есть три обязательных параметра: имена виртуалок, хосты/кластеры/vCenter, на которых они восседают, и папку, в которую положатся бэкапы.
Остальные параметры носят опциональный характер.
##################################################################
# Переменные, определяемые пользователем
##################################################################
# Имена ВМ для бэкапа. При наличии нескольких имён следует использовать запятую (обязательный параметр). Например, $VMNames = “VM1”,”VM2”
$VMNames = ""
# Имя сервера vCenter или хоста, кластера, где находятся ВМ (обязательный параметр)
$HostName = ""
# Папка для бэкапов. Например, C:Backup (обязательный параметр)
$Directory = ""
В зависимости от желаний и предпочтений можно поменять уровень компрессии, время, в течение которого должен храниться бэкап, настройки VMware Quiescence, а также параметры уведомлений:
# Уровень компрессии(опционально; возможные значения: 0 – выкл. 4 – рекомендованный для дедупликационных хранилищ, 5 - оптимальный, 6 - высокий, 9 - максимальный)
$CompressionLevel = "5"
# VMware Tools Quiescence. «Заморозить» ВМ при создании снапшота (опционально; на машине должны быть установлены VMware Tools. Возможные значения: $True/$False)
$EnableQuiescence = $True
# Время хранения (опционально; по умолчанию, файлы VeeamZIP не удаляются, а хранятся в указанной папке неограниченное время.
# Возможные значения: Never, Tonight, TomorrowNight, In3days, In1Week, In2Weeks, In1Month)
$Retention = "Never"
Если есть необходимость получать отчёт о проделанной работе, можно поиграться с настройками уведомлений:
Отчёт выглядит следующим образом:
Экспериментируя со значениями переменных, можно найти ту комбинацию, которая удовлетворит именно вашему представлению о прекрасном. К примеру, если вы хотите, чтобы бэкапы были удалены через две недели, поставьте переменной $Retention значение “In2Weeks” и так далее.
Для пущего удобства я снабдил переменные в скрипте кратким описанием, поэтому острой необходимости описывать здесь каждую настройку в отдельности и ее возможные значения, на мой взгляд, нет.
Прежде чем ставить выполнение скрипта на поток, советую убедиться, что с ним в порядке, запустив его пару раз вручную.
Самый простой из известных мне способов запускать скрипты по расписанию – это Windows Task Scheduler.
Открываем его и переходим к созданию Basic Task.
Не забываем про то, что задания неплохо снабжать многозначительными именами и описаниями, чтобы не тратить впоследствии драгоценное время, гадая, что же это такое выполняется, а главное – с какой целью.
Следующая страница – Task Trigger.
Здесь всё просто и интуитивно понятно. Нужно решить, как часто нам хотелось бы создавать бэкапы (в английском под это дело есть умная аббревиатура – RPO, Recovery Point Objective), и отразить наши желания в виде заданных настроек.
Самый распространенный вариант – создание бэкапа раз в сутки.
Далее ставим время выполнения скрипта. Чтобы избежать излишних нагрузок на серверы в рабочее время, часто выбирают вечерние часы.
На следующей странице указываем запуск программы в качестве необходимого действия и следуем дальше.
В соответствующее поле вводим следующую команду:
Powershell –file “Путь к файлу Veeamzip.ps1”
Ну, вот и всё! Если вдруг вспомнили, что нужно внести кое-какие изменения в только что созданную задачу, то ставим флажок “Open the Properties” перед тем, как нажать “Finish” .
Есть серьезное подозрение, что в подавляющем большинстве случаев скрипт будет выполняться на сервере в то время, когда ответственный пользователь и не залогинен вовсе. В связи с чем рекомендуется указать логин и пароль, что позволит скрипту совершать свое черное дело без пользовательского логина в системе.
Т.к. мы люди мнительные, не будет лишним после создания задачи щелкнуть по ней правой кнопкой мыши и прогнать ее в тестовом режиме. (“Run”)
Вместо послесловияЗасим наше увлекательное путешествие в мир скриптов можно считать оконченным. Долгожданная цель (бэкапы по расписанию) достигнута, а интерес к PowerShell пробужден, по крайней мере, я искреннее надеюсь на это. Не стесняйтесь по всем возникшим вопросам обращаться к нам как здесь, так и на наших форумах (forums.veeam.com [3] ).
До новых встреч!
Цель сегодняшней заметки создать пошаговую часть в ходе которой будет развернуто программное обеспечении задачей которого будет резервное копирование и восстановление виртуальных машин развернутых на хосте ESXi. Хост ESXi — это гипервизор который ставится на серверное железо (можно и на обычный компьютер, но только в рамках самообучения ) с целью получения максимум от ресурсов сервера (а именно CPU, HDD, RAM ). Все уже давно знаю, что система никогда на 100% не задействует ресурсы находящиеся в ее распоряжении, а вот с использование гипервизора можно на мощном железе развернуть несколько виртуальных контейнеров и внутри каждого развернуть любые операционные системы, будь-то Windows, Linux и т. д. Ну ладно будет считать, что с установкой виртуальной машины на ESXi Вы справились, но вот встает вопрос — как осуществлять резервное копирование виртуальных машин, чтобы в последствии развернуть их на новом хосте ESXi в случае чего. Можно конечно все сделать с нуля, но это потеря времени, да и порой мы просто не помним как настраивали ту или иную систему. Вот и на помощью приходит продукт именуемый, как Veeam Backup. есть как бесплатная версия так и платная. Если компания в которой Вы работаете, как системный администратор не хочет выделять деньги на надежность своего бизнеса в случае каких либо непредвиденных происшествий с сервером, то используем бесплатную версию. В моем случае как раз это и есть, просто пока гром не грянет — деньги на IT инфраструктуру не будут выделяться. Прям я себе прошу (относя счет на покупку того или иного железа,софта и обоснования к нему зачем мне это надо), мне же в первую очередь надо, что в случае чего мне не пришлось судорожно оправдываться, как так у нас не резервной копии.
Разворачивать данный продукт Veeam Backup в рамках этой заметки шпаргалки я буду внутри основной системы Ubuntu 12.04.5 Desktopamd64 с использование моего полигона для испытаний > Virtualbox. а уже в нем ось на которую и буду ставить рассматриваемое в этой заметки программное обеспечение:
в роли системы на которую можно поставить бесплатный пакет приложения для резервного копирования и восстановления может выступать операционные системы развернутые, как на физическом железе так и под виртуальной.
Вот скриншот из документации по операционной системе на которую можно развернуть Veeam Backup:
Однажды когда только начал на прошлой работе внедрять данный продукт для резервного копирования я не внимательно прочитал документацию и долго не мог понять, почему когда запускаю setup.exe получаю сообщение:
Current operating system is not supported or lacks the required service pack. See system requirements for mor information.
И что самое плохое я даже не удосужился прочитать это сообщение, просто нажимал — OK. А надо было быть более внимательнее, сэкономил бы себе много времени, но время я провел с пользой как оказалось в последствии читая документацию по продукту с целью выяснить, а чего же собственно не хватает.
Итак системные требования гостевой системы Windows Server 2008R2: (в моем случае не участвует в составе домена, т. е. Состоит в обычном рабочей группе Workgroup )
из этого вывода следует, что у меня не стоит SP1 — ставлю. windows6.1-KB976932-X64
Host Name: SRV-DC
OS Name: Microsoft Windows Server 2008 R2 Enterprise
OS Version: 6.1.7600 N/A Build 7600
OS Manufacturer: Microsoft Corporation
OS Configuration: Standalone Server
для быстроты установки не скупитесь на оперативной памяти
Также потребуется установить. dotNetFx40_Full_x86_x64
После того, как гостевая система была настроена согласно требования документации.
Далее скачиваем с официального сайта: www.veeam.com — а момент написания данной заметки это Veeam Backup Free Edition v8. что самое примечательно что по словам данный продукт не будет стеснен в своем функционале после прошествии 30 дней как все остальные продукты серии Veeam. А это очень многообещающе — мне и данного функционала пока предостаточно.
Скачав пакет Veeam Backup Free Edition v8 инсталлирую его на систему:
Backup&Replication.8.0.0.817.iso — 7Zip Extract — setup.exe — Veeam Backup & Replication (Install) — Next — соглашаемся с лицензионным соглашение (Next ) > раз лицензии нет то просто нажимаем Next > Next > Install (этим мы до установим в автоматическом режиме необходимые компоненты перед самой установкой, а именно:
) > ожидаем… процесс не слишком долгий нажимаем Next — Install — и снова ожидаем… — Finish.
На заметку: наличие интернета в процессе установки не обязательно.
Теперь после того, как продукт Veeam установлен я покажу на реальном примере как забекапить виртуальную систему (Домен контроллер для текущей площадки и DNS ).
Start — All Programs — Veeam — запускаем Veeam Backup & Replication
Далее нужно настроить авторизацию на ESXi хосте.
Infrastructure — Vmware vSphere — через правый клик меню: Add server…
DNS name or IP address: 10.7.8.166
На шаге Credentials
После Manage Accounts — Add —
Description: Authenticate ESXi host
Нажимаем OK,OK, этим мы подставим введенные идентификационные данные для ESXi Хоста
После проверяем что порт Port: 443 и нажимаем Next — Ждем покуда завершится авторизация:
Сообщение: Detecting server type…, Saving server to configuration…
VMware ESXi Server ‘10.7.8.166’ was successfully created.
После нажимаем Finish
Теперь когда подключение к ESXi хосту настроено можно пройтись по шагам резервного копирования виртуальной машины данного хоста на хранилище Synology DS414
Для справки: мое хранилище Synology DS414 подключено к домену, так что для резервного копирования в созданные каталоги нужно предварительно на нем авторизоваться с помощью идентификационных данных Active Directory.
Infrastructure — Vmware vSphere — 10.7.8.166 — с права находим все виртуальные машины данного хоста и на необходимой щелкаем правой кнопкой мыши и вызываем пункт VeeamZIP …
указываем месторасположение создаваемой резервной копии Browse… — Computer — находим подключенное хранилище, диск X: и нажимаем OK
Ранее нужно было подключить хранилище следующим образом:
X: was deleted successfully.
c:\>net use X: \\10.7.8.162\backup\esxi /user:aollo@nemdomb.local <доменный_пароль>
The command completed successfully.
Снова нажимаем Manage accounts — Add и указываем идентификационные данные для авторизации на хранилище с местоположением будущей резервной копии:
в итоге все должно быть так:
Нажимаем в данном окне OK тем самым начинается процесс создания резервной копии виртуальной машины, данный процесс будет выполняться быстрее если подготовлены все условия:
ESXi хост — станция с Veeam Backup — Хранилище соединены, к примеру Ethernet 1Gb/s. у меня же в рамках этой заметки я больше 100MB /s не могу физически дать, но это так к слову.
Ниже скриншот процесса резервного копирования:
Полученный бекап моего домен контроллера составил: Backup_srv-dc_2015-10-15T112119.vbk = 13,7Gb
Отлично, еще на заметку: может так случиться, что когда Veeam Backup & Replication установлен и пытаетесь сделать бекап виртуальной станции в консоль вываливается сообщение:
14.10.2015 15:38:05. Processing srv-dc Error: Current license or ESXi version prohibits execution of the requested operation.
Все дело в установленной лицензии на ESXi хосте, переустановил ее на другую и бекап успешно пойдет и завершится выше (как продемонстрировано ранее в текущей заметке) успешно.
На этом я хочу закруглиться, заметка работоспособна и теперь если где либо я буду еще внедрять систему резервного копирования Veeam я смогу смело обратиться на свой блог и вспомнить что к чему и опираясь на нее оптимизировать к новой задаче. До встречи, с уважением автор блога — ekzorchik.
Навигация по записямНе так уж и часто среди сотен программ для резервного копирования компьютера удается встретить практически полнофункциональный, производительный, да еще и бесплатный программный продукт. Герой нашего времени - Veeam Endpoint Backup Free.
С помощью Veeam Endpoint Backup Free Вы сможете:
Рис.1. Начало установки Veeam Endpoint Backup.
Рис.4. Запуск Мастера создания загрузочного носителя.
5. Мы можем выбрать несколько вариантов: Создать компакт-диск восстановления, USB-диск восстановления либо создать ISO-образ (с помощью которого дальше можно создать как компакт диск, так USB-диск для восстановления. В моем случае выбираем USB-диск. В диск восстановления можно включить драйверы с текущего компьютера (верхний чекбокс), а также другие различные драйвера на устройства хранение и сетевые адаптеры. Это удобно в случае развертывания резервной копии на другом железе. Нажимаем Next (Рис.5).
Рис.5. Выбор носителя для создания Диска восстановления.
6. Система предупредит, что USB-диск будет отформатирован. нажимаем Yes (Рис.6).
7. В окне "Create Rcovery Media" нажимаем Next (Рис.7).
8. После успешного создания загрузочного носителя нажимаем Finish (Рис.8).
9. Открываем Панель управления Veeam Endpoint Backup из трея. В появившемся окне нажимаем "Configure backup" (Рис.9).
Рис.9. Начало настройки резервного копирования.
10. Далее мы можем выбрать один из трех режимов резервного копирования:
В моем случае я выбрал резервное копирование определенного тома (буду делать резервную копию системного диска). Выбираем Volume Level Backup и нажимаем Next (Рис.10).
Рис.10. Выбор режима резервного копирования.
11. Выбираем необходимые нам диски (скрытый раздел восстановления автоматически выбран в схему бэкапа) и нажимаем Next (Рис.11).
Рис.11. Выбор дисков для резервного копирования.
12. Далее выбираем место сохранения резервных копий. Тут у нас есть три варианта:
Я буду делать резервные копии на NAS, поэтому выбираю Shared Folder и нажимаю Next (Рис.12).
Рис.12. Выбор места сохранения резервных копий.
13. Далее указываем сетевой путь до папки, вводим учетные данные хранилища (в моем случае учетные данные NAS) и количество точке восстановления. Нажимаем Next (Рис.13).
Рис.13. Настройка сетевой папки и учетных данных хранилища.
14. В следующем окне мы можем настроить расписание резервного копирования. также можем указать начало бэкапа по определенным признакам (Компьютер заблокирован\пользователь вышел из системы или подключен источник резервного копирования). Выбираем нужные нам параметры и нажимаем Next (Рис.14).
Рис.14. Настройка расписания и условий запуска резервного копирования.
15. В следующем окне мы можем запустить резервное копирование немедленно (ставим галочку в чекбоксе "Run the jobwhen I click Finish" и нажимаем Finish. Можно галочку не ставить и тогда задание запуститься согласно расписанию, установленному нами в предыдущем окне программы. Мне необходимо сделать бэкап немедленно, поэтому ставлю галочку и нажимаю Finish (Рис.15).
Рис.15. Завершение создание плана резервного копирования.
16. После успешного создания резервной копии во вкладке Status мы можем отслеживать все запуски и статусы резервного копирования. Зеленый - ок, Желтый - есть предупреждения, Красный - ошибки. (Рис.16).
Рис.16. Статус текущих резервных копий.
17. Во вкладке Settings мы можем настроить следующее (Рис.17):
Рис.17. Базовые настройки Veeam Endpoint Backup.
18. Вкладка Support - онлайн-помощь и связь с технической поддержкой (Рис.18).