Crear y gestionar instancias de Compute Engine

En esta página se muestra cómo crear y gestionar instancias de Compute Engine desde Cloud Tools for PowerShell. Consulta la referencia de cmdlets de Cloud Tools para PowerShell para obtener más información sobre los cmdlets de Compute Engine.

Crear una configuración de instancia

Antes de crear una instancia, debes crear una configuración de instancia. Como mínimo, se necesita un nombre, un tipo de máquina y una imagen de disco de arranque o un disco de arranque preexistente:

$disk = Get-GceImage "windows-cloud" -Family "windows-2012-r2"
$config = New-GceInstanceConfig [VM_NAME] `
    -MachineType [MACHINE_TYPE] `
    -DiskImage $disk

Consulta la referencia de cmdlets de Cloud Tools para PowerShell para ver las demás opciones de configuración que ofrece el cmdlet New-GceInstanceConfig.

Crear una instancia

Usa el cmdlet Add-GceInstance para crear una instancia de máquina. Puede especificar parámetros, como project, zone o region. Si omites un parámetro, el cmdlet usará los valores definidos en tu configuración de la CLI de Google Cloud:

$config | Add-GceInstance -Project [PROJECT] -Zone [ZONE]

Gestionar una instancia

Usa el cmdlet Get-GceInstance para obtener las instancias de máquina virtual de un proyecto. Como el nombre de la instancia puede no ser único en todos los proyectos o zonas, puedes especificar un parámetro project o zone para acotar la búsqueda. De forma predeterminada, el cmdlet usa los valores que hayas definido en la configuración activa de la CLI de gcloud:

$instance = Get-GceInstance [VM_NAME]

Puedes iniciar, detener o reiniciar una instancia con varios cmdlets. Puedes hacer referencia a una instancia mediante el nombre o el objeto con tipo fuerte devuelto por el cmdlet Get-GceInstance:

Stop-GceInstance $instance
Start-GceInstance $instance
Restart-GceInstance [VM_NAME]

Puedes definir etiquetas de instancia, discos, configuraciones de acceso y otros metadatos después de crear la instancia con el cmdlet Set-GceInstance:

Set-GceInstance $instance -AddMetadata @{"newKey" = "newValue"}
Set-GceInstance $instance -RemoveMetadata [METADATA_TAG]
Set-GceInstance $instance -RemoveTag [TAG] -AddTag [TAG]

Por último, cuando hayas terminado de usar una instancia, puedes quitarla de Compute Engine con el cmdlet Remove-GceInstance:

# Remove all instances with the "to-be-removed" tag.
Get-GceInstance -Project [PROJECT] |
    Where { $_.Tags.Items -contains "to-be-removed" } |
    Remove-GceInstance