Como organizar seus recursos


Visão geral

O Config Connector pode criar e gerenciar recursos do Google Cloud no nível do projeto, da pasta ou da organização. O Config Connector precisa determinar:

  • Define se o recurso será criado no nível do projeto, da pasta ou da organização.
  • que projeto, pasta ou organização usar.

Como resultado, o Config Connector primeiro verifica se há um campo de definição de escopo na especificação de recurso. Se não for encontrado, ele verifica se há uma anotação de definição de escopo. A maioria dos recursos do Google Cloud pode ser criada apenas para envolvidos no projeto.

Depois que um recurso é criado, independentemente de como o escopo é definido, o campo ou a anotação se torna imutável. Para alterar o escopo de um recurso, exclua o recurso atual e crie um novo em outro projeto, pasta ou escopo de organização.

Campo de definição do escopo

Um campo de especificação do recurso para definir o escopo faz parte da especificação do recurso e só pode ser definido na configuração do recurso. Ele segue a convenção de nomenclatura de SCOPERef. Dependendo do tipo de recurso, o esquema da especificação pode conter pelo menos um dos seguintes campos:

  • projectRef
  • folderRef
  • organizationRef

Anotação de definição de escopo

Você pode definir uma anotação de definição de escopo na configuração do recurso ou no namespace do Kubernetes que contém o recurso. Há três tipos de anotações para definição de escopo, dependendo do tipo de recurso:

  • cnrm.cloud.google.com/project-id
  • cnrm.cloud.google.com/folder-id
  • cnrm.cloud.google.com/organization-id

A maioria dos recursos do Config Connector é compatível com campos de definição de escopo. Recomendamos campos em vez de anotações de definição de escopo porque um campo desse tipo torna a especificação do recurso mais autossuficiente e permite a criação de um escopo e dos recursos contidos dele em uma única etapa. Para recursos que não oferecem suporte a campos de definição de escopo, é possível fornecer a anotação de definição de escopo na configuração deles ou padronizar a anotação para todos os recursos em um namespace específico anotando o namespace. A anotação de namespace será ignorada se o recurso tiver a anotação de definição de escopo diretamente na configuração.

Exceções

Se o conceito de escopo não se aplicar a um recurso do Config Connector, não será necessário especificar um escopo de projeto, pasta ou organização. Especificamente, se um recurso listado na página de referência do recurso não tiver um campo ou uma anotação de definição de escopo, não será necessário adicionar um escopo.

Alguns recursos, como BillingBudgetsBudget, estão vinculados a uma conta de faturamento do Google Cloud e exigem que você especifique as informações dessa conta.

Os recursos do IAM, incluindo IAMPolicy, IAMPartialPolicy, IAMPolicyMember e IAMAuditConfig, não exigem que você forneça um escopo. Em vez disso, esses recursos estão anexados a outro recurso do Google Cloud por meio do campo spec.resourceRef. Esse outro recurso do Google Cloud pode ser um PubSubTopic, um SpannerInstance ou até mesmo um "escopo", como projeto, pasta ou organização, que são modelados como um recurso do Google Cloud.

A seguir

Veja como aplicar os seguintes tipos de escopos: