Чтобы использовать провайдер vSphere в платформе “Штурвал”, необходимо иметь созданную учетную запись и сервисные роли в платформе виртуализации с версией VMware vSphere 6.7 update 3 или 7.0 и выше.
Создайте ресурсный пул и подготовьте данные учетной записи.
Обратите внимание! Сервисную учетную запись необходимо вводить в формате username@domain.
Для учетной записи провайдера vSphere назначьте перечисленные роли:
кастомная роль, с разрешениями сервисной роли №1;
системная роль Read only ;
при необходимости использования CSI дополнительно назначьте вторую кастомную роль, с разрешениями сервисной роли №2. Является вспомогательной ролью, учетная запись только с одной данной ролью не обеспечит всеми требуемыми разрешениями.
Если требуются отдельные права на CSI, например, когда в кластере не используется провайдер vSphere, создайте новую учетную запись и кастомные роли для работы с vSphere CSI.
Обратите внимание! Для корректного подключения рекомендуется настроить права доступа сервисной учетной записи в соответствии с рекомендациями. При назначении полных прав доступа для сервисной учетной записи у всех Datacenter, к которым есть доступ у сервисной учетки, должен быть Datastore
Схема назначения прав
Объект
Роль
Propogation (наследование)
Комментарий
vCenter
Сервисная роль №2
Нет
vCenter, где будут работать виртуальные машины клиентских кластеров. Требуется для корректной работы CSI
Datacenter
Read only
Нет
Виртуальный датацентр, в котором будут располагаться виртуальные машины клиентских кластеров
Cluster
Сервисная роль №1
Нет
Виртуальный кластер, в котором будут располагаться виртуальные машины клиентских кластеров
Host
Read only
Нет
На всех хостах в кластере, где будут работать виртуальные машины клиентских кластеров. Требуется для корректной работы CSI
Resource pool
Сервисная роль №1
Да (Опционально)
Ресурсный пул, в котором будут располагаться виртуальные машины клиентских кластеров
Folder
Сервисная роль №1
Да
Папка, в которой будут располагаться виртуальные машины клиентских кластеров и шаблон, из которого они создаются
Datastore
Сервисная роль №1
Да
Хранилище виртуальных машин, на котором будут располагаться диски виртуальных машин клиентских кластеров
Distributed Switch
Read only
Нет
Распределенный виртуальный коммутатор, в который будут подключаться виртуальные сетевые интерфейсы виртуальных машин клиентских кластеров
Distributed Port Group
Сервисная роль №1
Да
Распределенная виртуальная группа портов, в которую будут подключаться виртуальные сетевые интерфейс виртуальных машин клиентских кластеров. Права должны быть в том числе на группу портов, в которую подключен сетевой интерфейс шаблона ВМ
Когда в кластере (не с провайдером vSphere) требуется работа с облачным хранилищем vSphere, рекомендуется создать отдельную учетную запись с необходимыми ролями. Используйте такую учетную запись, например, в кластере с провайдером Shturval v2 при установке vSphere CSI.
Схема назначения прав для работы с vSphere CSI
Объект
Роль
Propogation (наследование)
Комментарий
Datastore
CNS-DATASTORE
Нет
Хранилище виртуальных машин, на котором будут располагаться диски виртуальных машин клиентских кластеров
vCenter
CNS-SEARCH-AND-SPBM
Нет
vCenter, где работают виртуальные машины клиентских кластеров
Folder
CNS-VM
Да
Папка, в которой располагаются виртуальные машины клиентских кластеров
Datacenter
CNS-HOST-CONFIG-STORAGE
Нет
Виртуальный датацентр, в котором располагаются виртуальные машины клиентских кластеров
Cluster
CNS-HOST-CONFIG-STORAGE
Нет
Виртуальный кластер, в котором располагаются виртуальные машины клиентских кластеров
Разрешения для роли CNS-DATASTORE
Раздел
Разрешение
Datastore
Low level file operations
Разрешения для роли CNS-SEARCH-AND-SPBM HTML Table
Раздел
Разрешение
CNS
Searchable
Profile-driven storage
Profile-driven storage view
Разрешения для роли CNS-VMHTML Table
Раздел
Разрешение
Virtual machine
Change Configuration:
Add existing disk
Add or remove device
Add new disk
Extend virtual disk
Remove disk
Разрешения для роли CNS-HOST-CONFIG-STORAGEHTML Table
Раздел
Разрешение
Host
Configuration:
Storage partition configuration
Пример команд создания ролей
# Роль для чтения, записи, удаления и переименования в хранилище данных
govc role.create CNS-DATASTORE Datastore.FileManagement
# Роль для просмотра информации о хостах, кластере, томах и VM
govc role.create CNS-SEARCH-AND-SPBM Cns.Searchable StorageProfile.View
# Роль, позволяющая добавлять/удалять виртуальный диск к ВМ, а так же позволяет добавлять или удалять любые устройства, не являющиеся дисками
govc role.create CNS-VM VirtualMachine.Config.AddExistingDisk VirtualMachine.Config.AddRemoveDevice VirtualMachine.Config.AddNewDisk VirtualMachine.Config.DiskExtend VirtualMachine.Config.RemoveDisk
# Роль для управления VMFS и конфигурации iSCSI на хостах
govc role.create CNS-HOST-CONFIG-STORAGE Host.Config.Storage
Обратите внимание! Приведенные роли позволяют разделить доступ в vSphere, т.е. выдать права:
на определенный Datastore;
на управление VM в конкретной директории k8s;
на конфигурацию хостов в нужном кластере.
Пример команд выдачи прав с разделенным доступом
# Выдача прав на Datastore с именем Cluster01-vSAN
govc permissions.set -principal <username>@vsphere.local -propagate=false -role CNS-DATASTORE /Datacenter/datastore/Cluster01-vSAN
# Поиск информации с корня
govc permissions.set -principal <username>@vsphere.local -propagate=false -role CNS-SEARCH-AND-SPBM /
# Выдача прав на управление VM в директории k8s
govc permissions.set -principal <username>@vsphere.local -propagate=true -role CNS-VM /Datacenter/vm/k8s/
# Выдача прав на конфигурацию хостов в виртуальном кластере Cluster01 и на Datacenter
govc permissions.set -principal <username>@vsphere.local -propagate=false -role CNS-HOST-CONFIG-STORAGE /Datacenter /Datacenter/host/Cluster01
Вы можете не разграничивать права доступа в vSphere. Для этого создайте одну общую роль с требуемыми разрешениями и назначьте ее вашей учетной записи.
Схема назначения прав
Объект
Роль
Propogation (наследование)
Комментарий
Datastore
SHTURVAL-CSI
Нет
Хранилище виртуальных машин, на котором будут располагаться диски виртуальных машин клиентских кластеров
vCenter
SHTURVAL-CSI
Нет
vCenter, где работают виртуальные машины клиентских кластеров
Folder
SHTURVAL-CSI
Да
Папка, в которой располагаются виртуальные машины клиентских кластеров
Datacenter
SHTURVAL-CSI
Нет
Виртуальный датацентр, в котором располагаются виртуальные машины клиентских кластеров
Cluster
SHTURVAL-CSI
Нет
Виртуальный кластер, в котором располагаются виртуальные машины клиентских кластеров