Social Icons

martes, 29 de julio de 2014

Snapshots en Máquinas Virtuales de Azure más fáciles todavía

He estado pensando en hacer y restaurar snapshots de mis máquinas virtuales de Azure un montón de tiempo pero nunca he tenido tiempo para hacerlo... hasta hoy.

Es muy facil cuando sabes cómo hacerlo pero puede ser un poco lioso cuando tienes que empezar desde cero y como tengo que escribir un post explicándolo y hace mil años que no posteaba aquí he pensado que sería buena idea hacerlo en mi blog.

Empecemos por el principio:



Con un poco de suerte ya lo tendrás funcionando.
Ahora al grano. Chris Clayton ha creado un paquete de scripts que funcionan maravillosamente para administrar screenshots de MV de azure que son los que yo estoy usando ahora. Si eres demasiado flojo como para ir a su página también puedes descargarte los scripts de aquí.

Lo único que necesitas configurar es el fichero Subscriptions.csv. Es un fuchero CSV por lo que en la primera línea tienes los nombres de las columnas y en las siguientes los datos de las suscripciones que quieras configurar. Tiene esta pinta:
SubscriptionName,SubscriptionId,CertificateThumbprint
"IT","XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
Este fichero nos ayudará a ejecutar los comandos más fácilmente ya que contiene toda la información de las suscripciones que vamos a usar. Si, vale, pero... ¿De dónde saco los datos? Mira.

Primero, para obtener toda la información sobr nuestra suscripción podemos correr en PowerShell esto:
Get-AzureSubscription
Y obtendremos una pantalla como esta:
Esos son los parametros que necesitas rellenar. Fácil.

Por último para correr los comandos necesitarás dar datos sobre qué suscripción usar y sobre qué máquina virtual dentro de esa suscripción. Para ello puedes ver la lista de MVs ejecutando Get-AzureVM. Te saldrá una pantalla como esta:


Ahora tenemos todos los parámetros que necesitamos. Podemos lanzar, a modo de prueba, el script para ver la lista de snapshots que tenemos tomados de una máquina:


./GetSnapshotList.ps1 -subscriptionName "NombreDeLaSuscripción" -cloudServiceName "NombreDelServicio" -virtualMachineName "Nombre" -maximumDays 15
Where:
  • -subscriptionName es el SubscriptionName que obtuviste de Get-AzureSubscription y escribiste luego en el fichero Subscriptions.csv
  • -cloudServiceNameeste es la columna ServiceName que puedes ver en Get-AzureVM
  • -virtualMachineName  es la columna Name que puedes ver en Get-AzureVM

Y eso es todo.

Cosas para recordar:
  • La máquina virtual debe de estar apagada antes de tomar el snapshot (hay un parametro para eso en el comando de PowerShell)
  • Los datos en tus discos "Temporary Storage" no se van a salvar ni a restaurar porque son temporales. Sí, yo ya sabía que iba a funcionar de esta forma, pero no pude resistirme a probar.

Para terminar de probarlo todo hice un snapshot de una de mis máquinas de desarrollo de SharePoint, luego hice algunos cambios en ella, después restauré el snapshot y los cambios se deshicieron, exactamente como era de esperar. Y además fué más rápido de lo que yo esperaba.

No hay comentarios: