Новая версия vRealize Automation – продукта, отвечающего в линейке VMware за автоматизацию доставки виртуальных машин, приложений и персонализированных IT-сервисов по всем разным дата-центрам и средам гибридных облаков, – появилась 4 февраля 2021 года. Она получила номер 8.3 и главной ее целью было сделать 8.2 ближе к возможностям 7.х-релизов, вернув XaaS и добавив поддержку AWS GovCloud и Powershell на ABX и Рython, node.js и Powershell в vRO.
В результате поменялось весьма многое, а кроме того исправилось множество ошибок и проблем. О чем и будет наш дальнейший рассказ, а начнем его, по традиции, с актуальной на данный момент версии билда для скачивания.
Актуальный билд
Предложенный здесь пакет билда 17556762 включает в себя, помимо самого vRA, VMware Identity Manager и vRealize Suite Lifecycle Manager:
Также в разделе vRealize Automation доступны новые VMware vRealize Orchestrator Appliance 8.3.0 и vRealize Automation SaltStack Config 8.3.0.
Изменения в 8.3-версии vRealize Automation
Для удобства восприятия информации разобьем ее на тематические блоки.
Сеть
- Миграция NSX-V в NSX-T. Доступна поддержка миграции NSX-V в NSX-T с помощью vRA Migration Assistant для таких топологий:
- маршрутизированные сети on-demand без служб,
- маршрутизированные сети on-demand с DHCP,
- частные сети on-demand с DHCP,
- группы безопасности по требованию,
- существующие группы безопасности,
- on-demand балансировщики нагрузки типа One-Armed на существующих сетях,
- совместный перенос существующих групп безопасности и групп on-demand,
- существующие или on-demand группы безопасности с балансировщиками нагрузки.
С другими топологиями обещают разобраться в следующих релизах;
- Дополнительные свойства в схеме действий IPAM SDK. С этого момента схема действий IPAM SDK расширена до следующих параметров:
- Стандартизированы projectId, blueprintId и deploymentId для Allocate/Deallocate/AllocateRange/DeallocateRange/UpdateRecord;
- Включены addressSpaceId, vraIPAddressId в Deallocate/UpdateRecord;
- Добавлены ID-поля для AllocateRange/DeallocateRange.
Если интересует более глубокое погружение в схемы IPAM очень рекомендуем ознакомиться со свежайшим мануалом по этой теме здесь;
- Общее пользование NSX-T T1/ NSX-V ESG в развороте. Возможность повторно использовать единственный роутер NSX-T Т1 или NSX-V Edge Service Gateway (ESG). Ранее каждая сеть в NSX-T создавала новый логический маршрутизатор Т1, а каждая on-demand NSX-V – новый ESG. Теперь можно назначать этот Т1 или ESG как роутеры общего пользования без необходимости из разделять в каждой сети, используя ресурсный тип Gateway в Cloud Template;
- Поддержка нового ресурсного типа NAT для перенаправления портов (правила DNAT) в исходящих сетях NSX. Он называется Cloud.NSX.NAT (ресурсный тип Cloud Template);
Важно! От поддержки ресурсного типа Cloud.NSX.Gateway никто не отказывался. Однако в будущих релизах функция перейдет в разряд out of date.
- Перенастройка группы безопасности по требованию – итеративно и Day 2 – в NSX-T. Перенастройка группы безопасности (в Day 2 и итеративном развороте) поддерживается исключительно NSX-T группами безопасности on-demand. Функция позволяет модифицировать, добавлять или удалять правила группы безопасности для запускаемого приложения;
- IPAM – фильтрация для собирающих данные сетей. Доступна фильтрация для собирающих данные сетей с целью минимизации базового набора сетей по каждому выполняемому действию. Свойства плагина Infoblox включены для возможностей специфической фильтрации при выборе только требуемых типов сетевых объектов из Infoblox и отсеивания остальных;
- Балансировщик нагрузки – мониторинг параметров здоровья для NSX-V and NSX-T. Можно настроить Day 0 активный мониторинг здоровья для тестирования доступности сервера, а также пассивный мониторинг здоровья для отслеживания падений в процессе подключений клиентов и отметки серверов, которые стали тому причиной, маркером «DOWN». Кроме того, доступна поддержка перенастройки параметров мониторинга здоровья (Day 2);
- Изменение группы безопасности – итеративный разворот. Для компонента машины изменение групп безопасности применяет итеративный разворот. Если хочется добиться ассоциации/диссоциации группы безопасности, неважно, существующая она или новая, которая является частью разворота для одной или более машин в нем, такую группу можно прикреплять в облачном шаблоне к соответствующим машинам или откреплять от них. Также доступно обновление разворотов с этой новой топологией через итеративный разворот.
Интеграция с другими продуктами
- Интегрированное ведение журналов логов. vRA не поддерживает множественность интеграции конечных точек логгирования – только один внешний ресурс (либо Syslog server, либо vRealize Log Insight). Это сделано с целью улучшения производительности;
Важно! vRealize Log Insight имеет приоритет по сравнению с Syslog.
- Интеграция в vRA SaltStack Config. SaltStack Config был интегрирован в vRA 8.3 для доступности разворотов ОС Photon на основе Appliance SaltStack Config и инсталляции миньонов на вновь созданных ВМ. Пока идет только первая фаза этой интеграции, и на этом этапе удалось добиться следующего:
- Разворота единственной ноды SaltStack Config (мастера) с помощью vRealize LCM;
- Создания vRealize LCM интегрированной конечной точки в vRA;
- Конкретный пользовательский разворот миньонов на новых ВМ с помощью сниппетов YAML-кода в облачных шаблонах;
- Доступность переключения между интерфейсами vRA и SaltStack Config для пользователей;
- Обновление vRA Terraform Provider. Верифицировано как часть реестра Hashicorp Terraform, и доступна поддержка ресурсного типа First Class Disk в провайдере vRA8 Terraform.
Новое в миграции
- Поддержка Migration Assistant для vRA 7.4;
- Изменение собственника смигрировавших разворотов. При миграции разворотов с 7.х на 8.х под правами администратора можно поменять собственника этих разворотов.
Улучшения в производительности и оптимизации
- Оптимизация резервирования для миграции в облачную зону. Функция добавлена, чтобы убедиться в том, что создастся минимальное количество облачных зон при миграции резервирований с ассистентом миграции;
- Оповещение потребителей облака о необходимости оптимизации и выполнение действий в этой связи. Администратор облака может оповещать владельцев проекта о возможностях оптимизации. Также доступны рекомендации для них на эту тему и контекстные действия в разворотах;
- Количество ядер на сокет для машин vSphere в VMware Cloud Templates. Эта функция позволяет уменьшать лицензионную стоимость и повысить производительность ВМ с помощью улучшения планирования NUMA на уровне гипервизора. Кол-во ядер определяется установкой атрибута numCores для Cloud.vSphere.Machine;
- Утилизация ресурсов для потребителей. Показывается, сколько потребляется ресурсов конкретным пользователем, а также общее потребление ресурсов (память, CPU, хранилище) по каждой составляющей;
- Улучшение производительности:
- Использование vCenter библиотеки контента для клонирования ближайшего шаблона при создании новой ВМ. Это существенно уменьшает время клонирования;
- Развороты распределяются по нескольким облачным зонам в зависимости от политики, определяющей выбор нескольких зон-кандидатов по всем остальным критериям;
- Запускаемые на K8-поде ABX-действия, привязанному к определенному действию ABX на время существования платформы. Поды восстанавливаются и становятся доступными для выполнения других ABX-действий, в результате чего конкурентные характеристики и масштабирование ABX улучшается;
- Информация по емкости и потреблению облачных зон – соответствие HCMP. С новым релизом доступны такие возможности:
- Интеграция с vRO для просмотра потребления емкости облачных зон в контексте;
- Внедрены ключевые индикаторы (например, физических ресурсов – CPU GHz, Cores) и утилизация;
- Отслеживание тенденций потребления ресурсов памяти и CPU помогает в понимании причин изменения емкости;
- Для детального анализа потребления рассматриваются проекты и ресурсы, потребляемые из облачной зоны ими.
Новое в управлении и операциях
- Действие Day 2 по изменению владельца разворота. Можно изменить статус собственника как администратора или члена на любого члена проекта, администратора проекта или организационного администратора;
- Фильтрация последнего запроса в развороте. Можно фильтровать развороты по статусу последнего запроса (cancelled/approval_pending/approval_rejected/in_progress/successful/failed) или статусу жизненного цикла разворота (successful или failed создания/обновления/удаления);
- Группы свойств. Группы свойств помогают пользователям более эффективно повторно себя использовать, храня метаданные и ресурс отслеживания использования. Такие группы можно создавать, апдейтить, просматривать и удалять с предопределенными данными. Доступно повторное использование группы свойств в качестве входных данных облачного шаблона и свойств ресурсов, а также запрос ресурса и развертывание по группам свойств в виде пар ключ-значение;
- Добавление пользовательских свойств при адаптации ВМ. Указывать эти свойства пользователи могут на уровне плана адаптации. Также их можно удалять для конкретных ВМ, при необходимости;
- Поддержка дисков при адаптации. Как часть плана адаптации доступна адаптация дисков. Возможны все Day 0/1/2-операции на адаптированных дисках;
- Учет не только всех совпадающих профилей хранилищ, но и хранилищ данных. Когда несколько профилей хранения становятся доступными для размещения, с целью его оптимизации актуальны следующие критерии:
- Рассматриваются все подходящие хранилища данных, принадлежащие профилям хранения;
- Благодаря vRA обеспечивается соединение хранилища данных и кластера;
- Повторное использование ресурсных групп в Azure. Для всех пользователей доступен выбор при Day 2, отправлять ли созданные диски на новую ресурсную группу или же в уже существующую. Если требуется второе, искомая ресурсная группа («Resource Group») может быть найдена в выпадающем меню. Повторное использование ресурсной группы при определении схемы помогает избежать создания новых групп ресурсов даже в случае инициализации в Day 0;
- Вертикальное масштабирование vRA. Клиенты могут разворачивать и обновлять кластер vRA с использованием стандартного (12 CPU, 42GB RAM) и экстра-крупного (24 CPU, 96GB RAM) размера VA с помощью vRSLCM. Также доступен разворот стандартных/больших vRA-кластеров и апгрейд их со стандартного до большого размера;
- Мульти-тенантность. Сопоставление Flavor/Image управляется провайдером в экране управления тенантами. Они отделены от VPZ, чтобы провайдеру можно было определять глобальные сопоставления точно таким же образом, как администратор организации определяет их для их собственной организации. Также провайдер может определять и сопоставления конкретных тенантов;
- Улучшение в ресурсных типах Custom и пользовательские Day 2 действия. Доступны настраиваемые формы запросов ресурсов пользователями и дополнение типов ресурсов мощными рабочими процессами и динамическими формами запросов со следующими возможностями:
- Использования ресурсных свойств в пользовательских формах запросов для Day 2 действий;
- Привязки сложных объектов и запрашивания сбора их свойств, а также ссылочных типов;
- Улучшение пользовательских форм. Усовершенствован выбор по многим значениям. В частности:
- Возможностью просматривать полные данные при поиске с помощью опции «show all»;
- Поддержкой референсных типов объектов;
- Авто-включение объединенных каталогов и схем для клиентов облаков. Функция Federated Catalog автоматически включена во внутренние процессы. Когда vRA получает CSP-оповещение для нового идентификатора подписки клиента Flex (добавленного к организации), она проверяет, содержит ли этот SID SKU «vRA for Flex». Если подтверждается, то для организации будет включена эта функция;
- Неперекрывающиеся облачные зоны. Облачные зоны в vRA презентуют вычислительную емкость и могут включать вычислительную функцию для ресурсов (кластера vCenter, хосты или ресурсные пулы для VMware Cloud, доступность зон для AWS, Azure и GCP). Определяются облачные зоны тремя способами:
- Включают все доступные кластеры/зоны доступности;
- Вручную выбираются кластеры/зоны доступности;
- Динамически на основе тегов выбираются кластеры/зоны доступности.
С 8.3-версии один и тот же вычислительный ресурс не может быть членом множества облачных зон. Существующие определения облачной зоны продолжают работать так же, как и в прошлых редакциях продукта, однако пользователя предупреждают, если облачная зона включает вычислительный ресурс – член другой облачной зоны. Следуют рекомендации по изменению и повторному сохранению облачных зон для внесения ясности.
Обновление поддержки облаков
- Поддержка Azure VMware Solution и Google Cloud VMware Engine.
Безопасность
- Секретность в облачных шаблонах и расширяемость. Появилась функция «Secure properties» для хранения конфиденциальных данных в зашифрованной форме в базе данных, чтобы не показывать их где бы то ни было в vRA. Можно создавать и шифровать переменные секретности для диапазона проекта под инфраструктурным администрированием и использовать их в облачных шаблонах, а также в действиях по расширению, использованию в ABX;
- Поддержка AD на уровне каждой схемы;
- Поддержка FIPS. Новая версия vRA включила криптографические модули для соответствия NIST FIPS 140-2 CMVP. Если эти модули настроены для запуска в «FIPS-mode», они покрывают все операции шифрования продукта и выполняют функции безопасности и/либо обрабатывают конфиденциальные данные с такими исключениями:
- Функционал vIDM в vRA;
- Ресурсы облачных шаблонов с префиксом «Cloud.Service», используемые внешними библиотеками Terraform;
- Ресурсы облачных шаблонов с префиксом «Cloud.Terraform», содержащие источники соответствующей конфигурации, поддерживаемые Terraform или даже пользовательскими провайдерами, работающими с Terraform.
Выбор режима FIPS «ONLY» доступен в процессе инсталляции, до того, как создается контент vRA/vRO. Кроме того, этот режим можно выбрать и при развороте среды vRA с нуля.
Апдейты и изменения API
В этом релизе vRA используются следующие обновления и изменения API:
- iaas-api (функции, специфичные для службы Provisioning, включая настройку инфраструктуры, проверку и итеративное предоставление ресурсов). Появилось новое свойство «customProperties» для апдейта пользовательских свойств машин (POST /iaas/api/machines/{id}) и новая функция, позволяющая отменить запросы разворота IaaS. Также действительны изменения в получении токена доступа;
- project-service (функции, специфичные для создания, управления и удаления проектов). Введены новые параметры запроса:
get /iaas/api/projects/
get /iaas/api/projects/{id}
post /iaas/api/projects/
patch /iaas/api/projects/{id}
- blueprint-service (функции, специфичные для службы блюпринтов, включая создание, валидацию и предоставление). Появились новые конечные точки:
GET /properties/api/property-groups (список всех групп свойств),
POST /properties/api/property-groups (создание группы свойств – доступно только для администратора организации),
GET /properties/api/property-groups/{propertyGroupId} (получить группу свойства по идентификатору),
PUT /properties/api/property-groups/{propertyGroupId} (проапдейтить группу свойств – доступно только для администратора организации),
DELETE /properties/api/property-groups/{propertyGroupId} (удалить группу свойств – доступно только для администратора организации).
И новые параметры anyOf: GET /blueprint/api/blueprints/{blueprintId}/inputs-schema и GET /blueprint/api/blueprints/{blueprintId}/versions/{version}/inputs-schema;
- relocation-service (служба используется для определения политики и планов по переносу существующих ВМ из любого управляемого облака). Новые конечные точки:
GET /relocation/onboarding/disk (список всех адаптированных дисков для всех планов)
PATCH /relocation/onboarding/disk/{disk-id} (пропатчить выбранные адаптированные диски).
Новые свойства: «customProperties» в моделях данных план адаптации и адаптация машин для прикрепления пользовательских свойств машине в процессе адаптации;
- migration-service (применяется в быстрой установке инстансов vRA 8, опираясь на информацию в конфигурационном файле, – Zero-Setup). Новые конечные точки:
GET /migration/api/v2t/plans (получает страницу планов миграции NSX),
POST /migration/api/v2t/plans (создает план миграции NSX),
GET /migration/api/v2t/plans/{id} (получает определенный план миграции NSX),
DELETE /migration/api/v2t/plans/{id} (удаляет план миграции NSX),
PATCH /migration/api/v2t/plans/{id} (апдейтит имя и описание плана миграции NSX),
GET /migration/api/v2t/plans/{id}/assessmentReport (получает отчет об оценке плана),
GET /migration/api/v2t/plans/{id}/assessmentReport/type/{type} (получает отчет об оценке плана для данного типа),
GET /migration/api/v2t/plans/{id}/deploymentConfiguration (получает конфигурацию разворота NSX),
POST /migration/api/v2t/plans/{id}/disableMaintenance (выключает режим техобслуживания NSX-V, ассоциированный vCenter и облачные аккаунты NSX-T для данного NSX-плана миграции),
POST /migration/api/v2t/plans/{id}/enableMaintenance (помещает NSX-V, ассоциированный vCenter и облачные аккаунты NSX-T для данного плана миграции NSX в режим техобслуживания),
POST /migration/api/v2t/plans/{id}/runAssessment (запускает оценку плана миграции),
POST /migration/api/v2t/plans/{planId}/migrate (сохраняет файл вывода V2T, если предоставляется, и запускает преобразование ресурсов vRA. Если файл вывода не предоставляется в этом вызове, используется файл, который сохранен в плане миграции. Максимальный размер файла ограничен 1 МБ, если не настроить исключение в application.properties),
GET /migration/api/v2t/plans/{planId}/report (получает страницу отчета миграции элементов NSX, ассоциированную с данным миграционным планом. Этот API поддерживает фильтрацию ReportElement.status, ReportElement.vraResourceName и ReportElement.deploymentId),
GET /migration/api/v2t/plans/{planId}/report/{elementType} (получает страницу отчетов миграции NSX, ассоциированную с этим планом для данного типа ресурсов (Deployment, NetworkProfile, SecurityGroup и др.). Поддерживает фильтрацию по ReportElement.status, ReportElement.vraResourceName и ReportElement.deploymentId),
POST /migration/api/v2t/plans/{planId}/testingCompleted (обновляет промежуточный этап плана миграции NSX до «POST_MIGRATION_TEST_COMPLETED»);
- cgs-service (используется в подключении к инфраструктуре в качестве содержимого кода во внешних контентных источниках). Новые конечные точки:
GET /content/api/vcf/{integrationId}/domain (получить список доменов с идентификатором интеграции Vcf),
POST /content/api/vcf/domains-enumeration (получить список доменов с данными учетных записей Vcf),
GET /content/api/vcf/{integrationId}/domain/{domainId} (получить детали одиночного домена),
POST /content/api/vcf/{integrationId}/domain/{domainI/service-accounts (создать служебную учетную запись для vCenter и NSX, ассоциированную с доменом VCF Domain),
GET /content/api/vcf/{integrationId}/domain/{domainI/service-accounts (получить детали служебной учетной записи vcf),
DELETE /content/api/vcf/{integrationId}/domain/{domainI/service-accounts/{id} (удалить служебную учетную запись vcf по данному идентификатору),
DELETE /content/api/vcf/{integrationId}/domain/{domainI/service-accounts/ (удалить служебную учетную запись vcf),
PATCH /content/api/vcf/{integrationId}/domain/{domainI/service-accounts/ (проапдейтить служебный аккаунт vcf);
- form-service (определение динамической формы рендеринга и поведения кастомизации в службах Service Broker и Cloud Assembly VMware). Новые конечные точки:
POST form-service/api/custom/resource-actions/{actionId}/form-data (CF-1387 возвращает значение поля формы в запросе Resource Action для свойств, имеющего привязку источника),
POST /form-service/api/forms/renderer/external-values (CF-1603 выполняет множество действий vRO в пользовательской форме запроса одновременно и возвращает единственный результат по завершению).
Новые параметры: POST /form-service/api/forms/designer/runnable-item-elements (внешний тип CF-1387 предоставляет vRO-тип поля – только для чтения – при действии по созданию формы ресурсов элементов);
- Deployment (доступ к объектам разворота и платформам/блюпринтам, которые должны развернуться в системе). Новые конечные точки: get /deployment/api/deployments/{depId}/requests
/{requestId}/events/{eventId}/logs/download.
Новый параметр lastRequestStatus запроса в get /deployment/api/deployments;
- Approvals (вынуждает применить политики, контролирующие, кто должен согласиться с разворотом или действиями Day 2 до того, как запрос будет предоставлен). Новые конечные точки:
/approval/api/policy/data/cloud-zones (возвращает набор облачных зон аккаунта предоставления, совпадающий с параметрами поиска),
/approval/api/policy/data/cloud-zones/{id} (возвращает указанный аккаунт предоставления CloudZone),
/approval/api/policy/data/hasSnapshots (возвращает возможные hasSnapshots значения),
/approval/api/policy/data/hasSnapshots/{id} (возвращает hasSnapshots значения),
/approval/api/policy/data/osTypes (возвращает возможные типы операционной системы машины),
/approval/api/policy/data/osTypes/{id} (возвращает тип ОС),
/approval/api/policy/data/powerState (возвращает возможные значения powerState),
/approval/api/policy/data/powerState/{id} (возвращает значение powerState),
/approval/api/policy/data/tag-keys (возвращает список тегов ключей, которые совпадают с параметрами поиска),
/approval/api/policy/data/tag-keys/{id} (возвращает указанный тег ключа),
/approval/api/policy/data/tag-values (возвращает список значений тегов, совпадающих с параметрами поиска),
/approval/api/policy/data/tag-values/{id} (возвращает указанное значение тега);
- Resource quota policy – Aggregator service (предоставляют доступ к поиску метрик использования ресурсов на уровне организации, пользователя и проекта). Конечные точки этой новой службы, запускаемой внутри одобренного контейнера:
/aggregator/api/metrics/deployment/aggregate (возвращает агрегированные значения метрик использования ресурсов по текущему (current) пользователю),
/aggregator/api/metrics/deployment/aggregate/projects/{projectId} (возвращает агрегированные значения метрик использования ресурсов по данному проекту – доступно только для администратора организации),
/aggregator/api/metrics/deployment/aggregate/users/{userId} (возвращает агрегированные значения метрик использования ресурсов по данному пользователю – доступно только для администратора организации);
- Code stream all pipeline-service (доступ к сервисам Code Stream). Новый АPI DELETE /codestream/api/executions для пакетного удаления выполнений и очистки памяти. Удаляет только те выполнения, которые находятся в терминальной стадии. Принимает параметры фильтра.
Исправленные ошибки
- Оценка миграции единственной инсталляции vRAx во множественные организации vRA 8.х требует ручного принятия сертификатов;
- В некоторых сценариях уменьшение или увеличение масштаба машины балансировщика нагрузки дает сбой с ошибкой шифрования:
Update operation is supported for one property at a time
Известно для случаев, когда балансировщик нагрузки содержит свойства «loggingLevel» или «type» со значениями, отличными от значений таких же свойств на родительском (IaC) балансировщике нагрузки;
- Страница деталей политики показывает пустое значение по «Role», если удаляется пользовательская роль;
- Нет доступа к странице адаптации. Если перейти на страницу адаптации в «Cloud Assembly» – «Infrastructure» показывается 302-код статуса. Происходит, когда вход был осуществлен уже давно.