Misurazione personalizzata per prodotti in container con AWS Marketplace Metering Service - Marketplace AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Misurazione personalizzata per prodotti in container con AWS Marketplace Metering Service

Marketplace AWS i prodotti container possono avere una misurazione personalizzata per un massimo di 24 diverse dimensioni di prezzo per prodotto. A ogni dimensione può essere associato un prezzo contrattuale a lungo termine. Per abilitare la misurazione personalizzata, integra il tuo prodotto container con AWS Marketplace Metering Service. Puoi definire le tue unità di prezzo e la misurazione personalizzata per tale utilizzo e per la fatturazione AWS utilizzando l'operazione. MeterUsageAPI

Le dimensioni dei prezzi sono definite in due posizioni, una volta nel modulo di caricamento del prodotto e una volta durante l'MeterUsageoperazione. Questo metodo a due fattori garantisce che le offerte successive funzionino come previsto prima di essere rese disponibili al pubblico.

Per configurare la misurazione personalizzata, devi scegliere la categoria di utilizzo, il tipo di unità e le dimensioni del prezzo:

  • Categoria di utilizzo: la categoria di utilizzo aiuta gli acquirenti a capire cos'è il tuo prodotto e come utilizzarlo.

  • Tipo di unità: il tipo di unità definisce l'unità di misura per la fatturazione. Ad esempio, la larghezza di banda misurata in GBps oMBps, il numero di host o i dati misurati in MB, GB o TB.

  • Dimensioni dei prezzi: le dimensioni dei prezzi rappresentano una funzionalità o un servizio per cui hai impostato un prezzo unitario (ad esempio, utentivCPUs, scansioni o agenti distribuiti). Le dimensioni relative ai prezzi sono pubbliche. Tuttavia, puoi comunque definire offerte private e Bring Your Own License (BYOL) per prodotti pubblici. Non inserite i prezzi nei registri di misurazione. Tu misuri la quantità di unità e noi la utilizziamo insieme ai prezzi che hai definito durante la creazione del prodotto per calcolare la fattura dell'acquirente.

    Se il prezzo del prodotto non corrisponde a nessuna delle categorie o dei tipi di unità predefiniti, puoi scegliere la categoria di unità generica. Quindi, utilizza la descrizione della dimensione per descrivere cos'è l'unità.

Facoltativamente, è possibile distribuire l'utilizzo in allocazioni in base alle proprietà monitorate. Le allocazioni vengono rappresentate come tag per l'acquirente. Questi tag consentono all'acquirente di visualizzare i costi suddivisi in base all'utilizzo in base ai valori dei tag. Ad esempio, se addebiti in base all'utente e gli utenti hanno la proprietà «Dipartimento», puoi creare allocazioni di utilizzo con tag con la chiave «Dipartimento» e un'allocazione per valore. Ciò non modifica il prezzo, le dimensioni o l'utilizzo totale riportato, ma consente al cliente di visualizzare i costi per categorie appropriate al prodotto.

Ti consigliamo di inviare un record di misurazione ogni ora. Tuttavia, puoi aggregare l'utilizzo anche su periodi giornalieri o mensili. In caso di interruzione, puoi aggregare l'utilizzo del software da parte degli acquirenti e inviarlo per la misurazione delle ore successive. Non puoi inviare più di un record all'ora.

Importante

La prova gratuita e i diritti prepagati vengono monitorati su base oraria. Di conseguenza, l'invio separato di questi documenti potrebbe comportare un sovrapprezzo per l'acquirente.

Prerequisiti per la misurazione personalizzata

Prima di pubblicare il prodotto, devi fare quanto segue:

  1. Crea un nuovo prodotto contenitore in e prendi nota del relativo codice prodotto. Portale di gestione Marketplace AWS

  2. Compila il modulo di caricamento del prodotto con le informazioni sulle dimensioni necessarie e inviacelo per l'elaborazione.

  3. Utilizzate un ruolo AWS Identity and Access Management (IAM) per l'attività o il pod che esegue l'applicazione con le IAM autorizzazioni necessarie per effettuare la chiamataMeterUsage. La politica IAM gestita AWSMarketplaceMeteringRegisterUsage dispone di queste autorizzazioni.

  4. (Facoltativo) Ti consigliamo di abilitare la AWS CloudTrail registrazione nella definizione dell'attività o del pod se desideri visualizzare la registrazione.

  5. Effettua una chiamata di prova all'MeterUsageAPIoperazione con un record per tutte le dimensioni di prezzo che definisci.

Modulo di caricamento del prodotto per la misurazione personalizzata

Quando si compila il modulo di caricamento del prodotto per la misurazione personalizzata, ogni prodotto può avere fino a 24 dimensioni. Le dimensioni sono definite nei seguenti campi:

  • Nome dimensione: il nome utilizzato quando l'applicazione contenitore invia i record di misurazione a. AWS Marketplace Metering Service Questo nome indica la dimensione che verrà utilizzata dall'acquirente. Questo nome è visibile nei report di fatturazione. Dopo aver impostato il nome, non puoi cambiarlo.

  • Descrizione della dimensione: la descrizione della dimensione rivolta all'acquirente. La descrizione non può superare i 70 caratteri. Dopo che il prodotto è stato pubblicato pubblicamente per gli acquirenti, questo campo non può essere modificato.

  • Dimension Rate: il prezzo unitario del software per questo prodotto, quando gli acquirenti pagano in base al consumo. Questo campo supporta tre cifre decimali.

  • Dimension Long Term Rate: il prezzo totale del software rispetto a un contratto a lungo termine, quando gli acquirenti pagano in anticipo.

  • Durata a lungo termine (giorni): la durata, in giorni, del contratto a lungo termine.

Test MeterUsage dell'integrazione e della modalità di anteprima

Usa l'MeterUsageoperazione per testare l'integrazione prima di inviare l'immagine Marketplace AWS per la pubblicazione.

La modalità di anteprima funziona in modo identico alla modalità di produzione, tranne per il fatto che la modalità di anteprima non verifica il diritto all'uso del prodotto. Per chiamare MeterUsage in modalità anteprima, chiama MeterUsage dalle immagini del contenitore eseguendo il prodotto su Amazon Elastic Container Service (AmazonECS) o Amazon Elastic Kubernetes Service (EKSAmazon) Account AWS con il file su cui stai pubblicando il prodotto. Marketplace AWS La tua integrazione di misurazione deve impostare dinamicamente il file Regione AWS, anziché codificarlo a livello di codice. Tuttavia, durante il test, avvia almeno un'ECSattività Amazon o un Amazon EKS pod contenente il container a pagamento nella regione Stati Uniti orientali (Virginia settentrionale) in modo che il team Marketplace AWS operativo possa verificare il tuo lavoro con i log di quella regione.

Nota
  • Se il tuo prodotto supporta ECS sia Amazon che AmazonEKS, devi solo avviarlo in Amazon EKS per consentirci di convalidare la tua integrazione.

  • Testa ogni dimensione prima di lanciare il prodotto al pubblico e dopo aver aggiunto una nuova dimensione. Se non invii un record di misurazione per ogni dimensione associata a un prodotto contenitore, si verificherà un errore e la richiesta non andrà a buon fine.

Non puoi testare completamente l'integrazione finché il prodotto non sarà pubblicato con tutti i metadati e le informazioni sui prezzi richiesti. Se richiesto, il team addetto alle operazioni del Marketplace AWS catalogo può verificare la ricezione dei dati di misurazione in modalità di anteprima.

Gestione degli errori per MeterUsage

Se l'immagine del contenitore si integra con l'MeterUsageoperazione e riceve un'eccezione diversa ThrottlingException dall'avvio del contenitore, è necessario terminare il contenitore per impedirne l'uso non autorizzato.

Le eccezioni diverse da ThrottlingException vengono generate solo durante la chiamata iniziale a. MeterUsage Le chiamate successive dalla stessa ECS attività o dallo stesso EKS pod Amazon non vengono generate CustomerNotSubscribedException anche se il cliente annulla l'iscrizione mentre l'attività o il pod è ancora in esecuzione. A questi clienti vengono comunque addebitati i costi per l'utilizzo dei container dopo l'annullamento dell'iscrizione e il loro utilizzo viene monitorato.

Per le MeterUsagedescrizioni dettagliate degli errori più comuni per, consulta la sezione di AWS Marketplace Metering Service APIriferimento. MeterUsage Ogni linguaggio AWS SDK di programmazione dispone di una serie di linee guida per la gestione degli errori a cui è possibile fare riferimento per ulteriori informazioni.

Etichettatura in base al fornitore (opzionale)

L'etichettatura basata sul fornitore aiuta i fornitori di software indipendenti (ISVs) a fornire all'acquirente informazioni più dettagliate sull'utilizzo del software e può aiutarlo a eseguire l'allocazione dei costi.

Esistono molti modi per contrassegnare l'utilizzo del software da parte di un acquirente. Un modo consiste nel chiedere innanzitutto agli acquirenti cosa vogliono vedere nella loro allocazione dei costi. Quindi puoi suddividere l'utilizzo tra le proprietà monitorate per l'account dell'acquirente. Esempi di proprietà includono AccountId Business UnitCost Centers, e altri metadati pertinenti per il tuo prodotto. Queste proprietà vengono esposte all'acquirente come tag. Utilizzando i tag, gli acquirenti possono visualizzare i costi suddivisi in base all'utilizzo in base ai valori dei tag nella loro AWS Billing Console (https://console.aws.amazon.com/billing/). I tag misurati in base al fornitore non modificano il prezzo, le dimensioni o l'utilizzo totale segnalato. Consente ai clienti di visualizzare i costi per categorie appropriate al prodotto.

In un caso d'uso comune, un acquirente si abbona al tuo prodotto con un Account AWS prodotto. L'acquirente ha inoltre numerosi utenti associati allo stesso abbonamento al prodotto. È possibile creare allocazioni di utilizzo con tag con una chiave di e AccountId quindi allocare l'utilizzo a ciascun utente. In questo caso, gli acquirenti possono attivare il AccountId tag nella console di Billing and Cost Management e analizzare l'utilizzo dei singoli utenti.

Esperienza del venditore

I venditori possono aggregare i record di misurazione delle risorse con lo stesso set di tag anziché aggregare l'utilizzo di tutte le risorse. Ad esempio, i venditori possono creare il record di misurazione che include diversi periodi di. UsageAllocations Ogni bucket rappresenta UsageQuantity un set di tag, come e. AccountId BusinessUnit

Nel diagramma seguente, Resource 1 ha un set unico di BusinessUnit tag AccountId e viene visualizzata nel Metering Record come una voce singola.

La risorsa 2 e la risorsa 3 hanno entrambe lo stesso AccountId tag e lo stesso BusinessUnit tag. 2222 Operations Di conseguenza, vengono combinati in un'unica UsageAllocations voce nel Metering Record.

Metering record showing resource usage allocation from three resources to two accounts.

I venditori possono anche combinare le risorse senza tag in un'unica risorsa UsageAllocation con la quantità di utilizzo assegnata e inviarla come una delle voci inserite. UsageAllocations

I limiti includono:

  • Numero di tag: 5

  • Dimensione di UsageAllocations (cardinalità): 2.500

Le convalide includono:

  • Caratteri consentiti per la chiave e il valore del tag: a-zA-Z0-9+ -= . _:\ /@

  • Numero massimo di tag nell'UsageAllocationelenco: 5

  • Due non UsageAllocations possono avere gli stessi tag (ovvero la stessa combinazione di chiavi e valori dei tag). In tal caso, devono usare lo stessoUsageAllocation.

  • La somma AllocatedUsageQuantity di UsageAllocation deve essere uguale aUsageQuantity, che è l'utilizzo aggregato.

Esperienza dell'acquirente

La tabella seguente mostra un esempio dell'esperienza dell'acquirente dopo che un acquirente ha attivato i tag AccountId e BusinessUnit fornitore.

In questo esempio, l'acquirente può visualizzare l'utilizzo allocato nel proprio rapporto sui costi di utilizzo. I tag misurati dal fornitore utilizzano il prefisso. “aws:marketplace:isv” Gli acquirenti possono attivarli in Billing and Cost Management, in Tag di allocazione dei costi AWS, tag di allocazione dei costi generati.

La prima e l'ultima riga del report sull'utilizzo dei costi sono pertinenti a ciò che il venditore invia al servizio di misurazione (come mostrato nell'esempio). Esperienza del venditore

Report sull'utilizzo dei costi (semplificato)
ProductCode Acquirente UsageDimension UsageQuantity aws:marketplace:isv:AccountId aws:marketplace:isv:BusinessUnit
xyz 111122223333 Rete: per (GB) ispezionata 70 2222 Operazioni
xyz 111122223333 Rete: per (GB) ispezionata 30 3333 Finanza
xyz 111122223333 Rete: per (GB) ispezionata 20 4444 IT
xyz 111122223333 Rete: per (GB) ispezionata 20 5555 Marketing
xyz 111122223333 Rete: per (GB) ispezionata 30 1111 Marketing

Per un esempio di codice, consulta MeterUsageesempio di codice con etichettatura per l'allocazione dell'utilizzo (opzionale).

esempio di codice

Il seguente esempio di codice viene fornito per aiutarvi a integrare il prodotto contenitore con quanto Marketplace AWS APIs necessario per la pubblicazione e la manutenzione del prodotto.

MeterUsageesempio di codice con etichettatura per l'allocazione dell'utilizzo (opzionale)

Il seguente esempio di codice è rilevante per i prodotti container con modelli di determinazione dei prezzi al consumo. L'esempio di Python invia un record di misurazione con i tag di allocazione dell'uso appropriati per addebitare le Marketplace AWS commissioni ai clienti. pay-as-you-go

# NOTE: Your application will need to aggregate usage for the # customer for the hour and set the quantity as seen below. # AWS Marketplace can only accept records for up to an hour in the past. # # productCode is supplied after the AWS Marketplace Ops team has # published the product to limited # Import AWS Python SDK import boto3 import time usageRecord = [ { "AllocatedUsageQuantity": 2, "Tags": [ { "Key": "BusinessUnit", "Value": "IT" }, { "Key": "AccountId", "Value": "123456789" }, ] }, { "AllocatedUsageQuantity": 1, "Tags": [ { "Key": "BusinessUnit", "Value": "Finance" }, { "Key": "AccountId", "Value": "987654321" }, ] } ] marketplaceClient = boto3.client("meteringmarketplace") response = marketplaceClient.meter_usage( ProductCode="testProduct", Timestamp=int(time.time()), UsageDimension="Dimension1", UsageQuantity=3, DryRun=False, UsageAllocations=usageRecord )

Per ulteriori informazioni in meritoMeterUsage, vedere MeterUsagenella sezione Reference.AWS Marketplace Metering Service API

Example response

{ "MeteringRecordId": "string" }