ec2 instância local para tarefa de processamento diário

2

Eu não tenho muita experiência como administrador de sistema ou com amazon aws, então espero que alguém possa explicar em termos simples ou me encaminhar para um bom guia sobre como alcançar o que está abaixo.

Eu tenho um sistema rodando em ec2 e amazon rds recebendo dados e salvando-os no banco de dados.

Eu preciso executar um script uma vez por dia (no final do dia) para processar todos os dados e preparar um relatório diário. Esse processo levará aproximadamente uma hora para ser executado. Ele precisa ser executado em uma instância de alta memória.

Pelo que li até agora, acho que a melhor maneira de fazer isso é executar uma instância spot de alta memória todos os dias, configurá-lo para executar o script na inicialização e desligar quando terminar.

Esse é o caminho certo para fazer isso? Se for o caso, como fazer? como dizer a instância spot para ser executada todos os dias? através de um cron job no outro servidor ou há uma maneira melhor? Como configurá-lo para executar o script na inicialização? através do cloudinit?

Qualquer ajuda seria apreciada.

Uma última coisa, o trabalho não é muito sensível ao tempo, desde que seja executado todos os dias.

obrigado

    
por applechief 08.06.2012 / 12:02

2 respostas

4

As instâncias spot podem não ser o melhor mecanismo para usar no seu caso. Você exige que o processo seja executado todos os dias e provavelmente concluir a execução assim que for iniciado.

As instâncias pontuais podem não ser executadas quando você quiser. Se o preço do lance for muito baixo ou não houver capacidade, você não receberá sua instância. Além disso, depois que sua instância for iniciada, se o preço da oferta subir acima do preço máximo, a instância será encerrada antes de ter tempo para ser concluída.

Você pode usar um preço de lance máximo alto para tentar evitar alguns desses problemas, mas não há garantias.

Dependendo dos custos, é possível observar as instâncias reservadas (no seu caso, uma instância reservada leve pode ser suficiente) ou simplesmente uma instância sob demanda que você só executa no final do dia.

A Amazon não tem nenhum agendamento de inicialização / parada de instâncias, portanto você precisará usar algo como o cron ou outras ferramentas de agendamento automatizadas.

A Amazon agora tem Instâncias reservadas agendadas que podem ser úteis em relação ao custo , mas não vai realizar o começo para você.

    
por 08.06.2012 / 15:02
0

O escalonamento automático com um agendamento pode ser usado para agendar uma tarefa de processamento diária. Um guia está disponível aqui Executando instâncias do EC2 em um cronograma recorrente com o Auto Scaling

    
por 08.02.2013 / 17:51