Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configuration du comptage personnalisé pour les produits conteneurisés avec AWS Marketplace Metering Service
AWS Marketplace les produits en conteneur peuvent être mesurés sur mesure pour un maximum de 24 dimensions de prix différentes par produit. Chaque dimension peut être associée à un prix contractuel à long terme. Pour activer le comptage personnalisé, intégrez votre produit conteneur à AWS Marketplace Metering Service. Vous pouvez définir vos propres unités de tarification et des mesures personnalisées pour cette utilisation ou pour la facturation à AWS l'aide de l'opération MeterUsage
API. Les sections suivantes vous montrent comment configurer le comptage personnalisé pour votre produit en conteneur.
Les dimensions du prix sont définies à deux endroits, une fois lors de la création de votre produit dans le Portail de gestion AWS Marketplace (portail des vendeurs) et une fois dans votre logiciel pour effectuer l'MeterUsage
opération. Cette méthode à deux facteurs garantit que les offres suivantes fonctionnent comme prévu avant d'être mises à la disposition du public.
Pour configurer le comptage personnalisé, vous devez choisir la catégorie d'utilisation, le type d'unité et les dimensions de tarification :
-
Catégorie d'utilisation — La catégorie d'utilisation aide les acheteurs à comprendre ce qu'est votre produit et comment l'utiliser.
-
Type d'unité — Le type d'unité définit l'unité de mesure pour la facturation. Par exemple, la bande passante mesurée en GBps ou MBps, le nombre d'hôtes, ou les données mesurées en Mo, Go ou To.
-
Dimensions tarifaires : les dimensions tarifaires représentent une fonctionnalité ou un service pour lequel vous avez défini un prix unitaire (par exemple, les utilisateurs, les scans, les v CPUs ou les agents déployés). Les dimensions des prix sont publiques. Cependant, vous pouvez toujours définir des offres privées et des offres BYOL (Bring Your Own License) pour les produits publics. N'envoyez pas de tarification dans les relevés de mesure. Vous mesurez la quantité d'unités, et nous l'utilisons avec les prix que vous avez définis lors de la création de votre produit pour calculer la facture de l'acheteur.
Si le prix de votre produit ne correspond à aucune des catégories ou types d'unités prédéfinis, vous pouvez choisir la catégorie d'unités générique. Utilisez ensuite la description des dimensions pour décrire l'unité.
Vous pouvez éventuellement répartir l'utilisation en allocations selon les propriétés que vous suivez. Les allocations sont représentées sous forme de balises pour l'acheteur. Ces balises permettent à l'acheteur de visualiser ses coûts répartis en fonction de l'utilisation par valeur des balises. Par exemple, si vous facturez par utilisateur et que les utilisateurs ont une propriété « Service », vous pouvez créer des allocations d'utilisation avec des balises comportant la clé « Département », et une allocation par valeur. Cela ne modifie pas le prix, les dimensions ou l'utilisation totale que vous signalez, mais permet à votre client de consulter ses coûts par catégories correspondant à votre produit.
Nous vous recommandons d'envoyer un relevé de mesure toutes les heures. Cependant, vous pouvez également agréger l'utilisation sur des périodes quotidiennes ou mensuelles. En cas de panne, vous pouvez agréger l'utilisation du logiciel par l'acheteur et l'envoyer dans les heures qui suivent pour le comptage. Vous ne pouvez pas envoyer plus d'un enregistrement par heure.
Pour plus d'informations sur l'intégration de AWS Marketplace Metering Service l'API pour les produits en conteneurs avec des tarifs de dosage personnalisés, consultez le laboratoire d'intégration aux compteurs personnalisés
Important
L'essai gratuit et les droits prépayés sont suivis sur une base horaire. Par conséquent, l'envoi de ces enregistrements séparément peut entraîner une surfacturation à l'acheteur.
Rubriques
- Prérequis à la mesure personnalisée
- MeterUsageIntégration des tests
- Gestion des erreurs pour MeterUsage
- Étiquetage mesuré par le fournisseur (facultatif)
- Exemple de code
- Intégration de votre produit en conteneur à l'aide d'un dosage personnalisé avec le et AWS Marketplace Metering ServiceAWS SDK for Java
Prérequis à la mesure personnalisée
Avant de publier le produit, vous devez effectuer les opérations suivantes :
-
Créez un nouveau produit conteneur dans Portail de gestion AWS Marketplace le et notez son code produit.
-
Utilisez un rôle AWS Identity and Access Management (IAM) pour la tâche ou le module exécutant votre application avec les autorisations IAM nécessaires pour appeler.
MeterUsage
La politique gérée par IAMAWSMarketplaceMeteringRegisterUsage
dispose de ces autorisations. Pour plus d'informations sur la politique, consultez AWSMarketplaceMeteringFullAccessla référence des stratégies AWS gérées. -
(Facultatif) Nous vous recommandons d'activer la AWS CloudTrail journalisation dans la définition de la tâche ou du pod si vous souhaitez voir la journalisation.
-
Effectuez un appel test à l'opération d'
MeterUsage
API avec un enregistrement de toutes les dimensions de tarification que vous définissez.
MeterUsage
Intégration des tests
Utilisez cette MeterUsage
opération pour tester votre intégration avant de soumettre votre image à des AWS Marketplace fins de publication.
Appelez MeterUsage
depuis les images du conteneur en exécutant votre produit sur Amazon Elastic Container Service (Amazon ECS) ou Amazon Elastic Kubernetes Service (Amazon Compte AWS EKS) avec le logiciel que vous utilisez pour mettre le produit en vente. AWS Marketplace Votre intégration de mesure doit le définir dynamiquement Région AWS, plutôt que de le coder en dur. Toutefois, lors du test, lancez au moins une tâche Amazon ECS ou un module Amazon EKS contenant votre conteneur payant dans la région de l'est des États-Unis (Virginie du Nord) afin que l'équipe AWS Marketplace des opérations puisse vérifier votre travail avec les journaux de cette région.
Note
-
Si votre produit prend en charge à la fois Amazon ECS et Amazon EKS, il vous suffit de le lancer dans Amazon EKS pour que nous puissions valider votre intégration.
-
Testez chaque dimension avant de lancer votre produit auprès du public et après avoir ajouté une nouvelle dimension. Si vous n'envoyez pas d'enregistrement de mesure pour chaque dimension associée à un produit en conteneur, une erreur se produira et la demande échouera.
Vous ne pouvez pas tester totalement l'intégration tant que votre produit n’a pas été publié avec toutes les métadonnées requises et les informations de tarification. Sur demande, l'équipe chargée des opérations du AWS Marketplace catalogue peut vérifier la réception de vos relevés de mesure.
Gestion des erreurs pour MeterUsage
Si l'image de votre conteneur s'intègre à l'MeterUsage
opération et reçoit une exception autre qu'ThrottlingException
au démarrage du conteneur, vous devez arrêter le conteneur pour empêcher toute utilisation non autorisée.
Les exceptions autres que ThrottlingException
sont générées uniquement lors de l'appel initial de MeterUsage
. Les appels suivants provenant de la même tâche Amazon ECS ou du même pod Amazon EKS ne sont pas lancés CustomerNotSubscribedException
même si le client se désabonne alors que la tâche ou le pod est toujours en cours d'exécution. Ces clients continuent d’être facturés pour l'exécution de conteneurs après qu'ils se désabonnent et leur utilisation est suivie.
Consultez MeterUsagela référence de l'AWS Marketplace Metering Service API pour obtenir une description détaillée des erreurs courantes pourMeterUsage
. Chaque langage de programmation du AWS SDK possède un ensemble de directives de gestion des erreurs auxquelles vous pouvez vous référer pour plus d'informations.
Étiquetage mesuré par le fournisseur (facultatif)
Le balisage mesuré par le fournisseur aide les fournisseurs de logiciels indépendants (ISVs) à donner à l'acheteur un aperçu plus précis de l'utilisation de ses logiciels et peut l'aider à répartir les coûts.
Il existe de nombreuses manières d'étiqueter l'utilisation du logiciel par un acheteur. L'une des solutions consiste à demander d'abord à vos acheteurs ce qu'ils souhaitent voir dans leur répartition des coûts. Vous pouvez ensuite répartir l'utilisation entre les propriétés que vous suivez pour le compte de l'acheteur. Les exemples de propriétés incluent AccountId
Business Unit
,Cost Centers
, et d'autres métadonnées pertinentes pour votre produit. Ces propriétés sont présentées à l'acheteur sous forme de balises. À l'aide de balises, les acheteurs peuvent voir leurs coûts répartis en fonction de l'utilisation selon les valeurs des balises dans leur console AWS de facturation (https://console.aws.amazon.com/costmanagement/
Dans un cas d'utilisation courant, un acheteur s'abonne à votre produit avec un Compte AWS abonnement. L'acheteur possède également de nombreux utilisateurs associés au même abonnement au produit. Vous pouvez créer des allocations d'utilisation à l'aide de balises dotées d'une clé deAccountId
, puis attribuer l'utilisation à chaque utilisateur. Dans ce cas, les acheteurs peuvent activer le AccountId
tag dans leur console Billing and Cost Management et analyser l'utilisation individuelle des utilisateurs.
Expérience du vendeur
Les vendeurs peuvent agréger les relevés de mesure des ressources avec le même ensemble de balises au lieu d'agréger l'utilisation de toutes les ressources. Par exemple, les vendeurs peuvent créer le registre des compteurs qui inclut différents compartiments de. UsageAllocations
Chaque compartiment UsageQuantity
représente un ensemble de balises, telles que AccountId
etBusinessUnit
.
Dans le schéma suivant, la ressource 1 possède un ensemble unique de BusinessUnit
balises AccountId
et apparaît dans l'enregistrement de mesure sous la forme d'une entrée unique.
La ressource 2 et la ressource 3 ont toutes deux le même AccountId
tag2222
, et le même BusinessUnit
tag,Operations
. Par conséquent, ils sont combinés en une seule UsageAllocations
entrée dans le registre de mesure.

Les vendeurs peuvent également combiner des ressources sans étiquette en une seule UsageAllocation
avec la quantité d'utilisation allouée et l'envoyer comme l'une des entréesUsageAllocations
.
Les limites incluent :
-
Nombre de tags : 5
-
Taille de
UsageAllocations
(cardinalité) — 2 500
Les validations incluent :
-
Caractères autorisés pour la clé et la valeur du tag : a-zA-Z 0-9+ -= . _ : \ /@
-
Nombre maximum de balises dans
UsageAllocation
la liste : 5 -
Deux ne
UsageAllocations
peuvent pas avoir les mêmes balises (c'est-à-dire la même combinaison de clés et de valeurs de balise). Si tel est le cas, ils doivent utiliser le mêmeUsageAllocation
. -
La somme
AllocatedUsageQuantity
deUsageAllocation
doit être égale àUsageQuantity
, qui est l'utilisation agrégée.
Expérience d'acheteur
Le tableau suivant montre un exemple de l'expérience de l'acheteur après qu'un acheteur a activé les tags AccountId
et BusinessUnit
vendor.
Dans cet exemple, l'acheteur peut voir l'utilisation allouée dans son rapport d'utilisation des coûts. Les balises mesurées par le fournisseur utilisent le préfixe. “aws:marketplace:isv”
Les acheteurs peuvent les activer dans Billing and Cost Management, sous Cost Allocation Tags, sous les balises de répartition des coûts AWS générées par les acheteurs.
Les première et dernière lignes du rapport d'utilisation des coûts concernent ce que le vendeur envoie au service de comptage (comme indiqué dans l'Expérience du vendeurexemple).
ProductCode | Acheteur | UsageDimension | UsageQuantity | aws:marketplace:isv:AccountId |
aws:marketplace:isv:BusinessUnit |
---|---|---|---|---|---|
xyz | 111122223333 | Réseau : par (Go) inspecté | 70 | 2222 | Opérations |
xyz | 111122223333 | Réseau : par (Go) inspecté | 30 | 3333 | Finance |
xyz | 111122223333 | Réseau : par (Go) inspecté | 20 | 4444 | IT |
xyz | 111122223333 | Réseau : par (Go) inspecté | 20 | 5555 | Marketing |
xyz | 111122223333 | Réseau : par (Go) inspecté | 30 | 1111 | Marketing |
Pour obtenir un exemple de code, consultez MeterUsageexemple de code avec balisage d'allocation d'utilisation (facultatif).
Exemple de code
L'exemple de code suivant est fourni pour vous aider à intégrer votre produit conteneur aux éléments AWS Marketplace APIs requis pour la publication et la maintenance de votre produit.
MeterUsage
exemple de code avec balisage d'allocation d'utilisation (facultatif)
L'exemple de code suivant est pertinent pour les produits en conteneur dotés de modèles de tarification à la consommation. L'exemple Python envoie un enregistrement de mesure avec les balises d'allocation d'utilisation appropriées AWS Marketplace pour facturer des pay-as-you-go frais à vos clients.
# 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 )
Pour plus d'informations à ce sujetMeterUsage
, consultez MeterUsagela référence de AWS Marketplace Metering Service l'API.
Exemple de réponse
{ "MeteringRecordId": "string" }