APC 技術ブログ

株式会社エーピーコミュニケーションズの技術ブログです。

株式会社 エーピーコミュニケーションズの技術ブログです。

Resource Explorerで無駄なコスト削減!

はじめに

こんにちは!クラウド事業部の中根です。

個人利用のAWSで色々試した後のリソース削除、大変ですよね。
実は残ってるんじゃないかと不安になったり、消したつもりが残っていたり、といった経験は誰もがあるのではないでしょうか。
BudgetsのレポートやCost Explorerなどを使用する方も多いかもしれませんが、基本的に次の日にならないと料金発生有無がわからないのももどかしいです。
Resource Explorerを使って、この悩みをある程度解消することができたので、活用方法を共有したいと思います。

Resource Explorerとは

AWSアカウント内に存在するリソースを検索するためのサービスです。
リソースタイプやARN、タグなどでフィルタリングして、リソースを検索することができます。
S3バケットやEC2インスタンスを見るときに、各サービスページにアクセスしなくていいのが嬉しいですね!

具体的な使い方

Resource Explorerを開き、余分なリソースが残っていないかチェックします。
こちらは私の環境の画面ですが、削除スケジュール済みのKMSキーだけが表示されています。

何かリソースを作成すると、そのリソースは特定のタグを付けない限り表示されるようになっています。
リソースを削除するときは、この画面を見ながら削除することで、消したつもりが残っていた、という事故を減らすことができます。

設定方法

余分なリソースだけを表示したいので、そのための設定が必要になります。
これをしない場合は、以下のように大量のリソースが表示され、どれが余分なリソースかわかりにくくなってしまいます。

見覚えのないリソースがたくさんあるかと思いますが、ほとんどがデフォルトで作成されているリソースになります。
また、KMSのAWSマネージド型キーなども表示されます。
これらをフィルターで表示しないように設定していきましょう。

1. Resource Explorer有効化

まずはResource Explorerを有効化しましょう。

アグリゲータインデックスリージョンはお好きなリージョンを選択してください。
よく使うリージョンを選択するのがおすすめです。
ここで設定したリージョンから、他のリージョンのリソースを横断的に検索することができるようになります。

リソースが完全に表示されるようになるまで時間がかかります。
全てのリソースが表示されるまで最大で36時間かかるようです。
1~2時間程度でほとんどのリソースが表示されていそうでしたが、ご注意ください。
以下のお知らせが表示されなくなれば、完了と思われます。

2. 常駐リソースにタグ付け

削除対象にしたくないリソースがある場合は、それとわかるようなタグをつけておきましょう。
私は、in-useタグを付けています。
タグを付ける際は、タグエディタでまとめてタグ付けするのがおすすめです!

3. デフォルトのリソースにタグ付け

デフォルトで存在しているリソースにもタグ付けしましょう。
デフォルトで存在しているVPCなどが対象になります。
タグエディタで、全リソースを検索してから、まとめてタグ付けするのがおすすめです。

私は、defaultタグを付与しています。

4. クエリの作成

Resource Explorerから、「リソース」を選択します。
表示が「all-resources」になっていることを確認してください。

この状態で、クエリを入力していきましょう。
まずは以下のクエリを張り付けて、Enterを押下してください。

-resourcetype:athena:datacatalog -resourcetype:athena:workgroup -resourcetype:ec2:fleet -resourcetype:ec2:security-group-rule -resourcetype:ecs:capacity-provider -resourcetype:elasticache:parametergroup -resourcetype:elasticache:usergroup -resourcetype:elasticache:user -resourcetype:events:event-bus -resourcetype:events:rule -resourcetype:memorydb:acl -resourcetype:memorydb:parametergroup -resourcetype:memorydb:user -resourcetype:resource-explorer-2:index -resourcetype:resource-explorer-2:view


このクエリでは、デフォルトで作成されるが、タグ付けができないリソースで、料金も発生しないものも除外しています。
もしかしたら余計なのが含まれていたり、アカウントの使用状況によっては除外しきれていない場合があるので、その場合はカスタマイズしてください。

続いて、2.と3.で指定したタグを使って除外します。
defaultタグとin-useタグを付けた場合は以下のようなクエリを追加で入力し、Enterを押下します。

-tag:"default=true" -tag:"in-use=true"

最後に、上記のフィルタリング後に表示されている中で余分なリソースとして表示したくないものは、ARNフィルターで除去したり、タグを追加して表示しないように調整してください。
私は、KMSのAWSマネージド型キーはタグが付けられないので、ARNを直接指定して表示しないようにしています。
クエリ作成時は、補助機能も活用しましょう!

表示結果が、自分の望む形になったらクエリをコピーしてください。

5. ビューの作成

Resource Explorerから、「ビュー」 > 「ビューの作成」を押下します。

リソースフィルタを「指定したフィルターに一致するリソースのみを含める」にして、コピーしたクエリを貼り付けて、ビューを作成します。

こちらは任意ですが、作成したビューをデフォルトに設定しておくこともできます。

設定しない場合は、リソース画面を開いた後に、ビューを切り替えましょう。

6. 動作確認

ビューができたら、適当なリソースを作成したら表示されることを確認するなどして、動作確認をしましょう。
作成・削除直後はリソースが表示されない場合があるので、作成してから5分ほど空けてから確認してください。

今回はS3バケットを作成してみました。
S3バケットが表示されていることが確認できます。
(表示されているKMSキーは無視してください。)

注意点

  • 検索結果への反映まで5分程度かかります。
  • 全てのリソースに対応しているわけではないです。
    対応リソースはこちらを参照。
  • 個人利用向けの方法です。
    リソースを結構雑にフィルタリングしているため、実案件で利用する場合は適切なクエリを構築しましょう。

終わりに

APCはAWS Advanced Tier Services(アドバンストティアサービスパートナー)認定を受けております。

その中で私達クラウド事業部はAWSなどのクラウド技術を活用したSI/SESのご支援をしております。
www.ap-com.co.jp

https://www.ap-com.co.jp/service/utilize-aws/

また、一緒に働いていただける仲間も募集中です!
今年もまだまだ組織規模拡大中なので、ご興味持っていただけましたらぜひお声がけください。

www.ap-com.co.jp