【发布时间】:2021-10-06 18:39:42
【问题描述】:
我的 AWS 账户中有数据库实例。许多卷附加到一个实例。我想每周创建具有根卷的 ec2 实例的 ami。在任何时候,我都应该拥有 3 个最新的 ami。
我已尝试使用系统管理器,它会创建与实例关联的所有卷的快照。
我编写了一个 bash 脚本来创建具有根卷的实例的 ami。我需要删除旧图像的方法。
注意:实例不应重启 ami 创建
请帮助我更新脚本或让我知道是否有任何其他方法可以实现它。
#!/bin/bash
root_device=$(aws ec2 describe-instances --instance-ids i-12345 --query 'Reservations[*].Instances[*].RootDeviceName' --output text)
echo root device is $root_device
devices=$(for i in $(aws ec2 describe-instances --instance-ids i-12345 --query 'Reservations[*].Instances[*].BlockDeviceMappings[*].DeviceName' --output text );
do if [ $i != $root_device ];
then echo DeviceName=$i,NoDevice=;
fi;
done)
aws ec2 create-image --instance-id i-12345 --block-device-mappings $devices --name "test-ami" --no-reboot
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-ami