vCloud API - Powershell - Geautomatiseerd uitrollen van klantomgeving


Inleiding

 

Uw Virtual Datacenter is niet alleen te beheren m.b.v. de grafische webinterface. U kunt ook de API gebruiken om uw virtual datacenter te beheren. In dit voorbeeld zullen we gebruik maken van de Powershell API die beschikbaar is voor vCloud Director. De commandlets die u nodig heeft zijn beschikbaar in de laatste versie van PowerCLI. PowerCLI wordt gemaakt en beschikbaar gesteld door VMware. Op het moment van schrijven is 11.4 de meest recente versie van PowerCLI.

 

We hebben een template gemaakt met daarin 3 vm's:

 

  • mySql database-server
  • Windows terminal server
  • Windows domain controller

 

Deze template hebben we geplaatst in de private catalog. Deze template is is een zorgvuldig gekozen minimale set van software die elke klant nodig heeft om te kunnen functioneren. Door gebruik te maken van dit template kan er worden gegarandeerd dat elke klant-omgeving er precies hetzelfde uitziet. Door gebruik te maken van dit template van deze 3 servers kan heel snel een klantomgeving worden opgeleverd.

 

We gaan met PowerShell een nieuwe vApp aanmaken op basis van de template. Deze vApp krijgt de naam van de nieuwe klant. De onderstaande code dient als voorbeeld en kan als begin dienen voor het geautomatiseerd aanmaken van complete omgevingen van klanten.

 

param(
    [Parameter(Mandatory=$True)]
    [System.Management.Automation.PSCredential]$Credential,
     
    [Parameter(Mandatory=$True)]
    [string]$NieuweKlant
)
 
#Naam van uw Virtual datacenter
$orgvdcsName '<OrgvDC-naam>'
#naam van het template in de catalog
$vappTemplateName 'klantomgevingtemplate'
 
#toestaan dat het script wordt uitgevoerd.
Set-ExecutionPolicy RemoteSigned
#Verbinding maken naar de virtual datacenter portal.
Connect-CIServer -server ucp.uniserver.nl -org "<uw-organization>" -Credential $Credential
 
#aanmaken van een nieuwe vApp op basis van de genoemde template. De nieuwe vApp wordt geplaatst in het specifieke virtual datacenter
New-CIVApp -VAppTemplate $vappTemplateName -Name $NieuweKlant -OrgVdc $orgvdcsName
 
#starten van de vApp
Get-CIVApp -Name $NieuweKlant|Start-CIVApp
 
#verbinding verbreken met de portal.
Disconnect-CIServer -Server -Confirm:$false

 

 

 

Met Powershell kan het netwerk ook geconfigureerd. Er kan een nieuw netwerk worden gemaakt en gekoppeld worden aan de nieuwe vApp.

 

Relevante links

 

PowerCLI - Powershell commandlets aangeboden door VMware: https://www.powershellgallery.com/packages/VMware.PowerCLI/11.4.0.14413515

Documentatie PowerCLI: https://code.vmware.com/web/tool/11.4.0/vmware-powercli

Voorbeelden om uw Virtual datacenter te beheren met Powershell: https://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.powercli.ug.doc%2FGUID-038846CF-D5B4-4BE2-8443-8B1D409C7593.html