IBM Cloud Docs
Configurando o Ambiente de Produção

Configurando o Ambiente de Produção

As etapas deste documento são necessárias apenas quando se deseja conectar o ambiente de recuperação isolado ao ambiente de produção.

Configuração do Active Directory Domain Name Services (AD/DNS)

As etapas são implementadas no servidor AD/DNS no ambiente de produção e não no servidor AD/DNS no ambiente de recuperação isolado.

O serviço Veeam® no ambiente de recuperação isolado precisa conectar-se ao dispositivo vCenter no ambiente de produção. Por isso, o serviço Veeam requer uma conta de serviço configurada no domínio de diretório ativo do ambiente de produção.

  1. Use o cliente RDP para acessar o servidor AD/DNS.
  2. Abra um console PowerShell com privilégios de Administrador.
  3. Use os comandos a seguir para criar uma conta de serviço Veeam:
$name = "sa-veeam-cyber-admin"
$sn = "sa-veeam-cyber-admin"
$descr = "Service Account for Veeam cyber-recovery"
$dname = "Cyber-recovery Admin"
$path = "CN=ic4v-vCenter,CN=Users,DC=partner,DC=ibmcloud,DC=local"
$pw = "<sa_veeam_cyber_admin_password>"
$grp = "ic4v-vCenter"
New-ADUser -Name $name -DisplayName $dname -Description $descr -SamAccountName $sn -AccountPassword (convertto-securestring $pw -AsPlainText -Force) -Enabled $true -PasswordNeverExpires $true -ChangePasswordAtLogon $false
Add-ADGroupMember -Identity $grp -Members $sn

Criando uma função do VCenter

Crie uma função do vCenter e designe as permissões necessárias para que a conta do serviço Veeam possa criar backups das máquinas virtuais (VMs) de produção.

As etapas são implementadas no dispositivo vCenter no ambiente de produção e não no servidor de dispositivo vCenter no ambiente de recuperação isolado.

A função requer uma lista de privilégios. É possível visualizar a lista de privilégios na lista de variáveis $privileges no script PowerCLI a seguir. Para obter mais informações, consulte Backup.

O script conclui as tarefas a seguir:

  • Define os privilégios necessários.
  • Carrega o PowerCLI SnapIn e define a configuração para ignorar certificados inválidos.
  • Define o IP/FQDN, o usuário administrador e a senha do vCenter.
  • Define um nome para o usuário Veeam, como veeambur.
  • Conecta-se ao vCenter.
  • Cria uma função com as permissões necessárias.
  • Cria as permissões para o usuário com relação aos objetos de inventário necessários.

Procedimento para criar funções e designar permissões

  1. Use o cliente de área de trabalho remoto para se conectar ao servidor de salto.
  2. Abra um console PowerShell com privilégios de Administrador.
  3. Defina as seguintes variáveis para o script:
    • O <vcsa_fqdn> é o FQDN ou endereço IP do dispositivo vCenter no ambiente de produção.
    • O <vcsa_user> é o nome de usuário da conta no dispositivo vCenter que tem os privilégios necessários para adicionar funções.
    • O <vcsa_user_password> é a senha para o <vcsa_user>.
    • O <sub_domain> é o subdomínio do domínio raiz, isto é, para example.test.local, <sub_domain> é example e <root_domain> é test.local.
  4. Use os comandos a seguir para criar a função e designar permissões:
Add-PSSnapin VMware.VimAutomation.Core -ea "SilentlyContinue"
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false | Out-Null
$vcsa = "<vcsa_fqdn>"
$vcsauser = "<vcsa_user>"
$vcsapassword = '<vcsa_user_password>'
$securevcsapassword = ConvertTo-SecureString -String $vcsapassword -AsPlainText -Force
$sn = "sa-veeam-cyber-admin"
$id = "<sub_domain>"
$role = "veeambur"
$principal = "$id\$sn"
$creds = New-Object System.Management.Automation.PSCredential -ArgumentList $vcsauser,$securevcsapassword
$privileges = @(
    'System.Anonymous',
    'System.View',
    'System.Read',
    'Global.ManageCustomFields',
    'Global.SetCustomField',
    'Global.LogEvent',
    'Global.Licenses',
    'Global.Settings',
    'Global.DisableMethods',
    'Global.EnableMethods',
    'Folder.Create',
    'Folder.Delete',
    'Datastore.Browse',
    'Datastore.DeleteFile',
    'Datastore.FileManagement',
    'Datastore.AllocateSpace',
    'Datastore.Config',
    'Network.Config',
    'Network.Assign',
    'DVPortgroup.Create',
    'DVPortgroup.Modify',
    'DVPortgroup.Delete',
    'Host.Config.Maintenance',
    'Host.Config.Storage',
    'Host.Config.Network',
    'Host.Config.AdvancedConfig',
    'Host.Config.Patch',
    'VirtualMachine.Inventory.Create',
    'VirtualMachine.Inventory.Register',
    'VirtualMachine.Inventory.Delete',
    'VirtualMachine.Inventory.Unregister',
    'VirtualMachine.Interact.PowerOn',
    'VirtualMachine.Interact.PowerOff',
    'VirtualMachine.Interact.Suspend',
    'VirtualMachine.Interact.ConsoleInteract',
    'VirtualMachine.Interact.DeviceConnection',
    'VirtualMachine.Interact.SetCDMedia',
    'VirtualMachine.Interact.SetFloppyMedia',
    'VirtualMachine.Interact.GuestControl',
    'VirtualMachine.GuestOperations.Query',
    'VirtualMachine.GuestOperations.Modify',
    'VirtualMachine.GuestOperations.Execute',
    'VirtualMachine.Config.Rename',
    'VirtualMachine.Config.AddExistingDisk',
    'VirtualMachine.Config.AddNewDisk',
    'VirtualMachine.Config.Annotation',
    'VirtualMachine.Config.RemoveDisk',
    'VirtualMachine.Config.RawDevice',
    'VirtualMachine.Config.AddRemoveDevice',
    'VirtualMachine.Config.EditDevice',
    'VirtualMachine.Config.Settings',
    'VirtualMachine.Config.Resource',
    'VirtualMachine.Config.AdvancedConfig',
    'VirtualMachine.Config.DiskLease',
    'VirtualMachine.Config.DiskExtend',
    'VirtualMachine.Config.ChangeTracking',
    'VirtualMachine.State.CreateSnapshot',
    'VirtualMachine.State.RevertToSnapshot',
    'VirtualMachine.State.RemoveSnapshot',
    'VirtualMachine.State.RenameSnapshot',
    'VirtualMachine.Provisioning.MarkAsTemplate',
    'VirtualMachine.Provisioning.MarkAsVM',
    'VirtualMachine.Provisioning.DiskRandomAccess',
    'VirtualMachine.Provisioning.DiskRandomRead',
    'VirtualMachine.Provisioning.GetVmFiles',
    'VirtualMachine.Provisioning.PutVmFiles',
    'Resource.AssignVMToPool',
    'Resource.CreatePool',
    'Resource.DeletePool',
    'Resource.HotMigrate',
    'Resource.ColdMigrate',
    'Extension.Register',
    'Extension.Unregister',
    'VApp.AssignVM',
    'VApp.AssignResourcePool',
    'VApp.Unregister',
    'StoragePod.Config',
    'Cryptographer.Access',
    'Cryptographer.EncryptNew',
    'Cryptographer.Encrypt',
    'Cryptographer.Migrate',
    'Cryptographer.AddDisk',
    'InventoryService.Tagging.AttachTag',
    'StorageProfile.Update',
    'StorageProfile.View')

Connect-VIServer -Server $vcsa -Credential $creds | Out-Null
New-VIRole -Name $role -Privilege (Get-VIPrivilege -Id $privileges) | Out-Null
Get-VIRole -Name $role | Select-Object Description, PrivilegeList, Server, Name | Format-List
New-VIPermission -Principal $principal -Role $role -Entity (Get-Datacenter) -Propagate:$true -Confirm:$false
Disconnect-VIServer -Confirm:$false

As etapas são concluídas para criar a arquitetura da solução para o ambiente isolado de recuperação cibernética.

Para obter um caso de uso em que um administrador cibernético usa um script PowerShell que usa o Veeam para executar uma restauração instantânea de uma VM de produção a partir do backup cibernético, consulte Restauração instantânea.

Além disso, para obter um caso de uso em que um administrador cibernético usa a API de integração de dados Veeam para acessar o backup cibernético, consulte Criar um servidor Veeam Linux gerenciado.