Informazioni sulle configurazioni

Una configurazione definisce la struttura del deployment. Devi specificare una configurazione per creare un deployment.

In questo passaggio accederai a una configurazione che crea un deployment con due istanze di macchine virtuali (VM) Compute Engine. Un'istanza VM è uno di diversi tipi di risorse di cui puoi eseguire il deployment con Deployment Manager.

In questo passaggio esaminerai una configurazione per un deployment con due istanze VM.

Apri il file YAML di configurazione

Passa alla directory che hai creato in Installazione e configurazione:

cd deploymentmanager-samples/examples/v2/step_by_step_guide/step2_create_a_configuration

Poi apri two-vms.yaml:

nano two-vms.yaml   # use your preferred text editor

Tieni presente che nella sezione resources sono presenti due risorse: the-first-vm e the-second-vm. Ogni risorsa ha un campo name, type e properties:

  • name: un nome definito per la risorsa.

  • type: specifica il tipo di risorsa che stai creando. Ad esempio, una VM è compute.v1.instance. Analogamente, un'istanza Cloud SQL
    istanza ha il tipo sql.v1beta4.instance.

  • properties: specifica le proprietà della risorsa. Proprietà necessarie per creare la risorsa sono le stesse richieste l'API della risorsa. Ad esempio, quando crei una VM di Compute Engine Ad esempio, devi fornire un tipo di macchina, un'immagine, un'interfaccia di rete e le specifiche del disco di avvio.

Configura il file di configurazione

In two-vms.yaml, sostituisci MY_PROJECT con l'ID del tuo progetto.

# Copyright 2016 Google Inc. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

resources:
- name: the-first-vm
  type: compute.v1.instance
  properties:
    zone: us-central1-f
    machineType: https://www.googleapis.com/compute/v1/projects/MY_PROJECT/zones/us-central1-f/machineTypes/f1-micro
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/family/debian-11
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/MY_PROJECT/global/networks/default
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT
- name: the-second-vm
  type: compute.v1.instance
  properties:
    zone: us-central1-f
    machineType: https://www.googleapis.com/compute/v1/projects/MY_PROJECT/zones/us-central1-f/machineTypes/g1-small
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/family/debian-11
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/MY_PROJECT/global/networks/default
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT

Salva le modifiche.

Questo file di configurazione di base è tutto ciò che ti serve per creare il tuo primo deployment. Hai dichiarato le risorse che vuoi creare (in questo caso, due VM con tipi di macchina diversi) e Deployment Manager prende nella creazione delle risorse.

Nel passaggio successivo, utilizzerai questa configurazione per eseguire il deployment di nuove risorse.