とりあえず突貫で。
curl
刺さった時とかどうするののアレ--query
でvolume_id
指定するんだけど変数食わせられないから微妙- mysql停止起動失敗のアレ
- mysql起動後にレプリケーションチェックしないとアレ
#!/bin/bash REGION="--region ap-northeast-1" init() { INSTANCE_ID=`curl -s http://169.254.169.254/latest/meta-data/instance-id` BACKUP_VOLUMEID=`aws ec2 describe-instances --instance-id ${INSTANCE_ID} ${REGION} --query 'Reservations[].Instances[].BlockDeviceMappings[?DeviceName==`/dev/xvdb`].Ebs[].VolumeId' --output text` DESCRIPTION="${INSTANCE_ID} ${BACKUP_VOLUMEID} `date +%y%m%d` snapshot" } mysqlctl() { ACTION=$1 sudo service mysqld ${ACTION} if [ ${ACTION} == "stop" ];then sync;sync;sync fi } backup() { BACKUP_VOLUME=$1 aws ec2 create-snapshot --volume-id ${BACKUP_VOLUMEID} --description "${DESCRIPTION}" ${REGION} RESULT=$? return ${RESULT} } run() { init mysqlctl stop backup mysqlctl start } run
アレ
元記事はこちらです。
「EBS スナップショットでほげほげするアレ」