License ManagerでSSMインベントリからソフトウェアライセンスを検出してみた #reinvent

コンニチハ、千葉です。

License Managerにアップデートがありました。今までは、特定のAMIに対し起動できるCPUコア数を指定することで、起動できるインスタンスタイプを制限できました。

[新サービス]AWS License Manager – ソフトウェアのライセンス管理とルールの強制が可能に – #reinvent

今回のアップデートで、ライセンス構成に登録した製品情報を元に、指定した製品をインストールしているインスタンスを自動検出できるようになりました。

[速報] License ManagerでDedicated Hostsの管理と既存のソフトウェアを自動検出できるようになりました #reinvent

https://aws.amazon.com/jp/about-aws/whats-new/2019/12/aws-license-manager-allows-administrators-to-automate-discovery-of-existing-software-licenses/

やってみた

やってみたのサマリです。

  1. SSMが有効になるようにAmazonLinuxを起動し、SSMのインベントリを収集
  2. ライセンス構成を作成
  3. ライセンス構成へ、起動したAmazonLinuxを製品として登録
  4. 新規でAmazonLinuxを起動し、自動で検出されるかを確認

まずは、SSMを利用しEC2上のインベントリを収集します。今回は、Amazon Linux2を起動し、AmazonEC2RoleforSSMをアタッチ起動します。License Managerのインベントリ検索を確認すると以下のように表示されます。起動したEC2がインベントリに追加されているのが確認できます。

次に、ライセンス構成amazonlinuxを作成します。

作成したライセンス構成amazonlinuxに、インベントリから製品として登録します。

これで、製品の登録が完了しました。新規でAmazonLinuxを起動し、自動で検出されるかを確認してみます。

新規で起動したEC2が検出され、ライセンス違反として表示されました!

検知した対象のインスタンスも確認できました。

最後に

License Managerがアップデートされ、AMIをベースにした検知に加え、SSMのインベントリをベースとした検知も可能になりました。便利だと思います!

参考

https://docs.aws.amazon.com/license-manager/latest/userguide/automated-discovery.html