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.
- Maak uw GCP-cloudaccount in Automation Assembler, maak een project en voeg uw cloudzones toe.
In dit voorbeeld is de cloudzone europe-central2.
- Stel uw imagetoewijzing voor het project in.
De gekozen afbeelding moet functies van de afgeschermde instantie ondersteunen.
- Stel uw soorttoewijzing voor het project in.
In dit voorbeeld is de soort
n1
toegewezen aan het GCP-machinetype n1-standard-1. - Stel uw netwerkprofiel in met de tag
default
in dezelfde cloudzone om deze toe te wijzen aan het standaard GCP-netwerk. - 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 metadata: layoutPosition: - 0 - 0 properties: {} Allocations_Network_1: type: Allocations.Network metadata: layoutPosition: - 0 - 1 properties: networkType: existing constraints: - tag: default Allocations_Flavor_1: type: Allocations.Flavor metadata: layoutPosition: - 0 - 2 properties: flavor: n1 Allocations_Image_1: type: Allocations.Image metadata: layoutPosition: - 0 - 3 properties: image: centos-7-shielded BOOT_DISK: type: Idem.GCP.COMPUTE.DISK metadata: layoutPosition: - 1 - 1 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 metadata: layoutPosition: - 2 - 2 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