已配置AWS CLI,如何启动和停止EC2实例?
通过AWS CLI启动EC2实例
确保你拥有ec2:StartInstances权限,执行以下命令启动EC2实例:
aws ec2 start-instances --instance-ids <你的实例ID>
- 替换
<你的实例ID>为实际的EC2实例ID(例如i-0abc123def456ghi) - 一次性启动多个实例,只需用空格分隔多个ID:
aws ec2 start-instances --instance-ids i-0abc123 i-0def456 i-0ghi789 - 不知道实例ID的话,可通过以下命令列出所有实例ID:
aws ec2 describe-instances --query "Reservations[*].Instances[*].InstanceId" --output text - 也可按标签筛选实例,比如获取名为
MyWebServer的实例ID:aws ec2 describe-instances --filters "Name=tag:Name,Values=MyWebServer" --query "Reservations[*].Instances[*].InstanceId" --output text
通过AWS CLI停止EC2实例
确保你拥有ec2:StopInstances权限,执行以下命令停止EC2实例:
aws ec2 stop-instances --instance-ids <你的实例ID>
- 同样支持批量停止多个实例,格式与启动命令一致
- 仅能停止处于
running状态的实例,若实例状态不符,命令会返回错误提示 - 批量停止特定标签的实例(例如停止所有测试环境实例):
INSTANCE_IDS=$(aws ec2 describe-instances --filters "Name=tag:Environment,Values=Test" --query "Reservations[*].Instances[*].InstanceId" --output text) aws ec2 stop-instances --instance-ids $INSTANCE_IDS
注意事项
- 启动/停止操作会直接改变实例运行状态,请务必确认操作对象无误
- 不同实例类型(按需、预留等)的计费规则会随状态变化,操作前请确认相关计费细节
- 若使用多AWS账户或多区域配置,需通过
--profile或--region参数指定对应配置:aws ec2 start-instances --instance-ids i-0abc123 --profile my-aws-profile --region us-east-1
内容的提问来源于stack exchange,提问作者Santhosh
相关产品推荐
相关产品推荐

