Como administrador de nuvem, você pode aproveitar o plug-in Google Cloud Platform (GCP) para provisionar buckets de armazenamento baseados em plug-ins à medida que cria sua infraestrutura. Você também pode usar auxiliares de alocação para fornecer lógica de alocação para seus buckets de armazenamento. O suporte para buckets de armazenamento baseados em plug-in inclui a criação de buckets de armazenamento multi-regionais/regionais, acesso público restrito e criptografia.
Para saber mais sobre plug-ins e alocação no VMware Aria Automation, consulte Designs e implantações baseados em plug-in no Automation Assembler
Propriedades do bucket de armazenamento
As propriedades a seguir são necessárias para recursos de bucket de armazenamento baseados em plug-in. Consulte a documentação REST do Google Cloud para obter uma lista completa das propriedades da instância. As propriedades de recursos na documentação do GCP são escritas em camelCase, em que, como propriedades de recursos no Automation Assembler são escritas em snake case.
Propriedade | Descrição |
---|---|
name |
O nome do seu bucket de armazenamento. O nome associado ao bucket não pode ser alterado após a criação. Portanto, o nome deve ser exclusivo e legível pelo homem. Consulte os Nomes do bucket na documentação do Google Cloud para obter os requisitos de nome do bucket. |
account |
A conta de nuvem do GCP para regiões de conta nas quais sua equipe implanta modelos de nuvem. Consulte Criar uma conta de nuvem do Google Cloud Platform no VMware Aria Automation para obter mais informações. |
A seção a seguir contém alguns exemplos de modelos de nuvem para o provisionamento de buckets de armazenamento baseados em plug-in no Automation Assembler.
Provisionando buckets de armazenamento de região única
Você pode provisionar um bucket de armazenamento de região única codificando a região no modelo de nuvem, como mostra o exemplo a seguir.
formatVersion: 1 inputs: {} resources: Idem_GCP_STORAGE_BUCKET_1: type: Idem.GCP.STORAGE.BUCKET metadata: layoutPosition: - 0 - 0 properties: name: bucket-test account: gcp-account location: us-central1
Opcionalmente, você pode usar a propriedade enum
para criar uma lista de regiões para os usuários escolherem. Nesse exemplo, você também ativa o controle de versão para o bucket, usa rótulos de bucket e permite que os usuários escolham uma classe de armazenamento.
formatVersion: 1 inputs: region: type: string title: Region description: Google region # This enumeration is used to simplify the choosing of a region. You can just hardcode the region in the "region" section. enum: - europe-central2 - europe-north1 - europe-southwest1 - europe-west1 - europe-west2 - europe-west3 - europe-west4 - europe-west6 - europe-west8 - europe-west9 - europe-west12 loc: type: string title: Location label bucket: type: string title: Bucket name storage_class: type: string title: Storage class enum: - STANDARD - NEARLINE - COLDLINE - ARCHIVE versioning: type: string title: Enable versioning enum: - 'Yes' - 'No' resources: Idem_GCP_STORAGE_BUCKET_1: type: Idem.GCP.STORAGE.BUCKET metadata: layoutPosition: - 0 - 0 properties: name: ${input.bucket} account: gcp-account labels: location: ${input.loc} location: ${input.region} storage_class: ${input.storage_class} versioning: enabled: ${input.versioning=="Yes"?true:false}
Provisionando buckets de armazenamento de região dupla
- Crie uma conta de nuvem do GCP com pelo menos duas zonas de nuvem que correspondam às regiões em que o bucket será implantado. Nesse exemplo, as zonas são europe-central2 e europe-north1.
- Crie um novo projeto e adicione as zonas de nuvem.
- Marque as zonas usando tags de recurso. Nesse exemplo, as tags são
location:eu1
para europe-central2 elocation:eu2
para europe-north1. - Implante o blueprint.
inputs: {} resources: Idem_GCP_STORAGE_BUCKET_1: type: Idem.GCP.STORAGE.BUCKET metadata: layoutPosition: - 0 - 1 properties: name: bucket-dual-region-idem account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} labels: a: b c: d custom_placement_config: data_locations: ${[resource.Allocations_Compute_1.selectedRegion.name, resource.Allocations_Compute_2.selectedRegion.name]} location: EU Allocations_Compute_1: type: Allocations.Compute metadata: layoutPosition: - 1 - 0 properties: groupId: 1 constraints: - tag: location:eu1 Allocations_Compute_2: type: Allocations.Compute metadata: layoutPosition: - 1 - 2 properties: groupId: 2 constraints: - tag: location:eu2
null
e implante novamente o modelo. Você pode verificar se o rótulo foi removido no Google Cloud Console.
Provisionando buckets de armazenamento de várias regiões
formatVersion: 1 inputs: {} resources: Idem_GCP_STORAGE_BUCKET_1: type: Idem.GCP.STORAGE.BUCKET metadata: layoutPosition: - 0 - 0 properties: name: bucket-test-1 account: gcp-account
formatVersion: 1 inputs: {} resources: Idem_GCP_STORAGE_BUCKET_1: type: Idem.GCP.STORAGE.BUCKET metadata: layoutPosition: - 0 - 0 properties: name: bucket-test-0 account: gcp-account labels: a: b c: d encryption: default_kms_key_name: projects/gcp-account/locations/us/keyRings/gcp-test-1/cryptoKeys/key-2