

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# を使用したコンテナ製品の契約料金 AWS License Manager
<a name="container-license-manager-integration"></a>

契約料金のコンテナベースの製品の場合、 を使用してライセンス AWS License Manager を製品に関連付けることができます。 AWS License Manager は、顧客が購入したライセンス (使用権限とも呼ばれます) をアプリケーションが追跡および更新できるようにするライセンス管理ツールです。このセクションでは、製品を と統合する方法について説明します AWS License Manager。統合が完了したら、 AWS Marketplaceに製品リストを公開できます。

License Manager を Amazon EKS AnywhereAmazon ECS Anywhere、またはオンプレミスインフラストラクチャ AWS Marketplace 用の Containers Anywhere 製品用の と統合する場合は、「」の手順に従います[AWS Marketplace for Containers Anywhere と License Manager の統合](container-anywhere-license-manager-integration.md)。Amazon EC2

詳細については AWS License Manager、[AWS License Manager 「 ユーザーガイド](https://docs.aws.amazon.com/license-manager/latest/userguide/license-manager.html)」および*AWS CLI 「 コマンドリファレンス*」の[AWS License Manager](https://docs.aws.amazon.com/cli/latest/reference/license-manager/index.html)「」セクションを参照してください。

コンテナ製品 AWS License Manager と契約料金との統合の詳細については、*AWS Marketplace 販売者ワークショップ*の「前払い[支払いラボとの統合](https://catalog.workshops.aws/mpseller/en-US/container/integrate-contract)」を参照してください。

**Topics**
+ [コンテナ製品の契約料金](#container-contracts)
+ [ライセンスモデル](#container-LM-license-models)
+ [AWS License Manager 統合の前提条件](#container-LM-prereqs)
+ [コンテナ製品と License Manager の統合](#container-integrate-with-LM)
+ [License Manager API オペレーション](#container-LM-API-calls)
+ [ライセンスの更新とアップグレード](#container-LM-lic-renew-upgrade)
+ [AWS Marketplace for Containers Anywhere と License Manager の統合](container-anywhere-license-manager-integration.md)

## コンテナ製品の契約料金
<a name="container-contracts"></a>

契約料金のコンテナベースの製品の場合、 は、お客様とお客様の間の契約に基づいて、事前に、またはお客様が定義した支払いスケジュールに従って顧客に AWS Marketplace 請求します。その時点で、それらのリソースの使用権限が付与されます。

料金を設定するには、顧客に提供する 1 つ以上の契約期間を選択します。契約期間ごとに異なる価格を入力できます。契約期間は 1 か月、12 か月、24 か月、36 か月です。プライベートオファーでは、カスタム期間を月単位で指定できます (最大 144 か月）。

製品の価格を最もよく表すカテゴリを選択します。料金カテゴリは、 AWS Marketplace ウェブサイトに表示されます。**[帯域幅]** (GB/s、MB/s)、**[データ]** (GB、MB、TB)、**[ホスト]**、**[リクエスト]**、**[階層]**、**[ユーザー]** のいずれかを選択できます。事前定義カテゴリのどれもニーズに適合しない場合は、汎用的な **[単位]** カテゴリを選択できます。

このオファーには最大 24 のディメンションを追加できます。


**例: データストレージアプリケーション**  

|   | 1 か月料金 | 12 か月料金  | 24 か月料金  | P36-month price  | 
| --- | --- | --- | --- | --- | 
|  暗号化されていないデータ (GB)  |  1.50 USD/GB  |  16.00 USD/GB  |  30.00 USD/GB  |  60.00 USD/GB  | 
|  暗号化されているデータ (GB)  |  1.55 USD/GB  |  16.60 USD/GB  |  31.20 USD/GB  |  61.20 USD/GB  | 


**例: ログモニタリング製品**  

|   | 1 か月料金 | 12 か月料金  | 24 か月料金 | 36 か月料金 | 
| --- | --- | --- | --- | --- | 
|  Basic (10 ホストのモニタリング、5 コンテナのモニタリング)  |  100 USD  |  1,000 USD  | 2,000 USD  | 4000 USD | 
|  Standard (20 ホストのモニタリング、10 コンテナのモニタリング)  |  200 USD  |  2,000 USD  | 4000 USD  | 8,000 USD | 
|  Pro (40 ホストのモニタリング、20 コンテナのモニタリング)  |  400 USD  |  4000 USD  | 8,000 USD  | 16,000 USD | 
|  1 時間あたりのモニタリング対象追加ホスト  | 10 USD  | 100 USD  |  $200 | 400 USD | 
|  1 時間あたりのモニタリング対象追加コンテナ  | 10 USD  | 100 USD  |  $200 | 400 USD | 

**注記**  
価格は、1 か月、12 か月、24 か月、36 か月の期間に対して定義できます。製品にこれらのオプションを 1 つ以上提供することができます。期間は各ディメンション間で同じである必要があります。  

**Example**  
例えば、`ReadOnlyUsers` ディメンションと `AdminUsers` ディメンションがある場合、ReadOnlyUsers に年間料金を提供する場合は、`AdminUsers` の年間料金も提供する必要があります。


### 自動更新
<a name="ami-contracts-automatic-renewals"></a>

 顧客は、コンテナ契約 AWS Marketplace を使用して を通じて製品を購入すると、契約条件を自動的に更新することに同意できます。顧客は 1 年、2 年、または 3 年の期間中に、使用権限に対して毎月支払い続けます。

お客様はいつでも更新の設定を変更できます。詳細については、「AWS Marketplace 購入者ガイド」の「[既存の契約の変更](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-container-contracts.html#modify-existing-contract)」を参照してください。**

## ライセンスモデル
<a name="container-LM-license-models"></a>

AWS Marketplace と の統合では、次の 2 つのライセンスモデル AWS License Manager がサポートされています。
+ [設定可能なライセンスモデル](#container-LM-config-lic-model)
+ [階層型ライセンスモデル](#container-LM-tiered-lic-model)

### 設定可能なライセンスモデル
<a name="container-LM-config-lic-model"></a>

設定可能なライセンスモデル (定量化可能なライセンスモデルとも呼ばれます) では、購入者がライセンスを調達した後に、特定の量のリソースを購入者に付与できます。

料金設定ディメンションと単価を設定します。次に、購入者は購入するリソースの数量を選択できます。

**Example 料金ディメンションと単価の**  
料金設定ディメンション (データバックアップなど) と単価 (1 ユニットあたり 30 USD など) を設定できます。  
購入者は 5 単位、10 単位、または 20 単位の購入を選択できます。  
製品は使用状況を追跡して測定し、消費されたリソースの量を測定します。

設定モデルでは、使用権限は次の 2 つのいずれかにカウントされます。
+ [ドローダウンライセンス](#container-floating-lic)
+ [フローティングライセンス](#container-floating-lic) 

#### ドローダウンライセンス
<a name="container-drawndown-lic"></a>

 ライセンスは、使用時に許可されたライセンス数のプールから引き出されます。その使用権限は永久にチェックアウトされ、ライセンスプールに戻すことはできません。

**Example 限られた量のデータを処理する**  
ユーザーには 500 GB のデータを処理する権限があります。ユーザーがデータを処理し続けると、500 GB のライセンスがすべて消費されるまで 500 GB のプールからデータが引き出されます。

ドローダウンライセンスの場合は、`CheckoutLicense` API オペレーションを使用して、消費されたライセンスユニット (使用権限) を確認できます。

**Example Amazon S3 へのバックアップの年間単位数**  
Amazon Simple Storage Service (Amazon S3) に、1 年間最大 1,024 単位のデータをバックアップできるストレージ製品があります。アプリケーションは、複数の Amazon EC2 インスタンスを使用して起動できます。アプリケーションには、データを追跡して集約するメカニズムがあります。ソフトウェアは、バックアップのたびに、または一定の間隔で、製品 ID を使用して　`CheckoutLicense` API オペレーションを呼び出し、消費量を更新します。  
この例では、ソフトウェアが `CheckoutLicense` API オペレーションを呼び出して 10 単位のデータをチェックアウトします。合計容量が顧客が購入したバックアップ制限に達すると、API コールは失敗します。

**リクエスト**

```
linux-machine ~]$ aws license-manager checkout-license\
--product-sku "2205b290-19e6-4c76-9eea-377d6bf7la47" \
--checkout-type "PERPETUAL" \
--key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \
--entitlements "Name=DataConsumption, Value=l0, Unit=Count" \
--client-token "AKIAIOSFODNN7EXAMPLE"
```

**レスポンス**

```
{"CheckoutType": "PERPETUAL",
"EntitlementsAllowed": [{
"Name": "IntermediateTier",
"Units": "None"
}],
"Expiration": "2021-04-22Tl9:02:36",
"IssuedAt": "2021-04-22Tl8:02:36",
"LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...",
"LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE"
}
```

#### フローティングライセンス
<a name="container-floating-lic"></a>

 ライセンスは、使用後に許可されたライセンス数のプールに返却されます。

フローティングライセンスの場合、アプリケーションはリソースが使用されているときに `CheckoutLicense` API オペレーションを使用して使用権限プールから使用権限をチェックアウトします。`CheckoutLicense` API オペレーションのレスポンスには、チェックアウト時の一意の識別子であるライセンス消費トークンが含まれます。ライセンス消費トークンを使用して、チェックアウトした使用権限をライセンスに戻したり、チェックアウトを延長したりするなど、追加のアクションを実行できます。

使用権限をプールに戻すには、リソースが使用されなくなった時に `CheckInLicense` API オペレーションを使用します。

```
aws license-manager check-in-license --license-consumption-token "f1603b3c1f574b7284db84..."
```

使用権限のチェックインに失敗した場合 (アプリケーションがクラッシュした場合)、使用権限は 60 分後に自動的にプールにチェックインされます。リソースが 60 分以上使用されている場合は、リソースが使用されている限り `ExtendLicenseConsumption` API オペレーションを使用して使用権限をプールからチェックアウトしたままにしておくことがベストプラクティスです。

```
aws license-manager extend-license-consumption --license-consumption-token "f1603b3c1f574b7284..."
```

**Example 固定された上限を超えるユーザー数**  
1 人のユーザーには、アプリケーションで 500 人の同時ユーザーを割り当てることができます。ユーザーがログインしてログアウトすると、そのユーザーは引き出され、500 人のユーザープールに戻ります。ただし、500 人の同時ユーザーが固定の上限であるため、アプリケーションはプールから 500 人を超えるユーザーを引き出すことはできません。

フローティング使用権限の場合は、`CheckInLicense` API オペレーションを使用してライセンス単位を使用権限プールに戻すことができます。

**Example 1 年間の同時ユーザー数**  
製品の料金は、同時接続ユーザー数に基づいて決定されます。顧客は 10 ユーザー分のライセンスを 1 年間購入します。顧客は AWS Identity and Access Management (IAM) アクセス許可を与えてソフトウェアを起動します。ユーザーがログインすると、アプリケーションが `CheckoutLicense` API オペレーションを呼び出して数量を 1 つ減らします。ユーザーがログアウトすると、アプリケーションは `CheckInLicense` API オペレーションを呼び出してそのライセンスをプールに返します。`CheckInLicense` を呼び出さない場合、ライセンス単位は 1 時間後に自動的にチェックインされます。

**注記**  
次のリクエストでは、`key-fingerprint` はプレースホルダー値ではなく、すべてのライセンスが公開されるフィンガープリントの実際の値です。

**リクエスト**

```
aws license-manager checkout-license\
--product-sku "2205b290-19e6-4c76-9eea-377d6bf7la47" \
--checkout-type "PROVISIONAL" \
--key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \
--entitlements "Name=ReadOnlyUSers, Value=l0, Unit=Count" \
--client-token "AKIAIOSFODNN7EXAMPLE"
```

**レスポンス**

```
{
  "CheckoutType": "PROVISIONAL",
  "EntitlementsAllowed": [
    {
      "Name": "ReadOnlyUsers", 
      "Count": 10,
      "Units": "Count",
      "Value": "Enabled"
    }
},
  "Expiration": "2021-04-22Tl9:02: 36",
  "IssuedAt": "2021-04-22Tl8:02:36",
  "LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...",
  "LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE"
}
```

### 階層型ライセンスモデル
<a name="container-LM-tiered-lic-model"></a>

階層型ライセンスモデルでは、購入者がライセンスを調達した後に、特定のレベル (階層) のアプリケーション機能を利用できるようになります。

製品には、ベーシック、中級、プレミアムなどの階層を作成します。次に、購入者はあらかじめ定義されている階層の 1 つを選択します。

アプリケーションはアプリケーションの使用状況を追跡したり、測定する必要はありません。

階層型ライセンスモデルでは、使用権限はカウントされず、代わりに顧客が購入したサービスの階層が示されます。

バンドルされた機能を一緒に提供する場合は、階層化するのが望ましいです。

**Example ベーシック、中級、プレミアムの各レベル**  
お客様は、ソフトウェアの 3 つのレベル (ベーシック、中級、プレミアム) のいずれかの契約に署名できます。これらの階層にはそれぞれ独自の料金設定があります。`CheckoutLicense` API オペレーションを呼び出し、リクエストで可能なすべての階層を指定して、ソフトウェアが顧客がサインアップした階層を特定できます。  
リクエストのレスポンスには、顧客が調達した階層に対応する使用権限が含まれています。この情報に基づいて、ソフトウェアは適切なカスタマーエクスペリエンスを提供できます。

#### リクエスト
<a name="container-LM-tiered-request"></a>

```
linux-machine  ~]$ aws  license-manager   checkout-license\
--product-sku  "2205b290-19e6-4c76-9eea-377d6bf7la47"  \
--checkout-type  "PROVISIONAL"  \
--key-fingerprint  "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \
--entitlements  "Name=BasicTier,  Unit=None"   "Name=IntermediateTier,  Unit=None"	\ "Name=PremiumTier, Unit=None"
```

#### レスポンス
<a name="container-LM-tiered-response"></a>

```
{
  "CheckoutType": "PROVISIONAL",
  "EntitlementsAllowed": [
    {
      "Name": "IntermediateTier", 
      "Units": "None"
    }
},
  "Expiration": "2021-04-22Tl9:02:36",
  "IssuedAt": "2021-04-22Tl8:02:36",
  "LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...",
  "LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE"
}
```

## AWS License Manager 統合の前提条件
<a name="container-LM-prereqs"></a>

製品を公開する前に、次を行う必要があります。

1. で新しいコンテナ製品を作成し AWS Marketplace 管理ポータル、その製品コードを書き留めます。

   詳細については、「[概要: コンテナ製品を作成する](container-product-getting-started.md#create-container-product)」を参照してください。

1. `CheckoutLicense`、`ExtendLicenseConsumption`、`CheckInLicense` API オペレーションを呼び出すために必要な IAM アクセス許可を持つアプリケーションを実行するタスクまたはポッドの IAM ロールを使用します。

   必要な IAM アクセス許可の詳細は、次の IAM ポリシーに記載されています。

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Sid":"VisualEditorO",
            "Effect":"Allow",
            "Action":[
               "license-manager:CheckoutLicense",
               "license-manager:GetLicense",
               "license-manager:CheckInLicense",
               "license-manager:ExtendLicenseConsumption",
               "license-manager:ListReceivedLicenses"
            ],
            "Resource":"*"
         }
      ]
   }
   ```

------

1. 定義したすべての料金ディメンションのレコードを使用して、`RegisterUsage` API オペレーションをテストコールします。

## コンテナ製品と License Manager の統合
<a name="container-integrate-with-LM"></a>

**コンテナベースの製品を License Manager と統合するには**

1. License Manager を呼び出すための IAM アクセス許可を設定します。詳細については、「[AWS License Manager 統合の前提条件](#container-LM-prereqs)」を参照してください。

1.  AWS SDK をダウンロードします。
**注記**  
ソフトウェア内で AWS 認証情報を設定しないでください。購入者の AWS 認証情報は、コンテナが Amazon EC2 インスタンス、Amazon ECS タスク、または Amazon EKS ポッド内で実行されているときに、実行時に自動的に取得されます。

1. ライセンスチェックを製品に追加します。

   ライセンスチェックを実行する必要がある場所ならどこでも、製品が `CheckoutLicense` API オペレーションを呼び出すことができます。ライセンスを確認するには、製品が以下を認識している必要があります。

   1. ライセンスの信頼できる発行者 (AWS Marketplace)

   1. アプリケーションの製品 SKU (製品 ID)

   1. このアプリケーションを確認する使用権限。

   API コールは、設定した料金ライセンスの種類によって異なります。

1. 製品リストを公開します AWS Marketplace。

## License Manager API オペレーション
<a name="container-LM-API-calls"></a>

顧客のライセンスマネージャーアカウントに保存されているライセンスを管理するために、ソフトウェアは次の API オペレーションを使用できます。
+ `GetLicense` - ソフトウェアがクエリできる API。購入したライセンスのステータス (有効期限が切れた、または間もなく期限切れになる) を取得し、ステータス通知を顧客に送信します。
+ `CheckoutLicense` - ユーザーが購入したライセンスを検出します。ユーザーがいくらかのライセンスを消費した時に、`CheckoutLicense` API オペレーションを使用してライセンス数量を更新することもできます。`CheckoutLicense` を使用すると、顧客が使用したライセンス数を常に確認することができます。顧客がすべてのライセンスを使い果たすと、この呼び出しはエラーを返します。`CheckoutLicense` を実行するための推奨ケイデンスについては、「[ライセンスの更新とアップグレード](#container-LM-lic-renew-upgrade)」を参照してください。
+ `ExtendLicenseConsumption` - フローティングディメンションの場合、ソフトウェアがライセンスをチェックアウトすると、60 分後にライセンスは自動的にプールに戻ります。ライセンスがチェックアウトされたままの期間を延長する場合は、`ExtendLicenseConsumption` API オペレーションを使用してライセンスをさらに 60 分間延長します。
+ `CheckInLicense` - フローティングディメンションの場合、ライセンスを使用権限プールに戻す場合は、`CheckInLicense` API オペレーションを使用してください。
+ `ListReceivedLicenses` API - 購入者が購入したライセンスを一覧表示します。

## ライセンスの更新とアップグレード
<a name="container-LM-lic-renew-upgrade"></a>

顧客は AWS Marketplace 管理ポータルでライセンスを更新またはアップグレードできます。追加購入を行うと、 は新しい使用権限を反映する新しいバージョンのライセンス AWS Marketplace を生成します。ソフトウェアは同じ API オペレーションを使用して新しい使用権限を読み取ります。License Manager の統合に関しては、更新やアップグレードを処理するために特別なことをする必要はありません。

ライセンスの更新、アップグレード、キャンセルなどが発生するため、製品の使用中は定期的に `CheckoutLicense` API オペレーションを呼び出すことをお勧めします。`CheckoutLicense` API オペレーションを定期的に使用して、製品はアップグレードや有効期限などの使用権限の変更を検出できます。

`CheckoutLicense` API コールは 15 分ごとに実行することをお勧めします。