Avec Windows Azure, si en effet l'allocation ou la libération d'instance de machine virtuelle est rapide (de l'ordre d'un quinzaine de minutes), il n'en demeure pas moins que c'est une opération manuelle. Un comble pour le Cloud où l'automatisation est ultra-présente !
Il n'existe donc pas de fonctionnalité ou de service fourni par Microsoft pour adapter automatiquement le nombre d'instances (role Windows Azure) en fonction de la charge, contrairement à la plateforme Amazon EC2 par exemple (même s'il s'agit de IaaS, la problématique reste la même) où la fonction d'autoscaling est fournie avec la plateforme (avec des coûts supplémentaires évidemment).
Rappelons le principe de l'autoscaling :
- L'application hébergée dans le Cloud subit une charge, variable, prévisible ou non...
- La charge est évaluée selon un certain nombre de critères à définir : %CPU, Nombre d'IO, Mémoire restante, Nombre de messages en attente dans la file...
- Les règles prenant en compte les critères et leurs seuils sont également à définir pour déterminer les actions de redimensionnement (à la hausse ou à la baisse)
- Le service d'autoscaling collecte, surveille les critères de charge puis exécute automatiquement le redimensionnement en fonction de l'exécution des règles définies.
Et dans l'univers Windows Azure, des éditeurs-tiers proposent différentes solutions :
- AzureWatch, par Paraleap, service payé à l'usage (1cent/heure/instance)
- Azure Management Cmdlets, par Cerebrata, licence software contenant des Cmdlets pour accélérer l'écriture de son propre service d'autoscaling.
La documentation de WASABi se télécharge directement ici (102 pages !), mais vous préférerez peut-être aborder juste l'essentiel dans ce post de Michael Collier.
Notez enfin que quelque soit la solution que vous envisagez, vous disposez en standard d'un quota de 20 coeurs d'instance par souscription Windows Azure, limite qui peut être agrandie sur appel et justification auprès du support Microsoft.
Aucun commentaire:
Enregistrer un commentaire