EC2 Auto Scaling pour les mortels? Cela existe-t-il?

9

J'ai une configuration EC2 très simple avec Eastic Load Balancer et deux serveurs Web en dessous. J'ai besoin de démarrer automatiquement une instance supplémentaire lorsque le processeur de l'un d'eux atteint 100% ou qu'une instance échoue.

La première chose que j'ai regardée était la page Amazon http://aws.amazon.com/autoscaling/ . J'ai lu cette page plusieurs fois et je la regarde et je n'arrive pas à y croire. Il semble qu'Amazon annonce la "mise à l'échelle automatique" en tant que fonctionnalité alors qu'elle ne fournit que des API et des outils de bricolage. Vous devez en fait construire l'Auto Scaling pour eux! Il n'y a pas de console ou un outil qui fournit AutoScaling. Vous devez programmer ou payer un programmeur pour construire un tel outil. Ils annoncent AutoScaling mais cela n'existe pas - vous devez le construire vous-même? ou je manque quelque chose?

J'ai regardé des alternatives:

Rightscale semble exagéré pour ma configuration simple. Ils fonctionnent avec des déploiements d'infrastructure entiers, pas avec des serveurs uniques. et le coût d'entrée est de 2500 $ lorsque tout mon budget mensuel est inférieur à 500 $.

Scalr . Semble plus accessible que Rightscale. Mais comme avec Rightscale, je n'ai pas trouvé de moyen d'apporter mon propre serveur qui fonctionne déjà sur EC2. Avec Scalr et Rightscale, il semble que le seul moyen d'entrer soit de créer un serveur à partir de zéro dans leur console, puis de transférer les données?

J'ai également regardé un produit appelé Ylastic . C'est le produit le plus étrange de tous. L'inscription nécessite un compte "Eucalyptus". Et j'ai lu toutes les pages du site Ylastic, il n'y a aucune mention de ce qu'est "Eucalyptus". Comment l'obtenez-vous? est-ce un programme que vous installez sur votre instance EC2 ou un service tiers?

Je suis complètement déconcerté par le manque de cette possibilité simple: démarrer une nouvelle instance EC2 en cas de défaillance ou de consommation de 100% de CPU. Il semble qu'il n'y ait que des outils pour les utilisateurs Enterprise qui créent des batteries de solutions entières. Ou un tas d'outils de bricolage qui nécessitent un programmeur.

Y a-t-il un terrain d'entente?

Merci.

romain
la source
4
"Vous devez en fait construire l'Auto Scaling pour eux!" Non. Il vous suffit de créer le mécanisme qui appelle l'API pour la mise à l'échelle automatique. Amazon est un fournisseur de plate-forme et non un fournisseur d'applications. :-) Êtes-vous sûr que EC2 est ce dont vous avez besoin? Avez-vous regardé le temple des médias ou d'autres fournisseurs d'hébergement qui offrent ce service?
Joseph Kern
1
+1 pour avoir essayé de lire la documentation.
Joseph Kern

Réponses:

3

Pas que j'ai trouvé, car la mise à l'échelle est une chose plutôt dépendante de la situation.

Je fais face à un problème similaire moi-même (et je regarde des produits similaires) et nous finirons probablement par rouler le nôtre. Le gros problème est qu'il n'y a pas de barre de curseur à l'échelle du Web où, d'un côté du curseur, vous avez un seul serveur exécutant à la fois le Web et la base de données, et à l'autre extrémité du curseur, vous avez plusieurs zones de disponibilité avec service Web des clusters sur des adresses IP anycasted se cachant derrière memcachd et des bases de données considérablement partagées et répliquées. La façon dont vous tracez le curseur d'un côté à l'autre dépend entièrement du code de votre application.

Si la croissance est possible pour votre application, ces problèmes de mise à l'échelle doivent être réfléchis et votre système de mise à l'échelle automatique conçu pour s'adapter.

sysadmin1138
la source
2

La mise à l'échelle automatique existe, elle n'a tout simplement pas d'interface graphique et a plutôt une interface de ligne de commande. Vous n'avez pas besoin de programmeur, vous avez seulement besoin de quelqu'un pour passer quelques heures à lire la documentation et faire quelques appels en ligne de commande.

Jetez un œil au lien ci-dessous - il contient un exemple de 7 appels de ligne de commande dont vous avez besoin pour le faire fonctionner.

http://docs.amazonwebservices.com/AutoScaling/latest/DeveloperGuide/index.html?US_SetUpASLBApp.html

BTW, vos serveurs Web sont en lecture seule , non? Ils n'ont pas de base de données à mettre à jour ou alors?

Et je suis d'accord, si c'est juste un serveur Web, peut-être que EC2 est un excès et que le fournisseur d'hébergement Web est la bonne réponse?

Alex
la source
0

Suite aux questions de Joe sur Scalr (Avertissement: je travaille chez Scalr), il n'est pas tout à fait vrai de dire que vous devez redémarrer à partir de zéro lorsque vous utilisez Scalr pour la première fois. Vous pouvez "importer" vos serveurs qui fonctionnent déjà sur EC2 dans Scalr. Pour ce faire, vous devez utiliser la fonctionnalité appelée "Créer un rôle à partir d'un serveur non Scalr". Vous pouvez trouver plus d'informations à ce sujet sur notre wiki .

Je ne sais pas si RightScale fait une telle fonctionnalité ou non, mais vous pouvez certainement le faire avec Scalr. J'espère que ça aide.

Michel Galibert
la source
0

Je pense que Ylastic fait un excellent travail pour AWS Auto Scaling et en fait beaucoup plus. Vous pouvez également essayer EZAutoScaling , il s'agit essentiellement d'une interface graphique pour AWS Auto Scaling et c'est tout ce qu'il fait pour un prix très bon marché.

bt100
la source
0

Une autre interface graphique pour le service Auto Scaling d'Amazon est Asgard , une application open source gratuite de Netflix pour la gestion du cloud et le déploiement d'applications dans AWS, se concentrant principalement sur les groupes Auto Scaling.

Joe Sondow
la source