Программные интерфейсы управления серверной...

81
Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director) Евгений Лагунцов Системный инженер-консультант © 2015 Cisco and/or its affiliates. All rights reserved.

Upload: cisco-russia

Post on 14-Apr-2017

362 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Евгений Лагунцов Системный инженер-консультант

© 2015 Cisco and/or its affiliates. All rights reserved.

Page 2: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

UCS Manager •  Управление на основе абстракций •  Сокращение времени развертывания •  Перераспределение ресурсов быстро и эффективно

•  Оптимизация инфраструктуры •  Взаимозаменяемые ресурсные пулы

Унифицированная фабрика

Вычислительные узлы БЕЗ компромиссов •  Поддержка как блейд так и стоечных серверов в единой системе

•  Поддержка виртуализированных и bare-metal приложений

Виртуализированный ввод-вывод •  Гибкость и масштабируемость •  Высокая производительность

Составные части Cisco UCS

XML API STANDARD

API’S

Page 3: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интегрированное управление

UCS Manager

GUI

Внешние системы управления CLI

Primary Secondary (HA)

Специализированные утилиты и порталы

•  Единое управление ВСЕЙ системой (до 160 серверов и вся LAN/SAN инфраструктура) из ОДНОЙ точки (резервированной)

•  Физические серверы не являются объектом конфигурирования – они всего лишь часть ресурсного пула

•  Внутренние сетевые порты не являются объектами конфигурирования – они настраиваются автоматически

•  Конфигурируются общие политики, шаблоны, профили – многократно используемые, тиражируемые элементы

•  Все серверные настройки отвязаны от «железа» – «динамические», «мобильные», «масштабируемые»

•  Система управления интегрирована и резервирована

Page 4: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интерфейс прикладного управления UCS XML API

Стандартный XML API Доступ к физическим и логическим объектам внутри UCS

XML API

Напрямую UCS CLI UCS GUI 3rd Party Customer

Self Service portals

Management Tools

Auditing Tools

System Status Physical Inventory Logical Inventory

Page 5: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Обзор UCS XML API

•  Соединения поверх HTTP / HTTPS •  Транзакционный обмен сообщений XML с соблюдением порядка транзакций

•  Режим «запрос/ответ» •  Аутентификация на основе ролей пользователя •  Иерархическая модель объектов •  Встроенный браузер объектов •  Документированная схема XML в публичном доступе •  Встроенная отказоустойчивость

Характеристики UCS XML API

XML API

Page 6: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Иерархическая модель объектов Cisco UCS Management Information Tree (MIT)

Объекты управления §  Физические (процессоры, шасси, серверы, модули ввода-вывода, …) §  Логические (пулы ресурсов, роли пользователей, политики, профили, …)

Объекты управления (Management Object – MO)

Page 7: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

PowerShell модули для интеграции с Cisco UCS Доступны для UCS систем и stand-alone C-серии

Свободно скачивается с http://cisco.com

PowerTool for UCSM содержит около 2000 команд

Доступно 100% функционала UCSM

Отлично сочетается с идеологией управления Microsoft

Что такое PowerTool

Page 8: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

§  Оборудование §  VLANs, LAN Uplink, SAN Uplink, Server, Appliance Ports, Port Channels, и т.д.

§  Пулы §  Servers, UUID, MAC, IP, WWPN, WWNN, iSCSI, и т.д.

§  Политики §  BIOS, Firmware, Adapters, Boot, Drives, и т.д.

§  Шаблоны §  vNIC, vHBA, Service Profile Templates, и т.д.

§  Отчетность §  vNIC Statistics, vHBA Statistics, Thermal, Resources, и т.д.

Глубина возможностей PowerTool

Page 9: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

§  Открываем UCSM GUI §  Import-Module CiscoUcsPs §  Запускаем ConvertTo-UcsCmdlet в сессии PowerShell

§  Будет работать пока не остановим

§  Делаем что-то в UCSM GUI и жмем ‘Save’

§  Смотрим на сессию PowerShell

§  Увидим PowerShell команды для выполненных в UCSM операций

Легкий в обучении

Page 10: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Веб-сообщество http://developer.cisco.com/web/unifiedcomputing/home §  Загрузки:

§  UCS Platform Emulator (UCSPE) §  goUCS Automation Tool §  XML API, Perl, PowerShell code samples

Microsoft – PowerShell library, SCOM MP §  Python SDK

§  Документация: §  Programming & developer guides §  White papers §  Reference guides (XML model, Faults)

Cisco Developer Network

10

Page 11: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

UCS Platform Emulator (UCSPE)

11

Полноценный эмулятор UCS Manager Распространяется в виде виртуальной машины Не требует оборудования UCS Полностью поддерживает XML API Содержит браузер объектов XML-схемы Создание собственной или импорт имеющейся аппаратной конфигурации UCS

Page 12: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

1

2

3

Выполнить действие в UCS Manager и перехватить XML в goUCS

Создать скрипт в goUCS, заменяя постоянные значения на переменные

Запускать скрипт по своему усмотрению с нужными параметрами

Программа goUCS

12

Программа автоматизации управления UCS для сред Windows, Linux, MAC OS Абстрагирует пользователя от использования XML Позволяет конвертировать XML-вызовы в сценарии

Page 13: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

UCS Director – открытая и расширяемая платформа для автоматизации в ЦОД

Page 14: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пакет ПО Cisco Enterprise Cloud Suite

Cloud Services

Экосистема сервис-провайдеров

Cisco® Virtual Application Container Services

Портал самообслуживания Cisco Prime™ Service Catalog

Управление интегрированными стеками Cisco UCS® Director

Мультивендорная инфраструктура: серверы, сеть, SAN, СХД, гипервизоры

Управление гибридным облаком Cisco Intercloud Fabric

C

loud

Ope

ratio

ns (C

loud

Ass

uran

ce) (

3rd -

Par

ty B

illin

g, A

ssur

ance

, Res

ourc

e M

gmt)

Page 15: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

UCS Director: управление конвергентной инфраструктурой «в целом»

Развертывание на основе политик

vFiler

СХД Вирт. машины

Сеть Вычислит. платформа

Безопасные контейнеры для приложений

Self-Service Infrastructure

Единая точка управления

Сквозная

автоматизация и управление

жизненным циклом

СХД

Сеть

Вычисления

Tenant B

Tenant C

Tenant A

A B C

Виртуализация

Storage Manager

B C A

Virtualization Manager

Network Manager

Compute Manager

Storage Manager

Page 16: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

UCS Director: возможности API и SDK

UCS Director

REST API на основе JSON и XML, PowerShell

Интеграция с внешними системами

(например, портал)

PowerShell SSH

Физическая среда или среда виртуализации

Запуск скриптов на стороне

инфраструктуры

Open Automation SDK

Физические или виртуализированные элементы

инфраструктуры ЦОД

Комплексная интеграция с инфраструктурой

Cloupia Script

Запуск скриптов на стороне UCS Director

Page 17: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Публично доступные сценарии для UCS Director

Page 18: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример № 1

Page 19: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Практический пример № 1

UCS Director Сеть

Сервер

СХД

Virtualization

VMware Hyper-V KVM Развертывание виртуальных

машин автоматизируется

при помощи UCS Director

Решение: Использование Cloupia Script на основе JavaScript

Задача: Получить расширенную информацию о виртуальной машине в сценарии автоматизации: IP адрес, ID-хоста гипервизора и т.д.

Page 20: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

CloupiaScript

Page 21: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Сценарий автоматизации 1. Запуск сценария

Сценарий автоматизации с использованием CloupiaScript

UCS Director

Шаг № 1

Шаг № 2

Шаг № 4

Cloupia Script

2. Выполнение скрипта Cloupia Script

var a = 2; var b = 5; var total = a+b; logger.addInfo("Total is " + total);

Page 22: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Свойства CloupiaScript

1.  Cloupia Script = Java Script + Cloupia Libraries

2.  Запускается внутри UCS Director – на серверной стороне

3.  Различные Cloupia Java API и объекты доступны из скрипта

4.  Весь синтаксис Java Script поддерживается

5.  Поскольку скрипт выполняется на серверной стороне, никакие объекты ‘Browser’ related не поддерживаются

Более подробно: Cisco UCS Director CloupiaScript Cookbook http://www.cisco.com/c/dam/en/us/td/docs/unified_computing/ucs/ucs-director/cloupia-script-cookbook/5-0/CloupiaScript-Cookbook.pdf

Cloupia Script SDK https://developer.cisco.com/fileMedia/download/0f4ec17c-ba4c-4627-a505-033479b69b38

Page 23: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Использование CloupiaScript для получения информации об IP адресе виртуальной машины

Page 24: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Используем готовый сценарий автоматизации

Policies -> Orchestration -> Workflows -> Import

https://communities.cisco.com/docs/DOC-56732

Page 25: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

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

Входной переменной для сценария является идентификатор виртуальной машины

•  Policies -> Orchestration -> Workflows -> -> Edit workflow

Page 26: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование сценария автоматизации После импорта готового сценария в разделе Custom Task появился шаг «Retrieve VM IP address»

Теперь этот шаг можно использовать в собственных

сценариях

Page 27: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование кастомизированного шага сценария

Вместе со сценарием автоматизации в базу UCS Director импортируется так же и кастомизированный шаг, который представляет собой Сloupia Script

•  Policies -> Orchestration -> Custom Workflow Tasks -> -> Edit

-> входная переменная для скрипта, которая является указателем на объект «Виртуальная машина»

Page 28: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование CloupiaScript

Получаем структуру с информацией о виртуальной машине

Получаем IP адрес

Логируем информацию

Передаем IP адрес в выходную переменную

Page 29: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Запускаем сценарий автоматизации

Запускаем сценарий •  Policies -> Orchestration -> Workflow -> -> Execute now

Выбираем виртуальную машину

Page 30: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Проверяем выполнение сценария

Лог действий в UCS Director

IP-адрес виртуальной в переменной

Page 31: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример № 2

Page 32: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример № 2

UCS Director Сеть

Сервер

СХД

Virtualization

VMware Hyper-V KVM Развертывание виртуальных

машин автоматизируется

при помощи UCS Director

DNS сервер

Задача: автоматизация внесений записей DNS для вновь развертываемых виртуальных машин

Решение: Использование Microsoft PowerShell

Page 33: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция UCS Director и PowerShell агента

Page 34: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция UCS Director и Microsoft при помощи PowerShell агента

UCS Director

UCS Director PowerShell агент

PowerShell скрипт по защищенному

каналу

Скрипт исполняется на стороне

Windows сервера

Page 35: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Установка PowerShell агента

Administration -> Virtual Accounts -> PowerShell Agents -> Download Installer

1

2 Установка агента

Page 36: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка WinRM и WinRS Проверить что сервисы WinRM и WinRS включены

Windows Remote Management (WinRM) 3

Windows Remote Shell (WinRS) 4

Page 37: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка таблицы доверенных хостов для WinRS

winrm set winrm/config/client @{TrustedHosts=" "}* - любой хост winrm set winrm/config/client @{TrustedHosts=“ "}A.B.C.D – IP адрес UCS Director

5

6 проверяем список доверенных хостов winrm g winrm/config

Page 38: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настраиваем подключение к агенту из UCS Director

Administration -> Virtual Accounts -> PowerShell Agents -> Add 7

Тестируем соединение 8

Page 39: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Тестируем исполнение простейшей команды на стороне Windows 2012 сервера

9

10

Page 40: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Использование PowerShell для автоматизации настройки DNS

Page 41: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Автоматизация настройки DNS

UCS Director

UCS Director PowerShell агент

Развертывание виртуальной машины

1

Настройка DNS записей 2

Page 42: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Используем готовый сценарий автоматизации Policies -> Orchestration -> Workflows -> Import

https://communities.cisco.com/docs/DOC-54044

Page 43: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка информации о DNS зонах в UCS Director

•  Импортированный сценарий автоматизации использует собственные переменные для хранения информации о DNS-зонах

•  Переменные импортируются вместе со сценарием оркестрации

•  Вносим изменения для того чтобы указать собственные зоны •  Policies -> Orchestration -> Сustom Workflow Inputs -> -> Edit

Page 44: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка параметров сценария автоматизации 1/2

Настраиваем импортированный сценарий •  Policies -> Orchestration -> Workflow -> -> Edit Workflow

Контекст определяет виртуальную машину для которой будет

добавляться DNS-запись в зону

Page 45: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка параметров сценария автоматизации 2/2

Проверяем использование переменных в которых хранится информация о DNS-зонах

Переменная с набором зон

Page 46: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование сценария автоматизации

Переходим в режим редактирования •  Policies -> Orchestration -> Workflow -> -> Workflow Designer

Page 47: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование шагов сценария автоматизации

Выбираем PowerShell агент

Редактируем PowerShell скрипт

Page 48: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Запускаем сценарий автоматизации

Запускаем сценарий •  Policies -> Orchestration -> Workflow -> -> Execute now

Выбираем виртуальную машину

Выбираем DNS-зону

Page 49: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Проверяем выполнение сценария

Лог действий в UCS Director

Новая запись в DNS-зоне

Page 50: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример № 3

Page 51: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример № 3

API

2. Запрос на выделение IP адреса

3. Получение IP адреса из DDI системы

DDI система

UCS Director

1.Развертывание виртуальной машины

4. Настройка IP адреса полученного из DDI

системы

5. Добавление записи о хосте в DDI систему

система управления DNS, DHCP и IP адресацией

Page 52: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция с DDI-системой компании InfoBlox при помощи REST API

Page 53: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Используем готовый сценарий автоматизации Policies -> Orchestration -> Workflows -> Import

https://communities.cisco.com/docs/DOC-57415

Page 54: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция UCS Director и Infoblox

REST API (WAPI)

1. Запрос на выделение IP адреса

2. Получение IP адреса из DDI системы

DDI система

UCS Director 3. Добавление записи о хосте в DDI систему

система управления DNS, DHCP и IP адресацией

Виртуальная машина, развернутая

при помощи UCS Director

Page 55: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция с Infoblox при помощи CloupiaScript

Вместе со сценарием автоматизации в базу UCS Director импортируются так же и кастомизированные шаги, которые представляют собой Сloupia Script

•  Policies -> Orchestration -> Custom Workflow Tasks -> -> Edit

•  Policies -> Orchestration -> Custom Workflow Tasks -> -> Edit

•  Policies -> Orchestration -> Custom Workflow Tasks -> -> Edit

Page 56: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка IPAM в Infoblox

Подсеть, контролируемая IPAM

В пуле 253 свободных адреса

Page 57: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Настройка DNS в Infoblox

Контролируемые DNS-домены

Page 58: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Редактирование сценария автоматизации После импорта готового сценария в разделе Custom Task появилась папка «Infoblox»

Теперь эти шаги можно использовать в собственных

сценариях

Page 59: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Переменные, используемые в сценарии автоматизации

•  Импортированный сценарий автоматизации использует собственные переменные для хранения информации о системе InfoBlox, а так же о добавляемом в систему хосте

•  Просмотр переменных •  Policies -> Orchestration -> Workflows -> -> Edit workflow

Page 60: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример CloupiaScript при интеграции с InfoBlox

Page 61: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Запускаем сценарий автоматизации

Запускаем сценарий •  Policies -> Orchestration -> Workflow -> -> Execute now

DNS-имя добавляемого хоста

DNS-домен

Page 62: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Проверяем выполнение в UCS Director

Выполнение сценария в UCS Director

IP-адрес, полученный из IPAM

Page 63: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Проверяем выполние в InfoBlox Новая запись в IPAM

Новая запись в DNS

Page 64: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Возвращаем все в исходное состояние

Встроенный механизм возврата в исходное состояние – Rollback Request

Page 65: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Open Automation и SDK. Интеграция UCS Director с «новыми» устройствами 65

Page 66: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Поддержка инфраструктуры 3-х производителей

VMware

Hyper-V

Cisco UCS Director

Интеграция out of the box Open Automation Framework

Page 67: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Возможности Open Automation

Поддержка инфраструктуры третьих производителей Новые “кирпичики” для построения сценариев автоматизации Life Cycle Management

§  Специализированные типы учетных записей, Pod-ов §  Инвентаризация, Конфигурация, Развертывание, Мониторинг, Тригеры

GUI §  Дополнительные пункты меню

Отчеты §  Таблицы, Диаграммы, Summary и т.д. §  Отчеты CloudSense®

67

Page 68: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Интеграция с UCS Director через REST API

Page 69: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

REST API

Использует HTTP в качестве протокола

§  GET – Получить данные §  PUT – Изменить объект §  POST – Создать объект §  DELETE – Удалить объект

JSON и/или XML формат Аутентификация через Cookies или заголовки Клиент посылает Request Сервер возвращает Response

69

GET /api/v1/routing-svc/eigrp Accept: application/json

200 ok Content-type: application/json { “kind”: “collection#eigrp-asn”, “items”: [ { “kind”: “object#eigrp-asn”, “routing-protocol-id”: “100” }, ] }

Request

Response

Page 70: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Пример REST запроса к UCS Director

# “curl” utility for sending REST request curl -v --header "X-Cloupia-Request-Key: 10E17C7EB358376DAC96F829FB3081D2" http://cloud-ucsd.csc.richfield.cisco.com/app/api/rest?formatType=json\&opName=userAPIGetAllCatalogs # HTTP GET Request from Client > GET /app/api/rest?formatType=json&opName=userAPIGetAllCatalogs HTTP/1.1 > User-Agent: curl/7.37.1 > Host: cloud-ucsd.csc.richfield.cisco.com > Accept: */* > X-Cloupia-Request-Key: 10E17C7EB358376DAC96F829FB3081D2 >

70

Аутентификация

JSON Format Требуемая функция

Page 71: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

REST ответ от UCS Director-а

# HTTP Response from Server < HTTP/1.1 200 OK < Server: Apache-Coyote/1.1 < Set-Cookie: JSESSIONID=69E75630EDB5A3C70929E666360A8EB4; Path=/app/ < Cache-Control: max-age=0,must-revalidate < Expires: -1 < Content-Type: application/json;charset=UTF-8 < Transfer-Encoding: chunked < Date: Sat, 09 May 2015 18:54:32 GMT < { "serviceResult":{"rows":[{"Catalog_ID":"1","Catalog_Name":"General Linux Web Server","Folder":"General Servers","Catalog_Type":"Standard","Template_Name":"Not Applicable","Catalog_Description":"","Cloud":"cloud-vcenter","Image":"base-rhel63-2","Group":"Cloud [email protected],Cloud [email protected]","Icon":"/app/images/temp/1427462292263_redhat.png”,...

71

Ответ в JSON формате

Page 72: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

API Essentials for IT Folks Making REST easy with Postman

72

Save Examples

Easy parameters

Headers

Response Data Display

Page 73: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

API Essentials for IT Folks

Great Language for IT Evolution §  Easy to learn and read §  Huge amount of samples §  Runs on nearly anything

“requests” module to “REST” easy §  Simple Interface §  Hides the HTTP Intricacies

Simple Utility Creation with “argparse”

Hacking together with Python import requests

headers = {"X-Cloupia-Request-Key":key}

url = "http://” + / “cloud-ucsd.csc.richfield.cisco.com” + / “/app/api/rest?” + / “opName=userAPIGetAllCatalogs”

r = requests.get(url, headers=headers)

r.text

u'{ "serviceResult":{"rows":[{"Catalog_ID":"1","Catalog_Name":"General Linux Web Server","Folder":"General Servers”...

73

Import Module

Authentication Header in dict

Build URL

Submit Request

Print the Response

Page 74: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Как начать использовать UCS Director REST API

Включить Developer Menu •  REST API Browser •  Примеры кода Скопировать REST Access Key •  По сути логин/пароль

74

Page 75: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

REST API Browser

•  Находится в меню Policy -> Orchestration

•  Структурирован в папки •  Сотни API вызовов •  Рекомендуем пользоваться поиском

•  Double-click для подробной информации и примеров

75

Page 76: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

REST API Browser

76

Reference: REST API Cookbook

Page 77: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

Заключение

Page 78: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

§  UCS Manager – серверная платформа с управлением на основе моделей, с развитым API и возможностями автоматизации §  Как PowerShell, так и Python и Perl

§  UCS Director – расширяемая платформа для автоматизации §  СloupiaScript §  Поддержка PowerShell и SSH §  Open Automation и SDK

§  Вызовы к UCS Director «извне» §  REST API. Пример из реальной жизни – в следующей презентации §  PowerShell

Основные тезисы

Page 79: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

•  DevNet: http://developer.cisco.com

•  UCS Director

•  Worflow index

•  https://communities.cisco.com/docs/DOC-56419

•  REST Developer guide

•  http://www.cisco.com/c/en/us/td/docs/unified_computing/ucs/ucs-director/rest-api-guide/5-2/b_Cisco_UCS_Director_REST_Developer_Guide_52.html

•  CloupiaScript Cookbook

•  http://www.cisco.com/c/dam/en/us/td/docs/unified_computing/ucs/ucs-director/cloupia-script-cookbook/5-0/CloupiaScript-Cookbook.pdf

•  OpenAutomation

•  http://www.cisco.com/c/en/us/td/docs/unified_computing/ucs/ucs-director/open-automation-api-guide/5-1/b_UCSD_Open_Automation_Developer_Guide_5_1.html

•  XML parsing software •  XMLSpear (Mac & Windows)

Полезные ссылки

Page 80: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)

CiscoRu Cisco CiscoRussia

Ждем ваших сообщений с хештегом #CiscoConnectRu

CiscoRu

Пожалуйста, заполните анкеты. Ваше мнение очень важно для нас.

Спасибо! Евгений Лагунцов [email protected]

© 2015 Cisco and/or its affiliates. All rights reserved.

Page 81: Программные интерфейсы управления серверной платформой и вычислительными стеками (UCS и UCS Director)