Standard
Схема Standard предназначена для размещения кластера внутри инфраструктуры vSphere с возможностью управления ресурсами, сетями и хранилищем.
Особенности:
- Использование vSphere Datacenter в качестве региона (
region); - Использование vSphere Cluster в качестве зоны (
zone); - Поддержка нескольких зон и размещения узлов по зонам;
- Использование различных datastore для дисков и volume’ов;
- Поддержка подключения сетей, включая дополнительную сетевую изоляцию (например, MetalLB + BGP).
Пример конфигурации:
apiVersion: deckhouse.io/v1
kind: VsphereClusterConfiguration
layout: Standard
provider:
server: '<SERVER>'
username: '<USERNAME>'
password: '<PASSWORD>'
insecure: true
vmFolderPath: dev
regionTagCategory: k8s-region
zoneTagCategory: k8s-zone
region: X1
internalNetworkCIDR: 192.168.199.0/24
masterNodeGroup:
replicas: 1
zones:
- ru-central1-a
- ru-central1-b
instanceClass:
numCPUs: 4
memory: 8192
template: dev/golden_image
datastore: dev/lun_1
mainNetwork: net3-k8s
nodeGroups:
- name: khm
replicas: 1
zones:
- ru-central1-a
instanceClass:
numCPUs: 4
memory: 8192
template: dev/golden_image
datastore: dev/lun_1
mainNetwork: net3-k8s
sshPublicKey: "<SSH_PUBLIC_KEY>"
zones:
- ru-central1-a
- ru-central1-b
Обязательные параметры ресурса VsphereClusterConfiguration:
region— тег, присвоенный объекту Datacenter;zoneTagCategoryиregionTagCategory— категории тегов, по которым распознаются регионы и зоны;internalNetworkCIDR— подсеть для назначения внутренних IP-адресов;vmFolderPath— путь до папки, в которой будут размещаться виртуальные машины кластера;sshPublicKey— публичный SSH-ключ для доступа к узлам;zones— список зон, доступных для размещения узлов.
Все узлы, размещённые в разных зонах, должны иметь доступ к общим datastore с аналогичными тегами зоны.
Список необходимых привилегий
О том, как создать и назначить роль пользователю, читайте в документации.
Детальный список привилегий, необходимых для работы Deckhouse Kubernetes Platform в vSphere:
| Список привилегий | Назначение |
|---|---|
Cns.SearchableStorageProfile.ViewDatastore.AllocateSpaceDatastore.BrowseDatastore.FileManagement |
Выделение дисков при создании виртуальных машин и заказе PersistentVolumes в кластере. |
Global.GlobalTagGlobal.SystemTagInventoryService.Tagging.AttachTagInventoryService.Tagging.CreateCategoryInventoryService.Tagging.CreateTagInventoryService.Tagging.DeleteCategoryInventoryService.Tagging.DeleteTagInventoryService.Tagging.EditCategoryInventoryService.Tagging.EditTagInventoryService.Tagging.ModifyUsedByForCategoryInventoryService.Tagging.ModifyUsedByForTagInventoryService.Tagging.ObjectAttachable |
Deckhouse Kubernetes Platform использует теги для определения доступных ему объектов Datacenter, Cluster и Datastore, а также для определения виртуальных машин, находящихся под его управлением. |
Folder.CreateFolder.DeleteFolder.MoveFolder.Rename |
Группировка кластера Deckhouse Kubernetes Platform в одном Folder в vSphere Inventory. |
Host.Cim.CimInteraction |
Взаимодействие с системой Common Information Model (CIM) для мониторинга состояния оборудования сервера через специальные интерфейсы без установки агентов. |
Host.Config.AdvancedConfigHost.Config.AuthenticationStoreHost.Config.PciPassthruHost.Config.SnmpHost.Config.DateTimeHost.Config.SettingsHost.Config.ConnectionHost.Config.FirmwareHost.Config.GuestStoreHost.Config.HyperThreadingHost.Config.ImageHost.Config.MaintenanceHost.Config.MemoryHost.Config.NvdimmHost.Config.NetworkHost.Config.PowerHost.Config.ProductLockerHost.Config.QuarantineHost.Config.PatchHost.Config.NetServiceHost.Config.StorageHost.Config.SystemManagementHost.Config.ResourcesHost.Config.AutoStart |
Администрирование инфраструктуры ESXi-хостов для первоначальной настройки, изменения сетевой топологии, добавления хранилищ и тонкой настройки гипервизора. |
Infraprofile.Read |
Просмотр конфигураций серверов vCenter. |
Profile.ClearProfile.CreateProfile.DeleteProfile.EditProfile.ExportProfile.View |
Управление операциями, связанными с созданием, изменением и применением шаблонов конфигурации хостов (Host Profiles). |
Network.AssignResource.ApplyRecommendationResource.AssignVAppToPoolResource.AssignVMToPoolResource.ColdMigrateResource.CreatePoolResource.DeletePoolResource.EditPoolResource.HotMigrateResource.MovePoolResource.QueryVMotionResource.RenamePoolVirtualMachine.Config.AddExistingDiskVirtualMachine.Config.AddNewDiskVirtualMachine.Config.AddRemoveDeviceVirtualMachine.Config.AdvancedConfigVirtualMachine.Config.AnnotationVirtualMachine.Config.ChangeTrackingVirtualMachine.Config.CPUCountVirtualMachine.Config.DiskExtendVirtualMachine.Config.DiskLeaseVirtualMachine.Config.EditDeviceVirtualMachine.Config.HostUSBDeviceVirtualMachine.Config.ManagedByVirtualMachine.Config.MemoryVirtualMachine.Config.MksControlVirtualMachine.Config.QueryFTCompatibilityVirtualMachine.Config.QueryUnownedFilesVirtualMachine.Config.RawDeviceVirtualMachine.Config.ReloadFromPathVirtualMachine.Config.RemoveDiskVirtualMachine.Config.RenameVirtualMachine.Config.ResetGuestInfoVirtualMachine.Config.ResourceVirtualMachine.Config.SettingsVirtualMachine.Config.SwapPlacementVirtualMachine.Config.ToggleForkParentVirtualMachine.Config.UpgradeVirtualHardwareVirtualMachine.GuestOperations.ExecuteVirtualMachine.GuestOperations.ModifyVirtualMachine.GuestOperations.ModifyAliasesVirtualMachine.GuestOperations.QueryVirtualMachine.GuestOperations.QueryAliasesVirtualMachine.Hbr.ConfigureReplicationVirtualMachine.Hbr.MonitorReplicationVirtualMachine.Hbr.ReplicaManagementVirtualMachine.Interact.AnswerQuestionVirtualMachine.Interact.BackupVirtualMachine.Interact.ConsoleInteractVirtualMachine.Interact.CreateScreenshotVirtualMachine.Interact.CreateSecondaryVirtualMachine.Interact.DefragmentAllDisksVirtualMachine.Interact.DeviceConnectionVirtualMachine.Interact.DisableSecondaryVirtualMachine.Interact.DnDVirtualMachine.Interact.EnableSecondaryVirtualMachine.Interact.GuestControlVirtualMachine.Interact.MakePrimaryVirtualMachine.Interact.PauseVirtualMachine.Interact.PowerOffVirtualMachine.Interact.PowerOnVirtualMachine.Interact.PutUsbScanCodesVirtualMachine.Interact.RecordVirtualMachine.Interact.ReplayVirtualMachine.Interact.ResetVirtualMachine.Interact.SESparseMaintenanceVirtualMachine.Interact.SetCDMediaVirtualMachine.Interact.SetFloppyMediaVirtualMachine.Interact.SuspendVirtualMachine.Interact.SuspendToMemoryVirtualMachine.Interact.TerminateFaultTolerantVMVirtualMachine.Interact.ToolsInstallVirtualMachine.Interact.TurnOffFaultToleranceVirtualMachine.Inventory.CreateVirtualMachine.Inventory.CreateFromExistingVirtualMachine.Inventory.DeleteVirtualMachine.Inventory.MoveVirtualMachine.Inventory.RegisterVirtualMachine.Inventory.UnregisterVirtualMachine.Namespace.EventVirtualMachine.Namespace.EventNotifyVirtualMachine.Namespace.ManagementVirtualMachine.Namespace.ModifyContentVirtualMachine.Namespace.QueryVirtualMachine.Namespace.ReadContentVirtualMachine.Provisioning.CloneVirtualMachine.Provisioning.CloneTemplateVirtualMachine.Provisioning.CreateTemplateFromVMVirtualMachine.Provisioning.CustomizeVirtualMachine.Provisioning.DeployTemplateVirtualMachine.Provisioning.DiskRandomAccessVirtualMachine.Provisioning.DiskRandomReadVirtualMachine.Provisioning.FileRandomAccessVirtualMachine.Provisioning.GetVmFilesVirtualMachine.Provisioning.MarkAsTemplateVirtualMachine.Provisioning.MarkAsVMVirtualMachine.Provisioning.ModifyCustSpecsVirtualMachine.Provisioning.PromoteDisksVirtualMachine.Provisioning.PutVmFilesVirtualMachine.Provisioning.ReadCustSpecsVirtualMachine.State.CreateSnapshotVirtualMachine.State.RemoveSnapshotVirtualMachine.State.RenameSnapshotVirtualMachine.State.RevertToSnapshot |
Управление жизненным циклом виртуальных машин кластера Deckhouse Kubernetes Platform. |
VApp.AssignVMVApp.AssignResourcePoolVApp.AssignVAppVApp.CloneVApp.CreateVApp.DeleteVApp.ExportVApp.ImportVApp.MoveVApp.PowerOffVApp.PowerOnVApp.PullFromURLVApp.RenameVApp.SuspendVApp.UnregisterVApp.ExtractOvfEnvironmentVApp.ApplicationConfigVApp.InstanceConfigVApp.ManagedByConfigVApp.ResourceConfig |
Управление операциями, связанными с развертыванием и конфигурацией vApp. |
VcIdentityProviders.Read |
Доступ на чтение к API VcIdentityProviders (поставщики идентификационных данных vCenter Server). |