Configurer votre environnement Google Cloud

Cette page décrit la procédure de configuration de votre environnement Google Cloud, afin que vous puissiez distribuer vos applications Kubernetes.

Créer un projet

Lorsque vous devenez un partenaire Google Cloud Marketplace, vous configurez un projet que vous pouvez utiliser pour tester et distribuer votre application.

Si vous avez déjà configuré des projets pour la vente de solutions VM, vous pouvez les réutiliser et passer à l'étape Configurer un registre de conteneurs.

Nous vous recommandons de créer un nouveau projet pour vos solutions Google Cloud Marketplace. Pour en savoir plus sur la création d'un projet, consultez la page Créer et gérer des projets.

Après avoir créé votre projet, accordez le rôle "Project Viewer" à marketplace-ops@cloud.google.com. Pour connaître les étapes permettant d'accorder l'accès au projet, consultez la section Accorder, modifier et révoquer les accès à des ressources.

Lorsque vous créez votre solution, si vous avez besoin d'aide pour déboguer votre projet, par exemple pour dépanner votre dépôt de registre de conteneurs, accordez le rôle "Project Editor" à marketplace-support@cloud.google.com.

Une fois le projet créé, remplissez le formulaire d'informations sur le projet fourni par l'équipe Google Cloud Marketplace.

Configurer un registre de conteneurs

Vous avez besoin d'un dépôt de registre de conteneurs pour héberger les images de conteneurs pour votre application. Container Analysis analyse en permanence les images de l'application pour détecter les vulnérabilités, afin que vous puissiez examiner et résoudre les problèmes avant que les clients déploient votre application.

Pour configurer Container Registry, Docker et le SDK Google Cloud, consultez le guide de démarrage rapide de Container Registry.

Après avoir configuré Container Registry, dans le projet qui contient votre registre, accordez le rôle "Project Viewer" à marketplace-ops@cloud.google.com.

Activer l'API Container Analysis

Vous devez activer l'API Container Analysis qui analyse les images de votre conteneur dans Container Registry pour détecter les failles de sécurité. Pour une présentation de l'analyse des failles dans Container Analysis, consultez la documentation de Container Registry.

Ajouter votre solution dans le portail Partners

Partner Portal vous permet d'ajouter des informations marketing sur votre application et de saisir votre modèle de tarification. Votre ingénieur partenaire active le portail des partenaires une fois que vous avez rempli le formulaire d'informations sur le projet.

À ce stade, il vous suffit de créer une entrée correspondant à votre solution dans Partner Portal. Vous ajoutez vos informations marketing au cours des étapes ultérieures.

Le lien direct vers le portail Partners est le suivant :

https://console.cloud.google.com/partner/solutions?project=YOUR_PUBLIC_PROJECT_ID

Pour créer votre solution :

  1. En haut de la page, cliquez sur Ajouter une solution.

  2. Attribuez un nom à votre solution et vérifiez son ID. L'ID de la solution est utilisé dans l'URL de votre fiche Google Cloud Marketplace.

  3. Sous Type de solution, sélectionnez l'application Kubernetes.

  4. Dans la zone URL du dépôt de préproduction, entrez l'URL de votre dépôt Container Registry.

  5. Cliquez sur Créer. La création de votre solution peut prendre quelques secondes.

Vous ajoutez votre modèle de tarification et les informations marketing de votre solution au cours des étapes ultérieures.

Créer un cluster de développement dans Kubernetes Engine

Pour gérer et mettre à l'échelle les clusters Kubernetes, utilisez Google Kubernetes Engine. Pour créer un cluster de test et y déployer une application de base, consultez le guide de Démarrage rapide de Google Kubernetes Engine.

Installer l'outil de développement mpdev

L'outil mpdev est un conteneur qui regroupe des utilitaires de test et de publication des images de votre application. Bien qu'il ne soit pas nécessaire d'installer mpdev pour effectuer la release d'une application, vous pouvez exécuter mpdev pour vérifier votre environnement de développement et pour tester l'installation correcte de votre application sur votre cluster de développement.

Installez mpdev à partir du dépôt GitHub des outils Google Cloud Marketplace.

Pour en savoir plus sur l'utilisation de mpdev pour vérifier votre environnement et tester votre application, consultez la référence mpdev sur GitHub.

Organiser vos releases

En général, chaque version de votre application doit adopter Semantic Versioning 2.0, qui suit la convention de numérotation MAJOR.MINOR.PATCH. Chaque version doit posséder un numéro de version unique, tel que 1.0.1, 1.0.2, 1.3.1, etc. Si vous le souhaitez, vous pouvez ajouter un trait d'union après le numéro de version pour ajouter un modificateur de version préliminaire, tel que 1.3.1-alpha201910. Les modificateurs de version préliminaire peuvent être utilisés pour stocker et mettre en évidence toutes les informations supplémentaires que vous jugez utiles, telles que les dates de compilation indiquant la date de création des versions.

Nous vous recommandons de publier votre logiciel en canaux. Chaque canal est une série de versions présentant des mises à jour rétrocompatibles. Cette approche garantit que vos utilisateurs peuvent mettre à jour leurs installations avec un minimum d'étapes manuelles. Si vous activez les mises à jour gérées pour votre application, les utilisateurs peuvent mettre à jour leurs déploiements via Cloud Console en quelques clics.

Vos canaux de version peuvent être basées sur une version majeure, telle que 4.x, ou des versions mineures, telles que 4.1.x. Une bonne pratique consiste à éviter d'utiliser des noms de version génériques tels que latest.

Par exemple, si vous publiez la version 2.0 de votre logiciel sur Google Cloud Marketplace et que les versions 2.0.1, 2.0.5, etc., sont rétrocompatibles avec 2.0, placez ces versions sur le canal de publication 2.0. Lorsque vous publiez des mises à jour sur ce canal, les utilisateurs sont invités à mettre à jour leurs installations sur Cloud Console.

Lorsque vous publiez une version de votre application incompatible avec les précédentes, ou une version qui oblige les utilisateurs à suivre une procédure de migration manuelle, publiez-la sur un nouveau canal, afin que les utilisateurs puissent planifier leurs mises à jour.

Choisir des identifiants de produit

Vous devez sélectionner les identifiants suivants pour vos images d'entreprise, de produit et de conteneur, qui sont utilisés pour créer vos URL Google Cloud Marketplace et les URI de vos images de conteneur :

  • Nom de votre entreprise : Par exemple, si le nom de votre entreprise est Examplesoft Inc., vous pouvez utiliser l'identifiant examplesoft.

  • Nom de votre produit : Par exemple, si le nom de votre produit est Example Pro, utilisez l'identifiant example-pro.

  • Le canal de publication de votre produit, tel que 4.0.

    Voir les conditions requises pour organiser vos releases.

  • Images de conteneur : Sélectionnez un identifiant unique pour chaque image de conteneur dans votre application. Les identifiants suivants sont requis pour toutes les applications :

    • Image principale : cette image de conteneur est l'image principale de votre produit, elle utilise le même identifiant que celui-ci. Par exemple, si votre identifiant de produit est example-pro, l'image principale utilise le même identifiant.
    • deployer : image du conteneur de déploiement destinée au canal. Le conteneur de déploiement s'exécute lorsque les utilisateurs déploient votre application à partir de Google Cloud Console. Vous créez une image de déploiement lorsque vous créez votre package d'application.

Par exemple, pour son produit Example Pro, l'entreprise Examplesoft Inc. choisit les identifiants suivants :

Nom Identifiant
Société Examplesoft Inc examplesoft
Produit Example Pro example-pro
Image [1] (primaire) Serveur Example Pro N/A
Image [2] File d'attente Example example-queue
Image [deployer] N/A deployer
Canal de publication [1] Version 4.xx 4.0
Canal de publication [2] Version 5.xx 5,0

Pour ces identifiants, les informations suivantes sont générées automatiquement :

  • URL du produit dans Google Cloud Marketplace : https://console.cloud.google.com/marketplace/details/examplesoft/example-pro

  • URI de l'image du conteneur :

    • marketplace.gcr.io/examplesoft/example-pro:4.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:4.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:4.0
    • marketplace.gcr.io/examplesoft/example-pro:5.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:5.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:5.0