Creazione di una soluzione basata su Deployment Manager
Quando crei soluzioni del catalogo dei servizi per gli utenti della tua organizzazione, puoi creare una soluzione Deployment Manager (DM), che gli utenti avviano utilizzando un modello di Deployment Manager. Dopo aver creato una soluzione, puoi condividerla con i tuoi utenti aggiungendola ai cataloghi.
Prima di iniziare
Devi disporre del ruolo Amministratore del catalogo (
roles/cloudprivatecatalogproducer.admin) OPPURE Gestore del catalogo (roles/cloudprivatecatalogproducer.manager) per l' Google Cloud organizzazione associata al Google Cloud progetto in cui è abilitato il catalogo dei servizi. Se non disponi di questo ruolo, contatta l'Amministratore organizzazione per richiedere l'accesso.-
Abilita le API Cloud Deployment Manager e Compute Engine.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre dell'autorizzazione
serviceusage.services.enable. Se hai creato il progetto, probabilmente hai già questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore di Service Usage (roles/serviceusage.serviceUsageAdmin). Scopri come concedere i ruoli.
Preparazione del modello di deployment
Per creare una soluzione Deployment Manager nel catalogo dei servizi, devi prima preparare un file ZIP del modello di Deployment Manager da caricare, che deve contenere i seguenti file:
- Un file di modello Jinja che termina con l'estensione
.jinjao un file di modello Python che termina con l'estensione.py. - Un file di schema che termina con l'estensione
.jinja.schemaper un modello Jinja o l'estensionepy.schemaper un modello Python.
Il nome del file ZIP deve corrispondere ai nomi dei file di schema e Jinja o Python. Ad esempio, se il file ZIP si chiama
android-dev-environment.zip, il file di schema Jinja all'interno del file ZIP deve essere
denominato android-dev-environment.jinja.schema e il modello Jinja deve essere
denominato android-dev-environment.jinja.
Il seguente esempio di codice illustra un file di schema per creare un modulo di deployment:
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:
- n2-standard-2
- n2-standard-4
- n2-standard-8
- n2-highmem-2
- n2-highmem-4
- n2-highmem-8
- n2-highcpu-2
- n2-highcpu-4
- n2-highcpu-8
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
Il seguente esempio di codice illustra un file Jinja per creare una VM permanente:
# Creates a Persistent VM
resources:
- type: compute.v1.instance
name: vm-{{ env["deployment"] }}
properties:
zone: {{ properties["zone"] }}
# Note the machineType definition at the end. n2-custom-4-5120 specifies n2 machine family with 4 CPUs and 5GB (5120 MB) of RAM. For custom machine types, refer to https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type
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
Creazione della soluzione nel catalogo dei servizi
Per creare una soluzione basata su un modello di Deployment Manager:
Vai alla pagina Soluzioni di amministrazione del catalogo dei servizi nella Google Cloud console.
Vai alla pagina SoluzioniFai clic su Seleziona per scegliere il Google Cloud progetto.
Fai clic su CREA SOLUZIONE. Nell'elenco a discesa, seleziona Crea una soluzione DM.
Inserisci un nome, una descrizione e uno slogan per la soluzione. Lo slogan è una breve descrizione di una soluzione che gli utenti vedono mentre sfogliano il catalogo dei servizi.
Carica un file ZIP contenente i file per una configurazione di deployment configuration.
(Facoltativo) Carica un'icona per la soluzione. Le dimensioni consigliate per un'icona sono 80 x 80 pixel.
(Facoltativo) Inserisci un link per la raccolta fondi e i dati di contatto del creator.
(Facoltativo) Aggiungi un link alla documentazione della soluzione.
Fai clic su CREA.
La seguente schermata illustra la creazione di una soluzione basata su Deployment Manager:
Passaggi successivi
- Assegna la soluzione a un catalogo in modo che gli utenti della tua organizzazione possano accedere alla soluzione ed eseguirne il deployment.