AWS Resource Explorer のアグリゲータインデックスを削除/降格させると次のアグリゲータインデックスの準備まで 24 時間待つ必要がある

アグリゲータを削除して作り直そうとすると 86,400 秒 待たされます。その間はローカルインデックスで耐え凌ぐ必要があります。

コンバンハ、千葉(幸)です。

先日、AWS Resource Explorer という新しいサービスを触ってみました。

はじめて触るので色々ガチャガチャやっていたら、元に戻すまでに 24 時間くらい待つ必要があった、という話をします。

AWS Resource Explorer のアグリゲータインデックス

AWS Resource Explorer は各リージョンのリソースを収集し、検索可能にします。

収集対象のリージョンを定義するためにインデックスというリソースを作成します。インデックスは「ローカル」「アグリゲータ」の2種類のタイプがあり、「アグリゲータ」タイプのインデックスは AWS アカウントでひとつのみ作成可能です。

各リージョンに存在するローカルインデックスは自身のリージョンのリソース情報を収集し、さらにアグリゲータインデックスにレプリケートします。

このようなイメージです。

RE_Terms_and_concepts_for_Resource_Explorer_-_AWS_Resource_Explorer

アグリゲータインデックスは自身のリージョンのリソース情報も収集しますので、まとめると以下の考え方になります。

  • アグリゲータインデックス
    • 自身を含めインデックスが作成されたリージョンすべてのリソースの情報を収集
  • ローカルインデックス
    • 自身が存在するリージョンのリソースのみを収集

インデックスは「ビュー」というリソースと組み合わせて使うことになり、それにより検索画面でどのリージョンのリソースが候補に現れるかを定義します。 *1

基本的にはすべてのリージョンの情報が見れるアグリゲータインデックスをビューに関連付けて使うことになるでしょう。

アグリゲータインデックスの削除・降格

アグリゲータインデックスはアカウントにひとつまでしか存在できないため、別のインデックスをアグリゲータにするためには削除もしくは降格(ローカルへ変更)させる必要があります。

そして、アグリゲータを削除/降格してから再度アグリゲータが「できる」までには 24時間の待機期間が必要です。

「アグリゲータができる」は以下のすべてのパターンを表します。

  • 降格させたアグリゲータを再度昇格させる
  • ローカルタイプの別のインデックスをアグリゲータに昇格させる
  • アグリゲータタイプのインデックスを新規作成する *2

これらについては以下ページに記載がありました。

After deleting or changing which Region contains the aggregator index, you must wait 24 hours before you can promote another index to be the aggregator index.

After you demote an aggregator index, you must wait 24 hours before you can promote either the same index or the index in a different Region to be the new aggregator index for the account.

戯れにアグリゲータインデックスのタイプをローカルに変更すると、それを戻すのに 24 時間かかるので気をつけてください。

アグリゲータインデックスのクールダウンタイムに引っかかってみた

ここまで見てきた事項をわたしは事前に確認していなかったので、この制約に引っかかることになりました。

とりあえず触ってみるかと一度 Resource Explorer をオンにしたのですが、急にやり直したくなったのですべてのインデックス・ビューを削除し、再度有効化を試みました。

RE_aggregater_Home___AWS_Resource_Explorer

セットアップ方法としては高速セットアップを選択し、アグリゲータインデックスを東京リージョンに作成するように指定しました。

ちなみに高速セットアップと高度なセットアップでは以下違いがあります。

高速セットアップ 高度なセットアップ
インデックス作成リージョン すべて 個別に選択も可能
アグリゲータインデックス 指定したリージョンに作成 作成有無から選択可能
デフォルトビュー アグリゲータのリージョンに作成 作成有無を選択可能

RE_aggregater_Index_setup

セットアップが開始されると、一部の工程でエラーが発生します。

Resource_Explorer_error

エラー - You can't update the index type until the 86400 seconds cool down period has expired.

各リージョンでのインデックスの作成、デフォルトビューの作成は成功していますが、東京リージョンのインデックスをアグリゲータに昇格するステップでエラーになっています。

アグリゲータインデックスがないとこんな風に困る

そもそもなぜアグリゲータが必要なのか?を見ていきます。

統合検索が有効にならない

「設定」ペインから各リージョンのインデックスを確認すると、東京リージョンもローカルタイプでインデックス作成されています。

「統合検索」機能を利用するためにはアグリゲータインデックスが存在し、そのリージョンでデフォルトのビューが設定されている必要があるので、条件を満たしていません。

Resource_Explorer_indexes

もちろんこの画面から「インデックスタイプの変更」を試みても、同じエラーメッセージが出て成功しません。

You can't update the index type until the 86400 seconds cool down period has expired.

ちなみに「統合検索」とは、マネジメントコンソール上部の検索バーに/resoucesと打った後にリソース名を入力することで検索ができる機能のことです。(わたしはまだ試せてない。。)

リソースの検索でビューが紐づくインデックスのローカルしか見れない

「リソースの検索」画面に移ると以下のようになっています。

RE_local_index_Resource_search___AWS_Resource_Explorer

高速セットアップにより、東京リージョンのインデックスに紐づくデフォルトビューが作成されています。東京リージョンのインデックスタイプは先ほど確認した通り「ローカル」なので、東京リージョンのリソースしか収集できていません。

アグリゲータなしで他のリージョンも検索したいとなった場合、以下の手順をとる必要があります。

  • 別のリージョンのインデックスに紐づくビューを作成する
  • 「リソースの検索」画面でビューを切り替える

↑これを見たいリージョン分 繰り返す必要があります。

アグリゲータがあればすべてのリージョンのリソースがまとめて見れるわけですから、その便利さが実感されます。

アグリゲータは無闇に触らないように

アグリゲータは一度削除/降格させると次のアグリゲータが準備できるまで 24 時間のクールダウンタイムが必要、という話でした。

各リージョンのインデックスがローカルの情報を収集、それをアグリゲータにレプリケート、という処理を裏で頑張ってくれているわけですから、それをホイホイ変更されては困る、ということかもしれません。

正直いまのところ「アグリゲータってどこのリージョンにあっても変わらなくない?」という気がしているので、削除/降格をする機会そのものが少ないと思っています。(特定のリージョンは収集対象から外したくなって、そのリージョンがアグリゲータになっていた、というケースくらいでしょうか。)

あまり用がなければいじらないのが良さそうです。

以上、 チバユキ (@batchicchi) がお送りしました。

参考

脚注

  1. マネジメントコンソールから AWS Resouce Explorer を操作する前提で喋っています。
  2. これも正確に言うと「ローカルタイプで作成→アグリゲータに昇格」をまとめて行っているだけなのでひとつ前のものと考え方は同じです。