Автоматизація завдань резервного копіювання за допомогою vCenter Orchestrator через Veeam Restful API

Більшість тих, хто стикався з автоматизацією завдань VMware vSphere, рано чи пізно дізнається про VMware vCenter Orchestrator.

Наявність REST плагіна у цього фреймворку привело нас до думки, що можна провести інтеграцію vCenter Orchestrator з Veeam Backup & Replication, автоматизувавши, таким чином, операції, що виконуються Veeam Backup Enterprise Manager, зокрема: запуск, зупинка або перегляд статистики бекапів, виконання відновлень, перегляд, управління ролями безопаності.

Отже, вихідні дані:
  • встановлений vCenter Orchestrator 5.5.2
  • встановлений Veeam Backup & Replication v8 Enterprise Plus
Що потрібно:
  • зробити так, щоб воно працювало разом через REST (до речі, через PowerShell інтеграція теж можлива, але це вже поза рамками цього кейса)
Що вас очікує:
  • нюанси інтеграції
  • приклади REST запитів
Прошу під кат за деталями.

Підготовка: установка і настройка vCO

Насправді, установка vCO — це взагалі окрема пісня, у якій кілька куплетів і приспівів (ні, серйозно, чому vCO не підтримує IE молодше 10, але злітає на Firefox 15?). Якщо когось цікавить ця історія, пишіть в коментарях, із задоволенням поділюся своїми «tips & tricks».

Але, загалом і в цілому, для інтеграції з Veeam Backup & Replication найголовніше, — це встановити REST plugin. За всім іншим ласкаво просимо в офіційну документацію VMware.

Підготовка: налаштування Veeam Backup & Replication

Хотілося б звернути особливу увагу, що розглянутий кейс можливий тільки якщо у вас встановлений Veeam Backup & Replication Enterprise Plus. Причина дуже проста — повна назва інтерфейсу — Veeam Backup Enterprise Manager RESTful API. Тобто API дозволяє розробникам спілкуватися саме з Enterprise Manager, а цей компонент доступний тільки, якщо у вас ліцензія Enterprise Plus.

Таким чином, підготовка до інтеграції з vCO виглядає наступним чином:

  1. Встановлюємо і налаштовуємо Veeam Backup Enterprise Manager
  2. Все, до інтеграції готові :)


Крок перший: встановлюємо з'єднання

Для установки з'єднання vCO з Veeam RESTful API необхідно додати REST хост.





У занедбаному Wokflow необхідно заповнити поля Name, URL. Налаштування Connection timeout і Operation timeout можна не міняти.

До Veeam RESTful API можна «достукатися» за наступними адресами:





Вкажіть проксі, якщо він використовується. Ми вирішили для нашого прикладу обійтися без неї.



Вкажіть тип аутентифікації; ми подумали-подумали і вибрали basic.



Наступний крок: вибираємо режим сесії (Shared Session або per User Session) і вказуємо дані аутентифікації.



В тому разі якщо ви, як і ми, вирішили вибрати https з'єднання, необхідно прийняти SSL сертифікат.





І якщо все пройшло гладко, ніде нічого не відвалилося і не відлетіло, то Workflow буде створений.



Крок другий: імпортуємо схему

Наступний крок — це іморт Veeam REST схеми. Вона доступна на сервері, де розгорнуто Veeam Backup Enterprise Manager. У нашому випадку це:

C:\Program Files\Veeam\Backup and Replication\Enterprise Manager\schemas\RestAPI.xsd

Найпростіший спосіб — розшарити схему на веб-сервері, щоб vCO зміг до неї «достукатися».
І приступаємо безпосередньо до процесу імпорту.



Вибираємо доданий на попередньому кроці хост.



Вказуємо шлях, де лежить схема.



Схема імпортована.



Крок третій: робимо, що хочемо

Після тривалого етапу налаштувань, нарешті, ми можемо насолоджуватися тим, що можемо запускати будь-які операції, які можна з Veeam Backup Enterprise Manager. Для прикладу ми вирішили створити ряд дуже простих запитів.Зокрема:

Отримали список бекап серверів.



Ознайомилися зі списком failover планів.



Ну і пораділи колекції Cloud Gateways.



висновок

На закінчення хочеться сказати, що процес інтеграції виявився досить простим, якщо знати, куди натискати і що додавати. Якщо запропонувати мені зараз переробити всі 16 картинок, які вставлені для демонстрації процесу, то це займе менше години.
І тепер навіть стало цікаво — а для PowerShell вийде все складніше або простіше? Хто-небудь хоче спробувати?.. Може, розібрати кейс складніше? Що думаєте?

Додаткова інформація:


Варто розглянути інтеграції кейс з vCO через PowerShell?

/>
/>


<input type=«radio» id=«vv64991»
class=«radio js-field-data»
name=«variant[]»
value=«64991» />
Чому б і ні?
<input type=«radio» id=«vv64993»
class=«radio js-field-data»
name=«variant[]»
value=«64993» />
Обов'язково, тільки запити повинні бути складніше
<input type=«radio» id=«vv64995»
class=«radio js-field-data»
name=«variant[]»
value=«64995» />
Навіщо? Адже результат один і той же

Проголосувало 2 людини. Утрималося-2 людини.


Тільки зареєстровані користувачі можуть брати участь в опитуванні. Увійдіть, будь ласка.


Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.