Configurer l’authentification GCP pour que Metronome déclare en votre nom
Afin de déclarer la consommation de vos listings, Metronome aura besoin d’accéder aux API procurement et metering dans votre projet GCP marketplace. Metronome accédera à votre projet via la Workload Identity Federation, qui permet un accès fédéré à votre projet par Metronome sans avoir à stocker des tokens ou clés à longue durée de vie. Vous associerez ensuite un Google Service Account au pool de Workload Identity Federation, auquel vous attacherez les permissions fines appropriées pour les opérations de metering de Metronome. Pour vous aider à déployer ces ressources, Metronome fournit un ensemble de fichiers de configuration et de scripts qui vous accompagneront dans le déploiement via Terraform, un script Bash ou une méthode auto-guidée utilisant l’utilitaire CLIgcloud. Ces configurations suggérées sont disponibles sur Github.
Vous aurez besoin de certaines informations de Metronome pour configurer correctement cette intégration, et en retour, Metronome aura besoin de certaines sorties de ce processus. Voici les étapes :
- Dans Metronome, allez dans Connections > Integrations > Available Integrations > GCP Marketplace > cliquez sur Get started.
-
Copiez le Service Account ID, l’AWS Account ID et l’AWS Lambda Role Name de Metronome depuis le menu :

-
Dans GCP, allez sur la page d’accueil de la console GCP et sélectionnez votre projet cible depuis le sélecteur de projet en haut à gauche. Votre Project ID et votre Project Number seront affichés ici :

- En utilisant l’une des méthodes de configuration fournies dans le dépôt Github, fournissez vos metronome_service_account_id, metronome_aws_account_id, metronome_aws_lambda_role_name, project_id et project_number en tant qu’arguments d’entrée. Cela déploiera un Workload Identity Federation Pool, un AWS Workload Identity Federation Provider et un Service Account dans votre projet avec la configuration appropriée.
- Toujours dans la console GCP, Metronome aura besoin que les API GCP appropriées soient activées afin de s’authentifier auprès de votre projet, découvrir vos entitlements GCP et signaler l’usage à GCP. Consultez la documentation de GCP pour plus d’informations sur l’activation des API, et assurez-vous que les API suivantes sont activées :
-
Enfin, allez sur la page Workload Identity Federation pools dans votre console GCP et cliquez sur le pool qui a été créé à l’étape 4. Cliquez sur Connected service accounts, puis sur Download à côté du service account que nous avons créé à l’étape 4. Sauvegardez ce fichier d’identifiants pour le soumettre à Metronome à une étape ultérieure.

Créer une listing GCP Marketplace
Avec l’accès fédéré à votre projet configuré, nous passons maintenant à la configuration de votre listing pour la facturation basée sur l’usage via Metronome :- Vous devez avoir accès au GCP Producer Portal, ce qui inclut de vous enregistrer auprès de Google en tant que fournisseur.
-
Depuis la page d’accueil du GCP Producer Portal, utilisez Add Product pour commencer à configurer une nouvelle listing.

-
Complétez la section Product Details. Il s’agit de toutes les informations d’identification sur votre listing — Metronome n’exige aucun paramètre spécifique ici.

- Complétez la section Pricing. En particulier, dans l’onglet Price Model, vous créerez un plan avec une métrique basée sur l’usage et une tarification pour cette métrique. Metronome a des exigences spécifiques pour chacun :
- Complétez la section finale, Technical Integration. Ici, en particulier, vous devrez configurer votre service account fourni par Metronome avec un accès aux API appropriées afin que Metronome puisse déclarer l’usage de votre listing. La complétion de cette section nécessitera votre Metronome Service Account ID que vous avez créé et déployé dans la section Configurer la Workload Identity Federation.
- Une fois toutes les sections requises pour votre listing soumises, Google procédera à un workflow de revue et d’approbation avant que votre listing puisse être publiée.
Soumettre la configuration de listing à Metronome
Avec l’accès fédéré configuré via un Workload Identity Pool, et avec le Service Account de Metronome configuré avec les permissions appropriées via la Technical Integration de votre listing, vous êtes maintenant prêt à soumettre vos informations de configuration à Metronome pour finaliser l’intégration :- Dans Metronome, retournez à Connections > Integrations > Available Integrations > GCP Marketplace > cliquez sur Get started.
-
Soumettez votre Provider ID et votre fichier JSON Workload Identity Configuration dans les champs appropriés :

- Cliquez sur Save changes pour soumettre. Metronome vérifiera que l’accès a bien été accordé à la listing, et si c’est le cas, l’intégration sera enregistrée.
Provisionner les clients GCP Marketplace dans Metronome
Lorsqu’un client accepte votre listing Marketplace, vous devrez provisionner son compte dans Metronome avec un contrat Metronome qui reflète tous les détails de l’offre/abonnement qu’il a signé avec vous dans le Marketplace, et avec GCP identifié comme fournisseur de facturation sur ce contrat. Pour connecter un client à GCP et faire en sorte que Metronome commence à déclarer ses factures à GCP en votre nom :- Allez sur la page de détail d’un client existant dans Metronome ou créez un nouveau client à Customers > Add New Customer.
- Allez dans Settings > Available Integrations > GCP > Get Started.
-
Entrez l’Entitlement ID et le Service Name pour l’abonnement de ce client :
- Vous pouvez trouver ces deux informations depuis l’abonnement ou la commande dans le GCP Producer Portal.
-
Entitlement ID est l’identifiant unique représentant l’offre/abonnement de votre client dans GCP. Il est également référencé comme Order ID. Exemple :

-
Service Name est un nom de domaine qui identifie votre produit/listing pour Google. Il est affiché comme Product sur une offre :

- Créez un nouveau contrat pour le client qui correspond aux détails du contrat qu’il a signé avec vous dans GCP Marketplace. Incluez tous les crédits et engagements dont le client dispose dans le cadre du contrat. Apprenez à provisionner des contrats dans Metronome.
- Sous la section Billing Configuration du flow de configuration du contrat, sélectionnez GCP comme fournisseur de facturation.
-
Vous pouvez également utiliser les endpoints suivants pour configurer GCP comme fournisseur de facturation d’un client et l’attribuer à un contrat :
-
Pour configurer un nouveau client avec GCP Marketplace :
- Appelez l’endpoint create customer
- Dans le payload de la requête, incluez
customer_billing_provider_configurations:-
Dans la propriété
configuration, spécifiezgcp_entitlement_idetgcp_service_name
-
Dans la propriété
-
Pour configurer un client existant avec GCP Marketplace :
- Appelez l’endpoint set customer billing provider configurations
- Dans le payload de la requête, incluez votre configuration :
-
Dans la propriété
configuration, spécifiezgcp_entitlement_idetgcp_service_name
-
Dans la propriété
-
Pour configurer un nouveau contrat avec des factures déclarées à GCP Marketplace :
- Appelez l’endpoint create contract
-
Dans le payload de la requête, incluez
billing_provider_configuration:
-
Pour configurer un nouveau client avec GCP Marketplace :
Ce que Metronome déclare à GCP
Lors de la déclaration à GCP, Metronome additionne le montant total accumulé d’un client à travers toutes les factures de contrat ayant GCP défini comme fournisseur de facturation depuis la dernière requête de déclaration. Metronome définit la quantité de chaque enregistrement de déclaration comme le montant total en dollars exprimé en centimes USD. Si un client a acheté un engagement ou s’est vu offrir un crédit dans le cadre de son contrat, Metronome déclare comme suit :- Engagements prépayés Un contrat dans Metronome spécifie une planification selon laquelle le client paie son engagement prépayé. Ces entrées créent une ou plusieurs factures planifiées. Metronome déclare le montant que le client doit sur l’engagement prépayé à la date associée à la période de service de la facture planifiée, et non à la date de création.
- Crédits Comme les crédits sur un contrat Metronome ne sont pas payés, Metronome ne déclare que les dépassements reflétés sur les totaux de facture après que le crédit a été entièrement consommé.
- Engagements postpayés Metronome déclare l’usage reflété sur les totaux de facture tout au long de la durée du contrat. Cependant, si l’intégralité de l’engagement postpayé n’est pas consommée à la fin du contrat, Metronome ignore la facture de régularisation et ne l’envoie pas au marketplace. C’est parce que la facture de régularisation n’est pas finalisée tant que la période de grâce Metronome n’est pas terminée, moment auquel l’endpoint de déclaration du marketplace est fermé. Cela signifie que vous devez gérer la régularisation directement dans le marketplace.
Gérer les événements du cycle de vie client du marketplace dans Metronome et votre application
Metronome arrête la déclaration s’il détecte des changements d’abonnement dus à des événements du cycle de vie du marketplace, et met à jour le statut du client dans Metronome en conséquence. Cependant, vous êtes responsable de vous assurer que le statut du client est correctement représenté dans votre application et de mettre fin au contrat du client dans Metronome, le cas échéant. Pour mettre fin au contrat du client dans l’application Metronome, allez sur le client > cliquez sur le contrat > sélectionnez le menu déroulant > cliquez sur Edit Contract End Date. Pour mettre fin au contrat du client avec l’API Metronome, utilisez l’endpoint/contracts/updateEndDate.