【问题标题】:Script for automation start and stop AWS EC2 instance用于自动启动和停止 AWS EC2 实例的脚本
【发布时间】:2016-04-04 03:22:23
【问题描述】:

我已经在 4 个节点的 Amazon EC2 实例上安装了 Cloudera 集群。 对于某些时间,例如周一至周五晚上、周六和周日,我不需要使用这 4 个节点的 Amazon EC2 实例以获得更有效的成本。

如何使用脚本自动启动和停止那些 Amazon EC2 实例? 谁能给我脚本的例子吗?

谢谢,

【问题讨论】:

    标签: shell amazon-web-services amazon-ec2 cloudera-cdh


    【解决方案1】:

    您可以创建脚本来停止和启动实例,或者通过 linux 中的 crontab 或 windows 中的 schedule-task 直接运行命令

    例如,如果您想在晚上 11 点停止实例
    在 crontab 中添加以下行(您将通过 crontab -e 获得)

    0 23 * * * sh stop.sh

    格式是
    m h dom mon dow 命令

    用于启动实例
    aws ec2 start-instances --instance-ids i-1a1234

    停止实例
    aws ec2 stop-instances --instance-ids i-1a1234

    【讨论】:

    • 你是说.. 0 2 * * * lightstreamasia ec2-start-instances i-0bbd2c85 0 11 * * * lightstreamasia ec2-stop-instances i-0bbd2c85
    【解决方案2】:

    我编写了一个小的 shell 脚本来通过终端自动启动和登录我的 aws 实例。你可以使用它

    #!/bin/bash
    aws ec2 start-instances --instance-ids i-070107834ab273992
    
    
    public_ip=aws ec2 describe-instances --instance-ids i-070107834ab2 \
            --query 'Reservations[*].Instances[*].PublicDnsName' --output text
    
    
    AWS_KEY="/home/debian/cs605 data management/assignment6/mumbai instance keys"
    
    ssh -v -i "$AWS_KEY"/mumbai-instance-1.pem\
            ec2-user@$public_ip
    

    ~
    ~

    【讨论】:

      最近更新 更多