Informações gerais

Neste documento, apresentamos uma breve visão geral dos rótulos e dos recursos deles.

O que são rótulos?

Um rótulo é um par de chave-valor que pode ser atribuído aos recursos do Google Cloud. Eles ajudam a organizar esses recursos e gerenciar seus custos em escala, com a granularidade necessária. É possível anexar um rótulo a cada recurso e filtrar os recursos com base nesses rótulos. As informações sobre rótulos são encaminhadas ao sistema de faturamento, permitindo que você detalhe as cobranças faturadas por rótulo. Com os relatórios de faturamento integrados, é possível filtrar e agrupar custos por rótulos de recursos. Também é possível usar rótulos para consultar as exportações de dados de faturamento.

Requisitos para rótulos

Os rótulos aplicados a um recurso precisam atender aos seguintes requisitos:

  • Cada recurso pode ter até 64 rótulos.
  • Cada rótulo precisa ser um par de chave-valor.
  • As chaves têm comprimento mínimo de 1 e máximo de 63 caracteres. Além disso, elas não podem estar vazias. Os valores podem estar vazios e ter um comprimento máximo de 63 caracteres.
  • As chaves e os valores contêm apenas letras minúsculas, caracteres numéricos, sublinhados e traços. Todos os caracteres precisam usar a codificação UTF-8, e os caracteres internacionais são permitidos. As chaves precisam começar com uma letra minúscula ou um caractere internacional.
  • A parte principal de um rótulo de cluster precisa ser exclusiva em um único recurso. No entanto, é possível usar a mesma chave com vários recursos.

Esses limites se aplicam à chave e ao valor de cada rótulo e aos recursos individuais do Google Cloud que têm rótulos. Não há limite para a quantidade de rótulos que podem ser aplicados a todos os recursos em um projeto.

Usos comuns dos rótulos

Veja alguns casos de uso comum para rótulos:

  • Rótulos de centro de custo ou de equipe: adicione rótulos com base na equipe ou no centro de custo para distinguir os recursos pertencentes a equipes diferentes (por exemplo, team:research e team:analytics). É possível usar esse tipo de rótulo para contabilidade de custos ou em orçamentos.

  • Rótulos de componentes: por exemplo, component:redis, component:frontend, component:ingest e component:dashboard.

  • Rótulos de ambientes ou de estágios: por exemplo, environment:production e environment:test.

  • Rótulos de estado: por exemplo, state:active, state:readytodelete e state:archive.

  • Rótulos de propriedade: usados para identificar as equipes responsáveis pelas operações, por exemplo: team:shopping-cart.

  • Rótulos de rede: um rótulo pode ser anexado a uma máquina virtual. As tags de rede definidas no passado aparecerão como um rótulo sem um valor.

Não recomendamos a criação de um grande número de rótulos exclusivos, como para carimbos de data/hora ou valores individuais para todas as chamadas de API. O problema com essa abordagem é que, quando os valores mudam com frequência ou com chaves que desordenam o catálogo, isso dificulta a filtragem e a geração de relatórios sobre os recursos.

Rótulos e tags

Os rótulos podem ser usados como anotações de consulta para recursos, mas não podem ser usados para definir condições em políticas. Com as tags, é possível permitir ou negar políticas condicionalmente com base em um recurso ter ou não uma tag específica, fornecendo controle refinado sobre as políticas. Para mais informações, consulte a Visão geral das tags.

Permissões

As seguintes permissões são necessárias quando você precisa adicionar, modificar e ver rótulos de projetos:

  • É possível adicionar ou modificar um rótulo chamando o método projects.patch(). Isso exige a permissão resourcemanager.projects.update.
  • É possível ver o rótulo de um projeto, chamando o método projects.get(). Isso exige a permissão resourcemanager.projects.get.

Entender os custos usando rótulos

É possível anexar um rótulo a um recurso e filtrar recursos com base nesse rótulo. As informações sobre rótulos são encaminhadas ao sistema de faturamento, o que permite detalhar as cobranças faturadas por rótulo.

Aqui estão algumas maneiras de usar rótulos para entender os custos:

  • É possível adicionar rótulos como costcenter=cost_center_name, service=service_name e environment=environment_name às VMs ou aos buckets do Cloud Storage. Isso permite que você entenda onde seus recursos são implantados, para que finalidade e o centro de custo em que eles serão cobrados.
  • É possível ativar a exportação de dados de faturamento para o BigQuery. Os rótulos são exportados para o BigQuery com os recursos correspondentes do Google Cloud e o uso deles. Isso permite monitorar aspectos como o custo de execução do serviço de carrinho de compras no aplicativo ou o custo das máquinas de teste do desenvolvedor.
  • É possível usar o BigQuery com rótulos para entender o custo de todos os recursos do sistema de teste em comparação com os recursos de produção ou o custo de um determinado serviço.

Exemplo

Neste exemplo, o custo dos serviços playlist para um projeto é determinado pela exportação de uso e rótulos para o BigQuery. Para fazer isso, ative a exportação de faturamento para o BigQuery. labels-demo-prj é a fonte do uso de recursos e labels_demo_bqexport é o conjunto de dados de destino em que os dados de uso são armazenados. Depois de exportar o uso e os rótulos para o BigQuery, é possível determinar os custos do serviço playlist.

Confira os detalhes do uso do Compute Engine e o custo associado no BigQuery.