Empezando con vSphere PowerCLI
Hola amigos, soy Florián Murillo, y hoy escribo acerca de los primeros pasos sobre PowerCLI, para todos aquellos que querais darle un nivel de automatización a vuestra infraestructura virtual.
Para ello vamos a preparar nuestro PC con Windows XP con todo lo necesario para ello, instalaremos, en este orden :
- Windows XP Service Pack 3 (WindowsXP-KB936929-SP3-x86-ESN.exe)
- .NET Framework 3.5 (dotNetFx35setup.exe)
- Windows PowerShell 2.0 (WindowsXP-KB968930-x86-ESN.exe)
- vSphere PowerCLI (VMware-Vim4PS-4.0.1-208462.exe)
En este punto podemos lanzar el icono que hemos aceptado en el escritorio, se llama
“VMware vSphere PowerCLI” y ¿que ocurre?
No tenemos derechos para ejecutar scripts, solo comandos interactivos, esto lo
arreglamos con Set-ExecutionPolicy RemoteSigned
Si cerramos la ventana y la volvemos a abrir el mensaje de bienvenida es mas amigable
Ya podemos verificar la conectividad, conectandonos a nuestro vCenter o ESX :
> Connect-VIServer -Server VCENTER -User USUARIO -Password CLAVE
Name Port User
—- —- —-
10.1.0.121 443 USUARIO
Donde :
VCENTER es la dirección IP o nombre del vCenter o ESX
USUARIO es el usuario con el que nos autenticamos
CLAVE es la contraseña del usuario
Los comandos que entremos ahora, se ejecutan sobre la conexión establecida sobre
> Get-VM
Name PowerState Num CPUs Memory (MB)
—- ———- ——– ———–
CRMDynamics PoweredOff 2 1024
SrvMail PoweredOn 2 2048
DC3W2008 PoweredOff 2 1024
SrvSoft PoweredOff 1 1024
WSus PoweredOn 1 512
SqlServer2008 (ERP) PoweredOn 2 3600
DC PoweredOn 1 512
Dc2 PoweredOn 1 512
Citrix2008 PoweredOn 2 2048
VMware Data Recovery PoweredOff 2 2048
SrvView PoweredOff 1 1024
y con …
> Disconnect-VIServer
Desconectamos del vCenter
Ahora ha llegado el momento de crear nuestro primer script con PowerCLI, vamos a levantar una VM, se llama VMware Data Recovery y está apagada en este momento, la levantaremos con el siguiente script, llamado script1.ps1 :
Connect-VIServer -Server VCENTER -User USER -Password CLAVE
Get-VM | select Name, PowerState
Get-VM «VMware Data Recovery» | Start-VM
Get-VM | select Name, PowerState
Disconnect-VIServer
el doble comando Get-VM con select es para ver que antes estaba apagada y luego encendida, lo ejecutamos con :
> .script1.ps1
Name Port User
—- —- —-
10.1.0.121 443
Name : VMware Data Recovery
PowerState : PoweredOff
PowerState : PoweredOn
Description : VMware Data Recovery Module
Notes : VMware Data Recovery Module
Guest : VMware.VimAutomation.Client20.VMGuestImpl
NumCpu : 2
MemoryMB : 2048
HardDisks : {Hard disk 1}
NetworkAdapters : {Network adapter 1}
UsbDevices : {}
CDDrives : {}
FloppyDrives : {}
Host : srvesx1.base10informatica.local
HostId : HostSystem-host-602
VMHostId : HostSystem-host-602
FolderId : Folder-group-v25
ResourcePoolId : ResourcePool-resgroup-601
DatastoreIdList : {Datastore-datastore-607}
HARestartPriority : ClusterRestartPriority
HAIsolationResponse : AsSpecifiedByCluster
DrsAutomationLevel : AsSpecifiedByCluster
VMSwapfilePolicy : Inherit
CustomFields : {}
Id : VirtualMachine-vm-627
Name : VMware Data Recovery
Name : VMware Data Recovery
PowerState : PoweredOn
como el comando Get-VM nos enseña el estado de todas las VM con los datos seleccionados por select, hemos eliminado las líneas correspondientes a otras VM.
Podemos comprobar desde el vCenter que la VM se ha levantado.