使用 的容器產品的合約定價 AWS License Manager - AWS Marketplace

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 的容器產品的合約定價 AWS License Manager

對於具有合約定價的容器型產品,您可以使用 AWS License Manager 將授權與產品建立關聯。 AWS License Manager 是一種授權管理工具,可讓您的應用程式追蹤和更新客戶購買的授權 (也稱為權利)。本節提供如何將產品與 整合的相關資訊 AWS License Manager。整合完成後,您可以在其上發佈您的產品清單 AWS Marketplace。

如果您要將 License Manager 與適用於 Amazon EKS Anywhere、Amazon ECS Anywhere、Amazon Elastic Compute Cloud (Amazon EC2) 或內部部署基礎設施 AWS Marketplace 的 for Containers Anywhere 產品整合,請遵循 中的指示將 AWS Marketplace for Containers Anywhere 與 License Manager 整合

如需詳細資訊 AWS License Manager,請參閱 AWS License Manager 使用者指南AWS CLI 命令參考AWS License Manager一節。

如需將 AWS License Manager 與容器產品與合約定價整合的詳細資訊,請參閱 與AWS Marketplace 賣方研討會的前期付款實驗室整合

容器產品的合約定價

對於具有合約定價的容器型產品, 會根據您與客戶之間的合約,預先或根據您定義的付款排程向您的客戶 AWS Marketplace 收費。之後,他們有權使用這些資源。

若要設定定價,請選擇您提供給客戶的一或多個合約持續時間。您可以為每個合約期間輸入不同的價格。您的選項為 1 個月、12 個月、24 個月和 36 個月的持續時間。對於私有優惠,您可以指定自訂持續時間,以月為單位 (最多 60 個月)。

選擇最能描述您產品定價的類別。定價類別會顯示在 AWS Marketplace 網站上的客戶。您可以選擇頻寬 (GB/s、MB/s)、資料 (GB、MB、TB)、主機請求使用者。如果沒有任何預先定義的類別符合您的需求,您可以選擇更通用的單位類別。

優惠最多可新增 24 個維度。

範例:資料儲存應用程式
1 個月價格 12 個月價格 24 個月價格 P36-month價格
未加密的資料 (GB) $1.50/GB $16.00/GB $30.00/GB $60.00/GB
加密的資料 (GB) $1.55/GB 16.60 USD/GB $31.20/GB $61.20/GB
範例:日誌監控產品
1 個月價格 12 個月價格 24 個月價格 36 個月價格
基本 (監控 10 個主機、監控 5 個容器) 100 美元 1000 美元 2000 美元 4000 美元
標準 (監控 20 個主機、監控 10 個容器) $200 2000 美元 4000 美元 8000 美元
Pro (監控 40 個主機、監控 20 個容器) 400 美元 4000 美元 8000 美元 16,000 美元
每小時監控的其他主機 10 美元 100 美元 $200 400 美元
每小時監控的其他容器 10 美元 100 美元 $200 400 美元
注意

價格可以是下列持續時間:1 個月、12 個月、24 個月或 36 個月。您可以選擇為您的產品提供一或多個選項。每個維度的持續時間必須相同。

例如,如果您有 ReadOnlyUsersAdminUsers維度,如果您提供 ReadOnlyUsers 的每年價格,您AdminUsers也必須提供 的每年價格。

自動續約

當客戶 AWS Marketplace 使用容器合約購買您的產品時,他們可以同意自動續約合約條款。客戶每個月或 1、2 或 3 年繼續支付權利。

客戶可以隨時修改續約設定。如需詳細資訊,請參閱《 AWS Marketplace 買方指南》中的修改現有合約

授權模型

AWS Marketplace 與 整合 AWS License Manager 支援兩種授權模型:

可設定的授權模型

在買方取得授權之後,可設定的授權模型 (也稱為可量化授權模型) 可讓買方獲得特定數量的資源。

您可以設定定價維度和每個單價。然後,買方可以選擇他們想要購買的資源數量。

範例 定價維度和每個單價的

您可以設定定價維度 (例如資料備份) 和每單位價格 (例如每單位 30 美元)。

買方可以選擇購買 5、10 或 20 個單位。

您的產品會追蹤和測量用量,以測量消耗的資源數量。

使用組態模型時,會以下列兩種方式之一計算權利:

下調授權

授權是從使用時允許的授權數量集區中提取。該權利會永久簽出,且無法傳回至授權集區。

範例 處理有限數量的資料

使用者有權處理 500 GB 的資料。隨著他們繼續處理資料,數量會從 500 GB 的集區中提取,直到所有 500 GB 授權都用盡為止。

對於提取授權,您可以使用 CheckoutLicense API 操作來查看使用的授權單位 (權限)。

範例 的備份到 Amazon S3 的單位/年

您有一個儲存產品,允許備份到 Amazon Simple Storage Service 長達一年的資料 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" }

浮動授權

授權在使用後會傳回至允許授權數量的集區。

對於浮動授權,應用程式會在使用資源時,使用 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..."
範例 來自固定上限的使用者數量

使用者有權在應用程式上同時存取 500 名使用者。當使用者登入和登出時,會繪製使用者並傳回 500 名使用者的集區。不過,應用程式無法從集區提取超過 500 個使用者,因為 500 個同時使用者是固定的上限。

對於浮動權利,您可以使用 CheckInLicense API 操作將授權單位傳回權利集區。

範例 一年的並行使用者數量

您的產品會根據並行使用者數量定價。客戶為 10 個使用者購買授權一年。客戶提供 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" }

分層授權模型

在買方取得授權之後,分層授權模型會授予買方特定層級或層級的應用程式功能。

您可以為您的產品建立方案,例如 Basic、Intermediate 和 Premium。然後,買方會選取其中一個預先定義的層。

應用程式不需要追蹤或計量應用程式的用量。

使用分層授權模型時,不會計算權利,而是表示客戶購買的服務層級。

如果您想要同時提供綁定功能,最好使用 層。

範例 基本、中級和高級方案

客戶可以為軟體的三個可能方案之一簽署合約:基本、中級或高級。每個方案都有自己的定價。您的軟體可以透過叫用 CheckoutLicense API 操作並在請求中指定所有可能的層來識別客戶已註冊的層。

請求的回應包含與客戶已取得的方案對應的權利。根據此資訊,軟體可以佈建適當的客戶體驗。

請求

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"

回應

{ "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 整合先決條件

在發佈產品之前,您必須執行下列動作:

  1. 在 中建立新的容器產品 AWS Marketplace 管理入口網站,並記下其產品代碼。

    如需詳細資訊,請參閱概觀:建立容器產品

  2. 針對執行應用程式的 任務或 Pod,使用 IAM 角色搭配呼叫 CheckoutLicenseExtendLicenseConsumptionCheckInLicense API 操作所需的 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":"*" } ] }
  3. 使用您定義的所有定價維度的記錄對 RegisterUsage API 操作進行測試呼叫。

將容器產品與 License Manager 整合

將您的容器型產品與 License Manager 整合
  1. 設定 IAM 許可以呼叫 License Manager。如需詳細資訊,請參閱AWS License Manager 整合先決條件

  2. 下載 AWS SDK。

    注意

    當您的容器在 Amazon EC2 執行個體、Amazon ECS 任務或 Amazon EKS Pod 中執行時,請勿在 software. AWS credentials 中設定 AWS 登入資料,系統會在執行時間自動取得買方的登入資料。

  3. 將授權檢查新增至您的產品。

    您的產品可以在應執行授權檢查的位置呼叫 CheckoutLicense API 操作。若要檢查授權,您的產品必須知道:

    1. 授權的信任發行者 (AWS Marketplace)

    2. 應用程式的產品 SKU (產品 ID)

    3. 檢查此應用程式的權利

    API 呼叫會根據您設定的定價授權類型而有所不同。

  4. 發佈您的產品清單 AWS Marketplace。

License Manager API 操作

若要管理存放在客戶 License Manager 帳戶中的授權,您的軟體可以使用下列 API 操作:

  • GetLicense – 軟體可查詢的 API。它會擷取已購買授權的狀態 (即過期或即將過期),並傳送狀態通知給客戶。

  • CheckoutLicense – 探索使用者已購買的授權。當使用者已取用一些授權數量時,您也可以使用 CheckoutLicense API 操作來更新授權數量。透過 CheckoutLicense,您可以持續檢查客戶使用的授權數量。當客戶耗盡所有授權時,此呼叫會傳回錯誤。如需執行 的建議節奏資訊CheckoutLicense,請參閱 授權續約和升級

  • ExtendLicenseConsumption – 在浮動維度的情況下,當軟體簽出授權時,授權會在 60 分鐘後自動返回集區。如果您想要延長授權保持簽出的時間,請使用 ExtendLicenseConsumption API 操作將授權再延長 60 分鐘。

  • CheckInLicense – 如果是浮動維度,當您想要將授權傳回權利集區時,請使用 CheckInLicense API 操作。

  • ListReceivedLicenses API – 列出買方購買的授權。

授權續約和升級

客戶可以在 上續約或升級其授權 AWS Marketplace 管理入口網站。進行額外的購買後, AWS Marketplace 會產生反映新權利的授權新版本。您的軟體會使用相同的 API 操作讀取新的權利。在 License Manager 整合方面,您不需要採取任何不同的動作來處理續約和升級。

由於授權續約、升級、取消等,建議您的產品在使用產品時定期呼叫 CheckoutLicense API 操作。透過定期使用 CheckoutLicense API 操作,產品可以偵測權利的變更,例如升級和過期。

建議您每 15 分鐘執行一次 CheckoutLicense API 呼叫。