Suas exigências parecem ser:
- Agende uma instância do Amazon EC2 para iniciar em um horário específico do dia
- A instância deve executar um script Python após o início
- Quando o script em Python foi concluída em execução, Pare a instância
Iniciar a instância do EC2 em um cronograma
Você pode usar o Amazon EventBridge para acionar um AWS função Lambda em uma agenda.
Você pode codificar a função Lambda para chamar StartInstances()
na instância do EC2 para iniciá-lo.
Executar um script na inicialização
Instalar um script para o /var/lib/cloud/scripts/per-boot/
diretório. Este script pode baixar o programa Python a partir do S3 e, em seguida, executá-lo.
Quando a instância do EC2 é iniciado, ele irá automaticamente executar qualquer script no diretório.
Parar a instância quando o script for concluído
No final do script, adicione o comando:
shutdown -h now
Isto irá desligar a instância e colocar na Interrompido estado.
(Isto assume que o script está sendo executado como root. Se ele é executado como outro usuário, ele vai precisar usar sudo shutdown -h now
.)