リンクバル技術部の川畑です。9月も残すところあと3日。今年の台風は勢力が強く、今週末には台風24号が上陸するとの予報なので、皆様お気をつけてお過ごしください。
今回は、少しでもサーバー費用を削減すべく、特定のタグを設定して指定したタグ全てのRDSを起動停止するスクリプトを作成しましたので、ご紹介させていただきます。
(以前こちらの記事で似たようなスクリプトを紹介させて頂いたのですが、1つのRDSしか起動停止できないものでした)
スクリプト説明
- boto3でRDSを操作するために高レベルAPIのResourcesを使いたかったけど、RDSは提供されていないようなので低レベルAPIのClientsを使用
- AWSアカウントの指定リージョン全てのRDS情報を取得
- RDS情報より指定したタグとRDSのステータスによりフィルタリング(すでに停止されているRDSを停止しようとすると、スクリプトでエラーとなるため)
- フィルタリングされたRDSを起動停止
使用言語
- python3.6
- boto3