Créer une solution basée sur Deployment Manager

Lorsque vous créez des solutions Service Catalog pour les utilisateurs de votre organisation, vous pouvez créer une solution Deployment Manager (DM), que les utilisateurs lancent à l'aide d'un modèle Deployment Manager. Après avoir créé une solution, vous pouvez la partager avec vos utilisateurs en l'ajoutant aux catalogues.

Avant de commencer

  • Vous devez disposer du rôle Administrateur du catalogue (roles/cloudprivatecatalogproducer.admin) OU Gestionnaire du catalogue (roles/cloudprivatecatalogproducer.manager) pour le projet Google Cloud dans lequel Service Catalog est activé. Si vous ne disposez pas de l'un ou l'autre de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.

  • Enable the Cloud Deployment Manager and Compute Engine APIs.

    Enable the APIs

Préparer le modèle de déploiement

Pour créer une solution Deployment Manager dans Service Catalog, vous devez d'abord préparer un fichier ZIP du modèle Deployment Manager à importer, qui doit contenir les fichiers suivants :

  • Un fichier de modèle Jinja se terminant par l'extension .jinja ou un fichier de modèle Python se terminant par l'extension .py
  • Un fichier de schéma se terminant par l'extension .jinja.schema pour un modèle Jinja ou l'extension py.schema pour un modèle Python

Le nom du fichier ZIP doit correspondre aux noms du schéma et des fichiers Jinja ou Python. Par exemple, si le fichier zip est nommé android-dev-environment.zip, le fichier de schéma Jinja dans le fichier ZIP doit être nommé android-dev-environment.jinja.schema et le modèle Jinja doit être nommé android-dev-environment.jinja.

L'exemple de code suivant illustre un fichier de schéma pour créer un formulaire de déploiement :



info:
  title: Single Google Compute Engine Machine
  author: Google Inc.
  description: Creates a virtual machine based on zone and machine type selection.

required:
  - machinetype
  - zone

properties:
  machinetype:
    title: Machine type
    type: string
    enum:
      - n1-standard-1
      - n1-standard-2
      - n1-standard-4
      - n1-highmem-2
      - n1-highmem-4
      - n1-highmem-8
      - n1-highcpu-2
      - n1-highcpu-4
      - n1-highcpu-8
      - f1-micro
      - g1-small
  zone:
    title: Zone
    type: string
    enum:
      - us-central1-a
      - us-central1-c
      - us-east1-b
      - us-east1-c
      - us-west1-a
      - us-west1-b
      - us-west1-c

L'exemple de code suivant illustre un fichier Jinja permettant de créer une VM persistante :



# Creates a Persistent VM
resources:
- type: compute.v1.instance
  name: vm-{{ env["deployment"] }}
  properties:
    zone: {{ properties["zone"] }}
    # Note the machineType definition at the end. custom-4-5120 specifies 4 CPUs and 5GB (5120 MB) of RAM
    machineType: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/machineTypes/{{ properties["machinetype"] }}
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        diskName: disk-{{ env["deployment"] }}
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/family/debian-9
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/global/networks/default
      # Access Config required to give the instance a public IP address
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT

Créer la solution dans Service Catalog

Pour créer une solution basée sur un modèle Deployment Manager, procédez comme suit :

  1. Accédez à la page Solutions d'administrateur de Service Catalog dans Cloud Console.
    Accéder à la page Solutions

  2. Cliquez sur Sélectionner pour choisir le projet Google Cloud.

  3. Cliquez sur CRÉER UNE SOLUTION. Dans la liste déroulante, sélectionnez Créer une solution Deployment Manager.

  4. Saisissez un nom, une description et un slogan pour votre solution. Le slogan est une brève description d'une solution que les utilisateurs voient lorsqu'ils parcourent Service Catalog.

  5. Importez un fichier ZIP contenant les fichiers pour une configuration de déploiement.

  6. Si vous le souhaitez, importez une icône pour la solution. Les dimensions recommandées pour une icône sont de 80 x 80 pixels.

  7. Si vous le souhaitez, indiquez un lien vers l'assistance et les coordonnées pour le créateur.

  8. Si vous le souhaitez, ajoutez un lien vers la documentation de la solution.

  9. Cliquez sur CREATE (CRÉER).

La capture d'écran suivante illustre la création d'une solution basée sur des liens :

Créer une solution basée sur un modèle Cloud Deployment Manager

Étapes suivantes

  • Attribuez la solution à un catalogue afin que les utilisateurs de votre organisation puissent y accéder et la déployer.