Als cloudbeheerder kunt u gebruikmaken van de Google Cloud Platform-plug-in om instantieresources op basis van plug-ins in te richten wanneer u uw infrastructuur bouwt. U kunt ook toewijzingshelpers gebruiken om toewijzingslogica voor uw instanties te leveren.

U kunt eenvoudig uw instanties configureren om uw infrastructuurbehoeften te ondersteunen met behulp van de nieuwste GCP-eigenschappen. Als u bijvoorbeeld verstoringen van uw instanties tijdens een update wilt vermijden, kunt u tijdens de inrichting de eigenschap most_disruptive_allowed_action in uw cloudsjabloon gebruiken.

Nadat u uw instantie heeft geïmplementeerd, kunt u acties voor dag 2 uitvoeren om de resource te beheren, zoals het koppelen van extra schijven aan de resource.

Zie Ontwerpen en implementaties op basis van plug-ins in Automation Assembler voor meer informatie over plug-ins en toewijzing in VMware Aria Automation

Instantie-eigenschappen

De volgende eigenschappen zijn vereist voor instanceresources op basis van plug-ins.

Raadpleeg de documentatie voor Google Cloud REST voor een volledige lijst met instantie-eigenschappen. Resource-eigenschappen in de GCP-documentatie worden geschreven in camelCase, terwijl resource-eigenschappen in Automation Assembler worden geschreven in snake_case.

name De naam voor de instantie.

Zie Naamgevingsconventie in de documentatie voor Google Cloud voor naamgevingsvereisten.

zone De zone waar de instantie wordt geïmplementeerd.

Zie Regio en zones in de documentatie voor Google Cloud voor meer informatie.

account Het GCP-cloudaccount voor accountregio's waarop uw team cloudsjablonen implementeert.

Zie Een Google Cloud Platform-cloudaccount maken in VMware Aria Automation voor meer informatie.

De volgende sectie bevat een voorbeeld van een cloudsjabloon voor het inrichten van instanties op basis van plug-ins in Automation Assembler.

Een afgeschermde instantie inrichten met een afzonderlijke schijfresource

In de volgende sjabloon ziet u hoe u een afgeschermde instantie kunt inrichten met toewijzingshelpers. In dit voorbeeld maakt u een schijf en koppelt u deze aan de afgeschermde instantieresource.

Voordat u deze sjabloon implementeert, voert u de volgende stappen uit:
  1. Maak uw GCP-cloudaccount in Automation Assembler, maak een project en voeg uw cloudzones toe.

    In dit voorbeeld is de cloudzone europe-central2.

  2. Stel uw imagetoewijzing voor het project in.

    De gekozen afbeelding moet functies van de afgeschermde instantie ondersteunen.

  3. Stel uw soorttoewijzing voor het project in.

    In dit voorbeeld is de soort n1 toegewezen aan het GCP-machinetype n1-standard-1.

  4. Stel uw netwerkprofiel in met de tag default in dezelfde cloudzone om deze toe te wijzen aan het standaard GCP-netwerk.
  5. Als u een versleutelingssleutel gebruikt, moet u de sleutelring en de sleutel maken voordat u de blueprint implementeert. In deze voorbeeldsjabloon wordt een algemene sleutelring gebruikt. De sleutel-id wordt doorgegeven als invoer voor de sjabloon. Raadpleeg de documentatie voor de Cloud Key Management Service van GCP voor meer informatie.
formatVersion: 1
inputs:
  name:
    type: string
    title: VM name
  kms_key_name:
    type: string
    title: Full key name
    description: 'Example format for a global key ring: projects/<project>/locations/global/keyRings/<ring>/cryptoKeys/<key>'
resources:
  Allocations_Compute_1:
    type: Allocations.Compute
    properties: {}
  Allocations_Network_1:
    type: Allocations.Network
    properties:
      networkType: existing
      constraints:
        - tag: default
  Allocations_Flavor_1:
    type: Allocations.Flavor
    properties:
      flavor: n1
  Allocations_Image_1:
    type: Allocations.Image
    properties:
      image: centos-7-shielded
  BOOT_DISK:
    type: Idem.GCP.COMPUTE.DISK
    properties:
      name: idem-disk-${input.name}-boot
      account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
      zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.id}
      type_: ${'projects/' + resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/diskTypes/pd-balanced'}
      size_gb: 20
      source_image: ${resource.Allocations_Image_1.selectedImageId}
      disk_encryption_key:
        kms_key_name: ${input.kms_key_name}
  Idem_GCP_COMPUTE_INSTANCE_1:
    type: Idem.GCP.COMPUTE.INSTANCE
    properties:
      name: ${input.name}
      zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.id}
      account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
      can_ip_forward: false
      machine_type: ${'projects/' + resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/machineTypes/' + resource.Allocations_Flavor_1.selectedInstanceTypeName }
      shielded_instance_config:
        enable_integrity_monitoring: true
        enable_secure_boot: true
        enable_vtpm: true
      network_interfaces:
        - access_configs:
            - kind: compute#accessConfig
              name: External NAT
              network_tier: PREMIUM
              set_public_ptr: false
              type_: ONE_TO_ONE_NAT
          kind: compute#networkInterface
          name: nic0
          stack_type: IPV4_ONLY
          subnetwork: ${'projects/' + resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project + '/regions/' + resource.Allocations_Compute_1.selectedRegion.id + '/subnetworks/' + resource.Allocations_Network_1.selectedSubnet.name }
      disks:
        - auto_delete: false
          boot: true
          device_name: ${resource.BOOT_DISK.name}
          source: ${resource.BOOT_DISK.resource_id}
          mode: READ_WRITE
          type_: PERSISTENT
        - auto_delete: false
          boot: false
          device_name: idem-disk-${input.name}-additional
          initialize_params:
            disk_size_gb: 15
            disk_type: ${'projects/' + resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/diskTypes/pd-balanced'}
          disk_encryption_key:
            kms_key_name: ${input.kms_key_name}
          mode: READ_WRITE
          type_: PERSISTENT
      scheduling:
        automatic_restart: true
        on_host_maintenance: MIGRATE
        preemptible: false
        provisioning_model: STANDARD
      deletion_protection: false