AWS Backup의 Default vault 복구 지점을 함께 삭제합니다.
개요
오이타 전에 테스트했던 AWS Backup에서 Default vault에 대량의 AMI와 Snapshot이 있으며,
방해였기 때문에 지우려고 했는데, EC2의 컴파네로부터는 정리해 삭제를 할 수 없다.
AWS Backup의 컴패네이션에서라면 1개씩 밖에 지울 수 없고, vault 마다 삭제하려고 했던 곳
Default의 vault는 삭제할 수 없는 것이 판명.
견적 소스:
AWS Backup을 사용하기 전에 기억해야 할 사항
해결책
50개 정도의 AMI와 Snapshot이라면 1개 1개 손으로 지워도 좋을지도 모르지만, 어차피 같은 시간을 걸면 정리해 삭제할 수 있는 방법을 생각하고 싶다.
그럼 AWS CLI로 단번에 해 버리자.
환경
Amazon Linux2
aws-cli/1.16.300 Python/2.7.16 Linux/4.14.171-136.231.amzn2.x86_64 botocore/1.13.36
짠 쉘
budel.sh#!/bin/bash
##一覧作成CLI用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいCLI用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULTからリカバリーポイント一覧を取得&整理
aws backup $LIST $1 | grep $VAL | sed -e "s/[\"]//g" | awk '{print $2}' | awk -F ',' '{print $1}' | cat > vault.txt
##出力したファイルから一行ずつコマンド処理
while read line
do
aws backup $CMD $1 $RPA $line
done < ./vault.txt
##立つ鳥跡を濁さず
rm -f vault.txt
결과
budel.sh 으로 두드려 주면 그 vault내에 있는 복구 포인트(EC2라면 AMI와 Snapshot)가 모두 사라진다.
※잘못해서 다른 vault로 삭제하지 않도록
CMD를 list-recovery-points-by-resource --resource-arn으로 설정하고,
VAL을 ResourceArn으로 설정하면 각 ResourceArn의 복구 지점 값을
리스트로 내 주기 때문에, 그쪽에서 시험하는 것이 좋다(자신은 그랬다)
아직 전부 보고 있지 않지만, CLI에 따라서는 그 밖에 보다 편리한 움직여 주는가.
AWS Backup CLI 목록
고민(해결_20200319)
그리고, vault 일람 취득의 곳에서 아무래도 이하가 아니면 출력을 할 수 없고,
awk를 두 번 끼우고 있는데, 어떻게 해야 할까.awk '{print $2}' | awk -F ',' '{print $1}'
이렇게 하면 아무것도 출력되지 않는다.awk -F ',' '{print $2}'
유지에 의해, grep 후의 sed를 이하로 변경하면 좋다는 것.sed -r "s/\"|,//g
한층 더 출력한 것을 1회 1회 파일로 하고 있던 것을, 변수에 넣어 처리하도록(듯이) 변경.
(변수 lines= 뒤에 반각 스페이스가 들어가면 잘 움직이지 않고 약간 빠진다)
수정된 쉘
awsdel.sh #!/bin/bash
##一覧作成用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいこと用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULT一覧を取得&整理し、変数に格納
lines=`aws backup $LIST $1 | grep $VAL | sed -r "s/\"|,//g" | awk '{print $2}'`
##出力した結果から一行ずつコマンド処理
for line in $lines
do
aws backup $CMD $1 $RPA $line
done
very smart!!
Reference
이 문제에 관하여(AWS Backup의 Default vault 복구 지점을 함께 삭제합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/katsutoshi_miyata/items/bda220ae62bd7efd3613
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
50개 정도의 AMI와 Snapshot이라면 1개 1개 손으로 지워도 좋을지도 모르지만, 어차피 같은 시간을 걸면 정리해 삭제할 수 있는 방법을 생각하고 싶다.
그럼 AWS CLI로 단번에 해 버리자.
환경
Amazon Linux2
aws-cli/1.16.300 Python/2.7.16 Linux/4.14.171-136.231.amzn2.x86_64 botocore/1.13.36
짠 쉘
budel.sh#!/bin/bash
##一覧作成CLI用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいCLI用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULTからリカバリーポイント一覧を取得&整理
aws backup $LIST $1 | grep $VAL | sed -e "s/[\"]//g" | awk '{print $2}' | awk -F ',' '{print $1}' | cat > vault.txt
##出力したファイルから一行ずつコマンド処理
while read line
do
aws backup $CMD $1 $RPA $line
done < ./vault.txt
##立つ鳥跡を濁さず
rm -f vault.txt
결과
budel.sh 으로 두드려 주면 그 vault내에 있는 복구 포인트(EC2라면 AMI와 Snapshot)가 모두 사라진다.
※잘못해서 다른 vault로 삭제하지 않도록
CMD를 list-recovery-points-by-resource --resource-arn으로 설정하고,
VAL을 ResourceArn으로 설정하면 각 ResourceArn의 복구 지점 값을
리스트로 내 주기 때문에, 그쪽에서 시험하는 것이 좋다(자신은 그랬다)
아직 전부 보고 있지 않지만, CLI에 따라서는 그 밖에 보다 편리한 움직여 주는가.
AWS Backup CLI 목록
고민(해결_20200319)
그리고, vault 일람 취득의 곳에서 아무래도 이하가 아니면 출력을 할 수 없고,
awk를 두 번 끼우고 있는데, 어떻게 해야 할까.awk '{print $2}' | awk -F ',' '{print $1}'
이렇게 하면 아무것도 출력되지 않는다.awk -F ',' '{print $2}'
유지에 의해, grep 후의 sed를 이하로 변경하면 좋다는 것.sed -r "s/\"|,//g
한층 더 출력한 것을 1회 1회 파일로 하고 있던 것을, 변수에 넣어 처리하도록(듯이) 변경.
(변수 lines= 뒤에 반각 스페이스가 들어가면 잘 움직이지 않고 약간 빠진다)
수정된 쉘
awsdel.sh #!/bin/bash
##一覧作成用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいこと用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULT一覧を取得&整理し、変数に格納
lines=`aws backup $LIST $1 | grep $VAL | sed -r "s/\"|,//g" | awk '{print $2}'`
##出力した結果から一行ずつコマンド処理
for line in $lines
do
aws backup $CMD $1 $RPA $line
done
very smart!!
Reference
이 문제에 관하여(AWS Backup의 Default vault 복구 지점을 함께 삭제합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/katsutoshi_miyata/items/bda220ae62bd7efd3613
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
budel.sh
#!/bin/bash
##一覧作成CLI用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいCLI用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULTからリカバリーポイント一覧を取得&整理
aws backup $LIST $1 | grep $VAL | sed -e "s/[\"]//g" | awk '{print $2}' | awk -F ',' '{print $1}' | cat > vault.txt
##出力したファイルから一行ずつコマンド処理
while read line
do
aws backup $CMD $1 $RPA $line
done < ./vault.txt
##立つ鳥跡を濁さず
rm -f vault.txt
결과
budel.sh 으로 두드려 주면 그 vault내에 있는 복구 포인트(EC2라면 AMI와 Snapshot)가 모두 사라진다.
※잘못해서 다른 vault로 삭제하지 않도록
CMD를 list-recovery-points-by-resource --resource-arn으로 설정하고,
VAL을 ResourceArn으로 설정하면 각 ResourceArn의 복구 지점 값을
리스트로 내 주기 때문에, 그쪽에서 시험하는 것이 좋다(자신은 그랬다)
아직 전부 보고 있지 않지만, CLI에 따라서는 그 밖에 보다 편리한 움직여 주는가.
AWS Backup CLI 목록
고민(해결_20200319)
그리고, vault 일람 취득의 곳에서 아무래도 이하가 아니면 출력을 할 수 없고,
awk를 두 번 끼우고 있는데, 어떻게 해야 할까.awk '{print $2}' | awk -F ',' '{print $1}'
이렇게 하면 아무것도 출력되지 않는다.awk -F ',' '{print $2}'
유지에 의해, grep 후의 sed를 이하로 변경하면 좋다는 것.sed -r "s/\"|,//g
한층 더 출력한 것을 1회 1회 파일로 하고 있던 것을, 변수에 넣어 처리하도록(듯이) 변경.
(변수 lines= 뒤에 반각 스페이스가 들어가면 잘 움직이지 않고 약간 빠진다)
수정된 쉘
awsdel.sh #!/bin/bash
##一覧作成用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいこと用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULT一覧を取得&整理し、変数に格納
lines=`aws backup $LIST $1 | grep $VAL | sed -r "s/\"|,//g" | awk '{print $2}'`
##出力した結果から一行ずつコマンド処理
for line in $lines
do
aws backup $CMD $1 $RPA $line
done
very smart!!
Reference
이 문제에 관하여(AWS Backup의 Default vault 복구 지점을 함께 삭제합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/katsutoshi_miyata/items/bda220ae62bd7efd3613
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
※잘못해서 다른 vault로 삭제하지 않도록
CMD를 list-recovery-points-by-resource --resource-arn으로 설정하고,
VAL을 ResourceArn으로 설정하면 각 ResourceArn의 복구 지점 값을
리스트로 내 주기 때문에, 그쪽에서 시험하는 것이 좋다(자신은 그랬다)
아직 전부 보고 있지 않지만, CLI에 따라서는 그 밖에 보다 편리한 움직여 주는가.
AWS Backup CLI 목록
고민(해결_20200319)
그리고, vault 일람 취득의 곳에서 아무래도 이하가 아니면 출력을 할 수 없고,
awk를 두 번 끼우고 있는데, 어떻게 해야 할까.awk '{print $2}' | awk -F ',' '{print $1}'
이렇게 하면 아무것도 출력되지 않는다.awk -F ',' '{print $2}'
유지에 의해, grep 후의 sed를 이하로 변경하면 좋다는 것.sed -r "s/\"|,//g
한층 더 출력한 것을 1회 1회 파일로 하고 있던 것을, 변수에 넣어 처리하도록(듯이) 변경.
(변수 lines= 뒤에 반각 스페이스가 들어가면 잘 움직이지 않고 약간 빠진다)
수정된 쉘
awsdel.sh #!/bin/bash
##一覧作成用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいこと用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULT一覧を取得&整理し、変数に格納
lines=`aws backup $LIST $1 | grep $VAL | sed -r "s/\"|,//g" | awk '{print $2}'`
##出力した結果から一行ずつコマンド処理
for line in $lines
do
aws backup $CMD $1 $RPA $line
done
very smart!!
awsdel.sh
#!/bin/bash
##一覧作成用変数
LIST="list-recovery-points-by-backup-vault --backup-vault-name"
##AWSBackupにやらせたいこと用変数
CMD="delete-recovery-point --backup-vault-name"
##引数省略用
RPA="--recovery-point-arn"
##引っ張ってくる値
VAL="RecoveryPointArn"
##VAULT一覧を取得&整理し、変数に格納
lines=`aws backup $LIST $1 | grep $VAL | sed -r "s/\"|,//g" | awk '{print $2}'`
##出力した結果から一行ずつコマンド処理
for line in $lines
do
aws backup $CMD $1 $RPA $line
done
very smart!!
Reference
이 문제에 관하여(AWS Backup의 Default vault 복구 지점을 함께 삭제합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/katsutoshi_miyata/items/bda220ae62bd7efd3613텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)