LoginSignup
3
0

More than 1 year has passed since last update.

License Managerの新機能:EC2のライセンス変換を試してみた(SQL Server)

Last updated at Posted at 2022-03-25

2021/11にLicense Managerの新たな機能が追加されました。

Amazon EC2 での Windows Server および SQL Server アプリケーションの新しいライセンスタイプの切り替え機能を AWS が発表

この機能によって、EC2のBYOLライセンスをAWSのSPLAライセンスに簡単に切り替えることができます。
ということで、実際に試してみました。

Microsoftのライセンスについて

Windows ServerやWindowsの提供するデータベースサービスであるSQL Serverを使うにはライセンスと呼ばれるソフトウェアを使用する権利が必要になってきます。
ライセンスにはWebやStandard、Enterpriseなどの種類があり、使える機能や価格が異なります。
例:SQL Server 2019 の価格

SPLAとは??

ライセンスをAWSのようなクラウドサービスであったり、SaaSサービス向けに提供できるようにしたのがSPLA(Microsoft Services Provider License Agreement)です。
これによって、ユーザはライセンスを意識することなくWindowsのEC2インスタンスやSQLServerのライセンスが適用されたEC2、RDSを使うことができます。
image.png

参考:サービス プロバイダー様向けライセンス プログラム: SPLA

BYOLとは??

BYOL(Bring Your Own License)は、ライセンスの購入や、起動後のEC2インスタンスへのソフトウェアのインストールとライセンス適用を自分たちでやる方式のことを言います。
image.png

これによって自分たちで購入したライセンスを利用し、EC2インスタンスを安く利用することができたります。
ただし、Windowsライセンスは「ライセンスモビリティの有無」「ライセンスの購入 or 有効化のタイミング」の結果によってBYOLの可否や手法が分岐します。(多分以下のフローだと思います)

image.png

参考:AWS と Microsoft に関するよくある質問

ここら辺を無視してAWSにライセンスを持ち込んでしまうとライセンス規約違反となります。
賠償請求は発生することもあるようです。

ライセンス違反をした場合、ケースよって異なるものの何らかの法律に触れる可能性が高いです。
例えば著作権法違反に該当する場合、個人に対して懲役5年以下または罰金500万円以下、
黙認や放置した企業に対しては罰金3億円以下が科されてしまいます。

参照:ソフトウェアのライセンス違反のリスクとは?防止策としてのライセンス管理について

やること

SQLServer 2012 のStandard エディションのBYOLライセンスをSPLAライセンスに変換します。

※ BYOLのStandard → SPLAのWebやEnterpriseといったエディション違いの変換は対応していないみたいです。

The usage operation RunInstances:0100 does not match the edition of SQL Server installed on EC2 instance i-xxxxxxxxx

image.png

前提

以下の前提条件を満たしているか確認してください。
ライセンス変換の前提条件

また、AWS Systems Managerのインベントリという機能を使用します。
SSMの前提条件を満たしているか確認してください。
Systems Manager の前提条件
インベントリ収集の設定

SQL Server 2012のStandardは自前で用意しました。
使用オペレーションの「RunInstances:0800」というのはWindows Server BYOLを指します。
参考:ライセンスタイプ変換の対象となるライセンスタイプ
image.png

ライセンスの変換

AWS Systems Manager インベントリのセットアップ

SytemManagerのコンソールから[イベントリ] → [セットアップインベントリ]をクリック
image.png

対象のライセンス変換対象のインスタンスを指定
image.png

※ここで対象のインスタンスが現れない場合、インスタンスに「AmazonSSMManagedInstanceCore」のポリシーが付与されたIAMロールがアタッチされているか確認してください。

下までスクロールし[セットアップインベントリ]をクリック
image.png

[設定]をクリックし、ステータスが「保留中」となっていることを確認し、待機
image.png

ステータスが「成功」になりました。
これでインベントリの設定はおしまいです。

image.png

ここで失敗し、下記のようなエラーが出た場合は対象インスタンスのPowershellのバージョンを確認してください。
SystemManagersのインベントリ機能はPowershell3.0以上が必要となります。

The operation collectSoftwareInventoryItems failed because Encountered error while executing AWS:WindowsUpdate.

参考:インベントリ収集の設定

ライセンスタイプの変換タスク

まず、変換対象のEC2を停止します。
EC2を停止しないと次の「ライセンスタイプ変換タスクを作成」の際に対象のインスタンスが出現しません。

License Managerのコンソールから[ライセンスタイプ変換タスク]→[ライセンスタイプ変換タスクを作成]をクリック
image.png

対象のインスタンスを選択し、[次へ]をクリック
image.png

変換したいライセンスタイプを選択し、[次へ]をクリック。(今回はStandardへの変換なので「RunInstances:0006」)
image.png

設定を確認し[変換を開始]をクリック
image.png

ここで以下のエラーが発生した場合、インスタンスタイプを確認してください。
ライセンスタイプの変換は4 vCPU以上が必要となってくるため、インスタンスのサイズを上げる必要があります。

An instance must have a minimum of 4 vCPUs in order to run License Included SQL Server.

なお、停止中のインスタンスのタイプを変更するだけで大丈夫です。(一度インスタンスを起動する必要はない)

ライセンスの変換が開始されました。
(このタスクの実行中は一時的にインスタンスが起動されるようです。)
image.png

さいごに

「Powershellのバージョンが古い」「IAMロールをつけ忘れる」などのトラブルに見舞われました。
本機能を利用する場面は少ないと思いますが、この記事が今後の参考になれば幸いです。

参考

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0