Geeks With Blogs

News

Séptimo Cielo Alfredo Delsors Blog

Imagina que tenemos una aplicación corporativa para completar tareas como el registro de los gastos del empleado por ejemplo. Todo parece indicar que esta aplicación va a utilizarse mucho durante la semana y poco durante el fin de semana. Se puede ahorrar bastante dinero en la factura mensual de Azure reduciendo el número de instancias en ejecución dependiendo del calendario. Esta clase de escalado es fácil de implementar en Azure utilizando cmdlets PowerShell y el programador de tareas incluido en Windows 7 / Windows Server 2008.

Patterns & Practices publica un libro en línea "Moving Applications to the Cloud on the Microsoft Windows Azure Platform" donde pueden verse los detalles del ahorro obtenido por este tipo de escalado del servicio por calendario en el capítulo "How Much Will it Cost?" en http://msdn.microsoft.com/en-us/library/ff803375.aspx (ver la sección Variations).

Primero son necesarios los scripts PowerShell que se necesitan para incrementar o decrementar el número de instancias de Azure a través de internet http://archive.msdn.microsoft.com/azurecmdlets/, que "... provides a set of cmdlets that wrap the Windows Azure Management and Diagnostics APIs and enable a user to configure and manage their Windows Azure operations. ".

Un ejemplo del script requerido para escalar a 2 el número de instancias, requeridas para mantener el SLA de Microsoft, es:

Add-PSSnapin AzureManagementToolsSnapIn

$cert = Get-Item cert:\CurrentUser\My\EBF61XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

$sub = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'

Get-HostedServices -SubscriptionId $sub -Certificate $cert | get-deployment staging | set-deploymentconfiguration {$_.RolesConfiguration["WebRole1"].InstanceCount = 2}

Donde $cert es la huella (thumbprint) de un cerfificado de administración para la subscripción y subido al portal de Azure, y $sub es el identificador de la subscripción disponible también en el portal.

Con el script necesario, sólo hay que programar la ejecución periódica de una tarea utilizando el programador de tareas del SO:

 

 

 

De esta manera tan sencilla los fines de semana ejecutaremos menos instancias de computación en Azure ahorrando dinero en la factura mensual y sin que nuestra aplicación deje de prestar servicio.

 

Posted on Friday, April 8, 2011 1:42 PM Azure | Back to top


Comments on this post: Como autoescalar instancias en Azure basándose en el calendario?

No comments posted yet.
Your comment:
 (will show your gravatar)


Copyright © Alfredo Delsors | Powered by: GeeksWithBlogs.net