Обзор
Для выполнения некоторых задач в среде CLOUD4Y вам может потребоваться доступ к VMware Cloud Director через vCloud API. В этом руководстве показано, как получить доступ к vCloud API.
Прежде чем вы начнете
Перед использованием vCloud API мы рекомендуем вам установить REST-клиент, который позволит получить доступ к API вашего VDC. В шагах, описанных в этой статье, используется программа POSTMAN. Так же вы можете установить плагин RESTClient для браузера Firefox или Chrome, интерфейс в этом плагине идентичен Postman.
Учетные данные vCloud API
Перед использованием vCloud API необходимо иметь учетные данные для входа в свой VDC на портале CLOUD4Y. Как правило вы получаете эти данные на электронный ящик указанный при регистрации. Эти данные имеют вид:
- Имя пользователя - имя пользователя для входа на портал CLOUD4Y обратно совместимо с возможностью подключения к API.
- Идентификатор организации - используйте его, чтобы однозначно идентифицировать vOrg при использовании vCloud API.
- Пароль - для аутентификации с помощью vCloud API. Этот пароль такой же, как и тот, который вы используете для входа на портал CLOUD4Y.
Получение актуальной версии API
Чтобы начать взаимодействие с vCloud API необходимо настроить и получить актуальную поддерживаемую версию API сервера.
- Запустите API клиент
- Сформируйте GET запрос на адрес https://vcd.cloud4y.ru/api/versions
- В панели Authorization выберите тип аутентификации BasicAuth
- В панели Username введите свой логин и через @ имя vORG
- В панели Password укажите пароль от vORG в облаке
При успешном выполнении запроса вы должны получить от сервера ответ "Status: 200 OK", и в панели ответа Body будет перечень всех версий API неподдерживаемых (depricated <true>) и поддерживаемых (depricated <false>) сервером.
В следующем запросе sessions необходимо использовать только те версии API, которые находятся в активном статусе.
Получение токена авторизации
Теперь вам необходимо получить токен x-vmware-vcloud-access-token; для этого выполните следующие шаги:
- Сформируйте POST запрос на адрес https://vcd.cloud4y.ru/api/sessions который мы получили в предыдущем запросе
- В панели Authorization выберите тип аутентификации BasicAuth
- В панели Username введите свой логин и через @ имя vORG
- В панели Password укажите пароль от vORG в облаке
- В панели HEADERS добавьте в поле "Key" значение Accept, а в диалоговом окне "Value" введите application/*+xml;version=34.0
- После получения ответа от сервера перейдите на панель Headers
- Здесь мы можем увидеть несколько заголовков и ключей авторизации, нас интересует ключ x-vcloud-authorization. Это кратковременный ключ, который выдается на ограниченное время. Если сессия с этим ключом истекает, шаги по получению токена авторизации необходимо выполнить заново.
Кроме того есть возможность для авторизации использовать ключ Authoriztion, где можно указать метод авторизации (в нашем примере Bearer) и его ключ.
Если переключится на панель ответа Body вы сможете найти API URL ссылки для доступа к различным компонентам VDC. Рекомендуем сохранить эти данные в отдельный файл, чтоб упростить дальнейшее взаимодействие с API
Авторизация и получение данных vApp внутри VDC
После получения токена авторизации необходимо выполнить следующие шаги:
- Указываем метод запроса GET
- Вводим адрес https://vcd.cloud4y.ru/api/query/?type=vApp
- В панели HEADERS добавьте в поле "Key" значение x-vcloud-authorization, а в диалоговом окне "Value" введите ключ из предыдущего запроса
- В панели Authorization отключаем авторизацию
- Отправляем API запрос и получаем всю запрошенную информацию.
На этом этапе мы научились получать данные из VDC через API запрос. Таким же образом вы можете управлять этими данными, удалять и создавать сущности, настраивать EDGE Gateway, менять параметры vApp. Для полноценного освоения Vcloud API рекомендуем обратиться к официальной документации.