Amazon WorkSpaces Cost Optimizer バージョン 2.4.1 がリリースされました

記事タイトルとURLをコピーする

営業部 佐竹です。
本日は、Amazon WorkSpaces Cost Optimizer バージョン 2.4.1 の動作検証を完了しましたので、そのご報告となります。

はじめに

Amazon WorkSpaces Cost Optimizer は WorkSpace のコストを削減するのに非常に強力な、AWS が公式提供するソリューションです。弊社では、以前にも本ブログ内でご紹介しておりました。

blog.serverworks.co.jp

バージョン 2.4 リリース

以下の公式ページの通り、2021年10月4日に Amazon WorkSpaces Cost Optimizer のバージョン 2.4 がリリースされました。

aws.amazon.com

それを受け、弊社ではすぐに機能検証を行いました。その結果、新機能が追加されたものの本バージョンには「WorkSpaceが26台以上存在するディレクトリにおいて、25台までの処理結果しか出力されない」という不具合が存在していることがわかりました。

これを AWS へフィードバックを行い、すぐに不具合を修正してもらいました。結果として、その修正版が v2.4.1 となりリリースされております。

よって、本ブログでは v2.4 で追加された新機能をご紹介しますが、動作確認は v.2.4.1 で行っております。

バージョン 2.4 での新機能

GitHub における Amazon WorkSpaces Cost Optimizer の CHANGELOG.md は以下になります。

github.com

CHANGELOG によりますと、以下の4つが追加された機能になります。

  1. Feature to terminate unused workspaces
  2. Generate aggregated reports
  3. Feature to specify AWS Regions to monitor
  4. Support for Gov cloud partition

上記の4つの追加機能のうち、1~3をそれぞれ詳しくご説明します。4つ目は Gov cloud の機能のため、今回は解説しません。

未使用 WorkSpace の削除機能

以前リリースされた Amazon WorkSpaces Cost Optimizer v2.3 において、結果 CSV にカラムが追加されました。そしてその1つ前の v2.2.1 (初期リリースバージョン)では、以下の7つのカラムが存在していました。

  • WorkspaceID
  • Billable Hours
  • Usage Threshold
  • Change Reported
  • Bundle Type
  • Initial Mode
  • New Mode

これらに加えて、v2.4.1 では最終的に 5 つのカラムが増えました。

  • Username
  • Computer Name
  • DirectoryId
  • WorkspaceTerminated
  • Tags

このうち「WorkspaceTerminated」は月末のみ動作する処理とその結果であり、その月の WorkSpace 稼働時間が「0」の場合に、対象 WorkSpace を削除するという動作の処理結果を提示します。

f:id:swx-satake:20211109152027p:plain

実際に10月末に動作させた Amazon WorkSpaces Cost Optimizer の結果 CSV は上画像の通りです。

Yes - Dry Run という値が見えますが、これはその月の稼働時間(Billable Hours)が 0 であった WorkSpace を削除しようとしたものの、「Dry Run」モードであったためにスキップした結果が表示されております。

f:id:swx-satake:20211109152212p:plain
WorkSpace の削除は Dry Run とすることが可能

これを Dry Run とするかどうかは、CloudFormation のテンプレートを実行するタイミングで指定が可能です。上画像の最下部にその指定があります。

注意事項

注意事項として、費用を鑑みると「WorkSpace の削除はその月内に実行する必要がある」というのがポイントです。

話をシンプルにするために AlwaysOn の WorkSpace でご説明しますと「WorkSpace の月額利用料」は月初1日の 0:00 UTC から1か月間です。そのため、日本時間では月初 8:59:59 JST (AM) が削除リミットになります。1秒でも過ぎると翌月の月額利用料が1か月分発生し、発生直後に WorkSpace を削除するという残念な結果になります

Amazon WorkSpaces Cost Optimizer の削除処理で WorkSpace を削除したい場合、その処理実行時間が 9:00 JST を回らないように EventBridge の実行時間を設定してください。こう記載する背景というのは、Amazon WorkSpaces Cost Optimizer の処理時間は非常に重くなってしまいました

どのくらい重くなったかというと、v2.2.1 では1,300台程度の処理が月末でも30分以内で完了していたものが、v2.4.1 では2時間以上かかるようになりました。特に月末に近づくほど処理時間が比例して長くなってしまう仕様のため、月初の処理時間をあまり信用しないでください。

これはつまり、台数にもよりますが、千数百台の WorkSpace を管理しているような環境では、EventBridge で Amazon WorkSpaces Cost Optimizer の Lambda をキックする時間を、7:00 JSTより前にする必要があるということです。テンプレートが指定しているデフォルトの値は 23:00 UTC となっていますが、処理が1時間で終わるかどうか十分に確認してください。

全ディレクトリの結果を集約したレポート作成機能

これまで、Amazon WorkSpaces Cost Optimizer はその結果 CSV を S3 へと出力するときに、ディレクトリごとに別の CSV として出力していました。これをマージして1つのファイルにするのに少し手間がかかっていたのですが、これが集約された CSV が出力されるようになりました。

ファイル名は aggregated_dry-run_end-of-month.csv という名称となっており、これには全ディレクトリの結果がサマリーされています。

f:id:swx-satake:20211109153549p:plain
aggregated_dry-run_end-of-month.csv

毎月結果 CSV をマージしていた身としては、この機能は非常に便利だなと感じています。

リージョン指定が可能となる機能

これまで、Amazon WorkSpaces Cost Optimizer は実行するリージョンが指定できず、全リージョンの WorkSpace を探しに行っていました。

今回、CloudFormation のテンプレートにてリージョン指定が可能となりました。

f:id:swx-satake:20211109153818p:plain

これにより、東京リージョンだけでの実行が可能となりました。これも対象を絞るために良い機能と感じます。

未使用 WorkSpace の削除機能はディレクトリを指定できない

先に未使用 WorkSpace の削除機能については、その処理時間について注意を記載しましたが、もう1つ注意すべきことがあります。

それは、「WorkSpace の削除を実行する WorkSpace ディレクトリは指定できない」という点です。つまり、削除処理を有効化すると、指定されたリージョンの全 WorkSpace が対象となってしまいます。

特定のディレクトリだけを除外するようなことはできませんので、オンオフ(有効 or Dry Run)はリージョン単位で有効だという点に注意してください。

まとめ

本日は、Amazon WorkSpaces Cost Optimizer バージョン 2.4.1 の動作検証を行った結果をお伝えさせて頂きました。

主に以下の3つの機能が追加されており、それぞれメリットのある機能だと確認できました。

  1. 未使用 WorkSpace の削除機能
  2. 全ディレクトリの結果を集約したレポート作成機能
  3. リージョン指定が可能となる機能

また、特に削除機能においては以下の2つを注意事項として記載しました。

  • WorkSpace の台数によっては処理時間が長くかかることで、削除処理が月末を超えてしまう可能性があること
  • 特定のディレクトリだけを実行対象とできないこと

以上で Amazon WorkSpaces Cost Optimizer バージョン 2.4.1 の紹介を終わりたいと思います。

では、またお会いしましょう。

佐竹 陽一 (Yoichi Satake) エンジニアブログの記事一覧はコチラ

営業部カスタマーサクセス課所属。AWS資格12冠。2010年1月からAWSを利用してきました。2021 Japan APN Ambassador /2020-2021 APN ALL AWS Certifications Engineer。AWSのコスト削減、最適化を得意としています。