Como entender as configurações

Uma configuração define a estrutura da sua implantação. Você precisa especificar uma configuração para criar uma implantação.

Nesta etapa, você acessará uma configuração que cria uma implantação com duas instâncias de VM do Compute Engine. Uma instância de VM é um dos vários tipos de recursos que é possível implantar com o Deployment Manager.

Nesta etapa, você examinará uma configuração para uma implantação com duas instâncias de VM.

Abra o arquivo YAML de configuração

Altere o diretório atual para o que você criou na Instalação e configuração:

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

Em seguida, abra two-vms.yaml:

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

Na seção resources, observe que há dois recursos: the-first-vm e the-second-vm. Cada recurso tem um campo name, type e properties:

  • name: um nome que você define para o recurso.

  • type: especifica o tipo de recurso que você está criando. Por exemplo, uma máquina virtual é compute.v1.instance. Da mesma forma, uma instância do Cloud SQL
    tem o tipo sql.v1beta4.instance.

  • properties: especifica as propriedades do recurso. As propriedades necessárias para criar o recurso são as mesmas propriedades exigidas pela API do recurso. Por exemplo, ao criar uma instância de máquina virtual do Compute Engine, você precisa fornecer um tipo de máquina, uma imagem, uma interface de rede e uma especificação de disco de inicialização.

Configurar o arquivo de configuração

Em two-vms.yaml, substitua MY_PROJECT pelo ID do seu projeto.

# 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-9
    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-9
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/MY_PROJECT/global/networks/default
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT

Salvar alterações

Este arquivo de configuração básico é tudo de que você precisa para criar sua primeira implantação. Você declarou os recursos que pretende criar (nesse caso, duas instâncias de máquina virtual que tinham tipos de máquinas diferentes), e o Deployment Manager cuida da criação dos recursos.

Na próxima etapa, você usará essa configuração para implantar novos recursos.