BLOG

DoiT CloudFlowでAWS MAPタグ付けを簡素化する方法

Table of contents

AWSは、顧客のAWSへの移行を可能な限り円滑に進めるために、Migration Acceleration Program (MAP)を設計した。AWSのMAPプログラムでは、顧客はMAP AssessフェーズでTCO(Total Cost of Ownership)で計算されたARR(Annual Recurring Revenue)に基づき、下図のように一定の割合のクレジットとパートナーキャッシュを得ることができる。

Assessフェーズを通過すると、マイグレーションプロジェクトが開始され、AWSはこのMAPプロジェクトの一部である新しく起動されたすべてのリソースに適用されたCost Usage Tagを使用して支出を監視します。MAP タグは、Key: map-migrated Value: mig123456 という形式です。マイグレーション中の顧客は、AWS が設定する特定の使用量のしきい値に基づいて、クレジットとパートナ ーキャッシュを受け取る。AWSは、AWSのメカニズムを使用して、コスト使用タグ'map-migrated'を監視する。したがって、適切なタグ付けはMAPプロジェクトを成功させるためのバックボーンである。もし顧客が特定のリソースのタグを逃すと、クレジットやパートナーキャッシュも逃すことになる。

我々DoiTは、AWS認定MAPパートナーとして、顧客がこのMAPプログラムのメリットを100%享受するために、すべてのリソースにMAPタグを適用することを確認したいと考えている。DoiTはCloudFlowという製品を持っており、これはDoiT Cloud Intelligence FinOpsプラットフォームの一部であり、顧客がマイグレーションを開始する際に適切なタグ付けを実現するのに役立つ。

この記事では、EC2とRDSインスタンスのタグ付けを自動化する方法を紹介する。

前提条件

  • 管理者アクセスを持つAWSアカウント
  • EC2インスタンスが本日ローンチされた(※これはデモなので、コストを避けるために最小のインスタンスをローンチしてください)。
  • AWS CloudShellへのアクセス

1) DoiT CloudFlowに移動します:

2) Create CloudFlowをクリックします:

DoiTロゴの左上のテキストバーをクリックするだけで、CloudFlowに名前を付けることができます。CloudFlowには以下の2つのトリガー方法があります。このデモではManual Triggerを使用します:

手動トリガー:これを使用すると、CloudFlow Template on Demandを実行するタイミングを制御できます。

カスタムスケジュール:このCloudFlowを必要に応じて毎日、毎週、毎月実行するようにスケジュールできます。これはCron Jobの概念と同じです。

3) アクションを実行する:

ここで使用するロジックは、最近起動したすべてのEC2インスタンスを検索することだ。これを行うには、"Perform an action "オプションをクリックする。

DescribeInstances EC2 Action API Callを検索する。他のリソースではなく、EC2を選択していることを確認する。

DescribeInstances アクションの実行 API 呼び出し

DescribeInstancesボックスをクリックすると、設定メニューが開き、AWSアカウント番号とリージョンを選択する必要がある。インフラストラクチャの広い範囲に適用したい場合は、ドロップダウンに "All accounts" と "All regions" のオプションが用意されている。

いよいよパーミッションを設定します。CloudFlowはビルドのcliコマンドで非常に細かいパーミッションを提供するので、CloudFlowが持つリソースアクセスについて心配する必要はありません。

permissionタブで "Check for required permissions "をクリックすると、CloudFlowは "doitintl-cmp "という名前のロールを使用します(このロールはAWSアカウントをCloudFlowにアタッチするときに作成されます。)CloudFlowは、そのAPIコールを実行するために必要な権限をチェックし、それが利用できない場合、あなたのためにAWS cliコマンドを作成します。

このコマンドをコピーしてAWS CloudShellで実行すると、ほら -- IAMコンソールにアクセスして正しいjsonパーミッションやサービスなどを調べようとしなくても、必要なパーミッションが簡単に手に入る。コマンドを実行し、再度check permissionsをクリックすると、"All permissions are in place to run this action "というメッセージが表示される。

4) 今日の日付以降にローンチされたEC2を除外する:

今日の日付以降に起動されたEC2を除外する必要がある。AWS MAPのクレジットは遡及しないので、要するに、AWS MAP Opportunityの承認日以前に起動したAWSリソースはクレジットを取得できない。以下は、今日の日付以降に起動されたEC2を除外する方法です。Add additional parameters "をクリックし、"Filters "を選択する。

Add additional Filters 1 parameters "をクリックし、"Values "と "Name "を選択する。

名前フィールドに "launch-time "を追加し、今日の日付のワイルドカード "2025-03-12T*"を追加する。

5) マップ移行されたタグを作成する:

次に、ワークフローに戻って新しいステップを作成し、もう一度「Perform an new action」を選択し、AWS EC2の「Create Tags」を検索する。

タグの作成を選択した後、フィルターとしてInstanceIDを選択し、タグのリストで識別子としてKeyとValueの両方を選択する。

キーは最も重要な部分であり、一意であり、大文字と小文字を区別します。間違いやタイプミスがないことを確認してください。そうでなければ、AWSはタグの消費を確認することができず、今期のクレジットがゼロになってしまいます。

ここでは、キーは'mig1234'、値は'map-migrated'とする。

6) RDSインスタンスにタグを付ける

EC2 MAPワークロードのタグ付けに加えて、RDSワークロードにも同様の手順を作成できる。これを行うには、新しく起動したRDSインスタンスをフィルタリングするための「DescribeDBInstances」APIコールを使用する必要がある。

次に、新しいステップを作成し、今度は「Filter results」を選択する。

ステップを構成するには、データソース(前のステップの「DescribeDBInstances」)を選択し、MAP機会が承認された後(仮に3月17日午前9時)に作成されたものに対するフィルタを追加する必要があります。

これで完了です。あとは新しく作成したタグをRDSインスタンスに追加し、CloudFlowを実行するだけです。ワークフローに戻り、最後のAPIコールを追加します。今回はAmazon RDS用の'AddTagsToResource'という名前です。

このステップを設定するには、リソース名として前のフィルターステップの文字列を選択し、EC2インスタンス用に前のものと一致する別のキーとタグを追加する。

それが完了したら、CloudFlowを実行するためにPublishをクリックするだけだ。今日起動したEC2とRDSインスタンス、および今日以降に起動する他のワークロードにタグが追加されるのを確認できる。今日の日付以降にすべてのEC2とRDSインスタンスにマップマイグレーションされたタグが付けられるようにするには、CloudFlowを毎日実行するようにスケジュールすることもできる。

DoiT CloudFlowの詳細と、クラウド削減の提案を実際の成果につなげる方法については、今すぐDoiTの専門家にお問い合わせください

Schedule a call with our team

You will receive a calendar invite to the email address provided below for a 15-minute call with one of our team members to discuss your needs.

You will be presented with date and time options on the next step

JP form

This field is for validation purposes and should be left unchanged.