L'amministratore del cloud può creare e gestire snapshot basati su plug-in dei dischi Google Cloud Platform (GCP) in Automation Assembler.
Se è necessario creare un backup di un disco, è possibile utilizzare la risorsa Snapshot nei modelli cloud. È possibile collegare la risorsa Snapshot a qualsiasi tipo di disco. È inoltre possibile creare una nuova istanza o un nuovo disco utilizzando uno snapshot. Dopo aver creato lo snapshot, è possibile accedere alla console Google Cloud per visualizzare lo snapshot.
La sezione seguente contiene alcuni modelli cloud di esempio per l'utilizzo di snapshot.
Creazione di uno snapshot di un disco di avvio
formatVersion: 1
inputs: {}
resources:
Allocations_Image_1:
type: Allocations.Image
properties:
image: ubuntu
Allocations_Network_1:
type: Allocations.Network
properties:
networkType: existing
Allocations_Compute_1:
type: Allocations.Compute
properties:
accountType: gcp
Allocations_Flavor_1:
type: Allocations.Flavor
properties:
flavor: small
mysql:
type: Idem.GCP.COMPUTE.INSTANCE
properties:
name: mysql
zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.id}
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
project: ${resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project}
network_interfaces:
- 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:
- device_name: ${resource.mysql-boot-disk.name}
source: ${resource.mysql-boot-disk.resource_id}
boot: true
- boot: false
device_name: ${resource.mssql-attached-disk.name}
source: ${resource.mssql-attached-disk.resource_id}
machine_type: ${'/projects/' + resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/machineTypes/' + resource.Allocations_Flavor_1.selectedInstanceTypeName}
mssql-attached-disk:
type: Idem.GCP.COMPUTE.DISK
properties:
name: attached-disk
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
size_gb: 1
project: ${resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project}
zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.name}
type: ${'/projects/' + resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/diskTypes/pd-extreme'}
mysql-boot-disk:
type: Idem.GCP.COMPUTE.DISK
properties:
name: mysql-boot-disk
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
size_gb: 12
project: ${resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project}
zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.name}
type: ${'/projects/' + resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/diskTypes/pd-balanced'}
mysql-disk-snapshot:
type: Idem.GCP.COMPUTE.SNAPSHOT
dependsOn: ''
properties:
name: mysql-boot-disk-snapshot
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
source_disk: ${resource.mysql-boot-disk.resource_id}
I binding vengono utilizzati per passare resource_id di mysql-boot-disk alla risorsa Snapshot.
Creazione di una nuova istanza da uno snapshot
atVersion: 1
inputs:
disk-snapshot-Id:
type: string
title: Disk Snapshot Link id
resources:
Allocations_Image_1:
type: Allocations.Image
properties:
image: ubuntu
Allocations_Network_1:
type: Allocations.Network
properties:
networkType: existing
Allocations_Compute_1:
type: Allocations.Compute
properties:
accountType: gcp
Allocations_Flavor_1:
type: Allocations.Flavor
properties:
flavor: small
mysql:
type: Idem.GCP.COMPUTE.INSTANCE
properties:
name: mysql-from-snapshot
zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.id}
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
project: ${resource.Allocations_Compute_1.selectedCloudAccount.additionalProperties.gcp.project}
network_interfaces:
- 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:
- device_name: ${resource.restored-disk.name}
source: ${resource.restored-disk.resource_id}
boot: true
machine_type: ${'/projects/' + resource.Allocations_Flavor_1.selectedCloudAccount.additionalProperties.gcp.project + '/zones/' + resource.Allocations_Compute_1.selectedPlacementCompute.id + '/machineTypes/' + resource.Allocations_Flavor_1.selectedInstanceTypeName}
restored-disk:
type: Idem.GCP.COMPUTE.DISK
properties:
name: restored
account: ${resource.Allocations_Compute_1.selectedCloudAccount.name}
disk_name: restored-boot
zone: ${resource.Allocations_Compute_1.selectedPlacementCompute.id}
source_snapshot: ${input.disk-snapshot-Id}
boot: true
È possibile utilizzare i parametri di input per consentire agli utenti di immettere il valore snapshot-Id dello snapshot da utilizzare per il disco di avvio.