概要
Amazon WorkSpaces のコスト・オプティマイザーは、Amazon WorkSpaces のすべての使用状況データを分析し、個々の使用状況に応じて、WorkSpace を最も費用対効果の高い課金オプション (時間単位または月単位) に自動的に変換します。この AWS ソリューションは、単一のアカウントで使用することも、複数のアカウントにまたがる AWS Organizations で使用することもでき、WorkSpace の使用状況をモニタリングしてコストを最適化するのに役立ちます。
このソリューションでは、1日1回、GMT の真夜中直前に、1時間ごとの WorkSpace 使用量を計算します。WorkSpace が時間ごとの使用量のしきい値を超えると、ソリューションは WorkSpace を毎時から毎月の請求に転換します。毎晩の計算後に使用量がしきい値を超えた場合、翌日の使用量が計算されるまで WorkSpace は転換されません。
課金モデルは、WorkSpaces コンソールを使用していつでも手動で変更できます。各 WorkSpaces が毎時から毎月の請求に転換するときのしきい値を変更する場合、ソリューションの AWS CloudFormation テンプレートには、そのような転換を実行するパラメータが含まれています。詳細については、実装ガイドの「請求モデルの変換」を参照してください。
メリット
個々の使用状況に応じて、WorkSpaces を最も費用対効果の高い課金オプション (時間単位または月単位) に自動的に変換します。 必要に応じて、リソースタグを個々の WorkSpaces に適用して、自動変換から除外することができます。
AWS CloudFormation を使用して、個々の WorkSpaces を変換するために必要な AWS のサービスを自動的にプロビジョニングおよび設定することにより、WorkSpace の使用状況をモニタリングし、コストを最適化します。
AWS Well-Architected フレームワーク手法で開発された CloudFormation テンプレートを使用して、安全なワンクリックデプロイメントを提供します。
技術的な詳細情報
このアーキテクチャは、実装ガイド と関連するAWS CloudFormation テンプレートを使用して自動的にデプロイできます。
ステップ 1
スポークテンプレートは、AWS Lambda 関数を呼び出して、ハブアカウントの Amazon DynamoDB テーブルにアカウントをスポークアカウントとして登録するカスタムリソースを作成します。
ステップ 2
ハブテンプレートは、24 時間ごとに Amazon Elastic Container Service (Amazon ECS) タスクを呼び出す Amazon EventBridge ルールを作成します。
ステップ 3
Amazon ECSタスクは、Amazon WorkSpacesを管理するために、各スポークアカウントにAWS Identity and Access Management (IAM) ロールを想定しています。
ステップ 4a
Amazon ECSタスクは、AWS Directory Serviceにポーリングして、特定の AWS リージョンでWorkSpacesに登録されているすべてのディレクトリのリストを収集します。
ステップ 4b
次にタスクは、時間課金モデルである各 WorkSpaceの合計使用量をチェックします。WorkSpaceが月間使用量のしきい値を満たしている場合、このソリューションは個々の WorkSpaceを毎月の請求に変換します。
ステップ 4c
月末に、タスクは毎月の請求モデルの各 WorkSpaceの合計使用量をチェックします。WorkSpaceが月間使用量のしきい値を満たしていない場合、ソリューションは、次の月の初めに個々のWorkSpaceを月次課金から時間課金に変換します。
ステップ 5
Amazon ECS タスクが実行の結果を DynamoDB の使用量テーブルとセッションテーブルに書き込み、それらを Amazon Simple Cloud Storage (Amazon S3) バケットにアップロードします。