EC2 Auto Scaling para mortais? Isso existe?

9

Eu tenho uma configuração EC2 muito simples com o Eastic Load Balancer e dois servidores da Web. Preciso iniciar automaticamente uma instância adicional quando a CPU em um deles atingir 100% ou alguma instância falhar.

A primeira coisa que procurei foi na página http://aws.amazon.com/autoscaling/ da Amazon . Li esta página algumas vezes, olhando para ela e não consigo acreditar. Parece que a Amazon anuncia o "Auto Scaling" como recurso, enquanto fornece apenas API e algumas ferramentas de bricolage. Você realmente precisa criar o Auto Scaling para eles! Não há console ou alguma ferramenta que forneça o AutoScaling. Você precisa programar ou pagar o programador para criar essa ferramenta. Eles anunciam o AutoScaling, mas ele não existe - você precisa construí-lo você mesmo? ou estou faltando alguma coisa?

Eu olhei para alternativas:

A escala de direitos parece exagerada para minha configuração simples. Eles operam com implantações de infraestrutura inteiras, não com servidores únicos. e o custo de entrada é de R $ 2.500 quando meu orçamento mensal inteiro está abaixo de R $ 500.

Scalr . Parece mais acessível que o Rightscale. Mas, como no Rightscale, não consegui encontrar uma maneira de trazer meu próprio servidor que já está sendo executado no EC2. Com o Scalr e o Rightscale, parece que a única maneira de entrar é criar um servidor a partir do zero no console e depois transferir os dados de alguma forma.

Eu também olhei para o produto chamado Ylastic . Este é o produto mais estranho de todos. O registro requer alguma conta "Eucalyptus". E eu li todas as páginas no site da Ylastic, não há menção sobre o que é "eucalipto". Como você o obtém? é um programa que você instala na sua instância do EC2 ou em algum serviço de terceiros?

Estou completamente perplexo com a falta dessa possibilidade simples - de iniciar uma nova instância do EC2 quando alguém falha ou consome 100% da CPU. Parece que existem apenas ferramentas para usuários corporativos que constroem farms de soluções inteiros. Ou várias ferramentas de bricolage que exigem um programador.

Existe um meio termo?

Obrigado.

romano
fonte
4
"Você realmente precisa criar o Auto Scaling para eles!" Não. Você só precisa criar o mecanismo que chama a API para o dimensionamento automático. A Amazon é um fornecedor de plataformas, não um fornecedor de aplicativos. :-) Você tem certeza de que o EC2 é o que você precisa? Você já consultou o templo da mídia ou outros provedores de hospedagem que oferecem esse serviço?
Joseph Kern
1
+1 por tentar ler a documentação.
Joseph Kern

Respostas:

3

Não que eu tenha encontrado, porque escalar é uma coisa bastante dependente da situação.

Estou enfrentando um problema semelhante (e olhando produtos similares) e provavelmente acabaremos criando o nosso. O grande problema é que não há barra deslizante na escala da Web, onde em um lado do controle deslizante você tem um único servidor executando a Web e o banco de dados, e na outra extremidade do controle deslizante você tem várias zonas de disponibilidade com serviço da Web clusters em endereços IP não-escondidos, escondidos atrás do memcachd, e bancos de dados replicados e significativamente fragmentados. Como você plota o controle deslizante de um lado para o outro depende inteiramente do código do aplicativo.

Se for possível o crescimento do seu aplicativo, esses problemas de dimensionamento precisam ser pensados ​​e seu sistema de dimensionamento automático deve ser construído para acomodar.

sysadmin1138
fonte
2

O escalonamento automático existe, ele simplesmente não possui interface gráfica e, em vez disso, possui interface de linha de comando. Você não precisa de programador, apenas de alguém que gaste algumas horas lendo a documentação e faça algumas chamadas de linha de comando.

Dê uma olhada no link abaixo - ele tem um exemplo de 7 chamadas de linha de comando que você precisa para fazê-lo funcionar.

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

BTW, seus servidores web são somente leitura , certo? Eles não têm algum banco de dados para atualizar ou algo assim?

E eu concordaria que, se for apenas um servidor web, talvez o EC2 seja um exagero e o provedor de hospedagem seja a resposta certa?

Alex
fonte
0

Após as perguntas de Joe sobre o Scalr (Isenção de responsabilidade: eu trabalho na Scalr), não é exatamente verdade que você precisa reiniciar do zero ao usar o Scalr pela primeira vez. Você pode "importar" seus servidores que já estão em execução no EC2 no Scalr. Para fazer isso, você precisa usar o recurso chamado "Criar função a partir de um servidor que não seja o Scalr". Você pode encontrar mais informações sobre isso no nosso wiki .

Não sei se o RightScale faz esse recurso ou não, mas você pode definitivamente fazê-lo com o Scalr. Eu espero que isso ajude.

Michel Galibert
fonte
0

Acho que o Ylastic faz um ótimo trabalho no AWS Auto Scaling, além de fazer muito mais. Você também pode experimentar o EZAutoScaling , é essencialmente uma GUI para o AWS Auto Scaling e é tudo o que faz por um preço muito barato.

bt100
fonte
0

Outra GUI do serviço Auto Scaling da Amazon é o Asgard , um aplicativo gratuito e de código aberto da Netflix para gerenciamento de nuvem e implantação de aplicativos na AWS, com foco principalmente em Grupos de Auto Scaling.

Joe Sondow
fonte