Adição de marcadores a uma implantação

Os rótulos são uma maneira leve de organizar implantações relacionadas ou associadas entre si. Por exemplo, uma prática comum é usá-los para separar implantações destinadas a produção, testes ou desenvolvimento. Isso facilita a pesquisa de implantações pertencentes a cada estágio, quando necessário.

O que são rótulos?

Um rótulo é um par de chave-valor que ajuda a organizar suas implantações do Google Cloud. É possível anexar um rótulo a cada recurso e filtrar os recursos com base nesses rótulos. As informações sobre os rótulos são encaminhadas ao sistema de faturamento para que você possa classificar as cobranças de faturamento por rótulo.

Usos comuns dos rótulos

Não recomendamos a criação de um grande número de rótulos exclusivos, como carimbos de data/hora ou valores individuais para todas as chamadas de API. Veja alguns casos de uso comum de 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 implantações pertencentes a equipes diferentes (por exemplo, team:research e team:analytics). É possível usar esse tipo de rótulo para contabilidade de custos ou orçamento.

  • 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.

Requisitos para rótulos

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

  • Cada recurso pode ter vários rótulos, até um máximo de 64.
  • 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.
  • A parte da chave de um rótulo precisa ser única. No entanto, use a mesma chave com vários recursos.
  • As chaves precisam começar com uma letra minúscula ou um caractere internacional.

Como criar uma implantação com marcadores

Ao criar uma implantação, é possível adicionar rótulos fornecendo um ou mais pares de chave-valor. Se você já tiver uma implantação, será possível atualizá-la para adicionar novos rótulos ou alterar os atuais.

Você precisa usar a ferramenta gcloud ou a API para criar uma implantação com rótulos.

gcloud

No gcloud, adicione rótulos à sua implantação, fornecendo a sinalização --labels, seguida por uma lista separada por vírgulas de pares de chave-valor. Por exemplo, a seguinte linha de comando adicionará dois rótulos à implantação, devserver=backend estorage=media:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels devserver=backend,storage=media

Para ver os rótulos aplicados à implantação, consiga uma descrição da implantação:

gcloud deployment-manager deployments describe example-deployment
---
fingerprint: 0p03t0z31PQLOrGH8KdhWQ==
id: '2204841443843636456'
insertTime: '2017-04-18T09:42:47.323-07:00'
labels:
- key: devserver
  value: backend
- key: storage
  value: media
manifest: manifest-1492533767362
name: example-deployment
operation:
  endTime: '2017-04-18T09:43:04.581-07:00'
  name: operation-1492533767010-54d7398ff76d1-7930b926-f64e72ae
  operationType: insert
  progress: 100
  startTime: '2017-04-18T09:42:48.034-07:00'
  status: DONE
  user:user@example.com

API

Na API, siga as instruções para criar sua implantação e inclua a nova propriedade labels no corpo da solicitação. Exemplo:

{
  "name": "example-deployment",
  "target": {
    "config": {
      "content": "..."
      },
   }
  "labels": [
  {
    "key": "devserver",
    "value": "backend"
  },
  {
    "key": "storage",
    "value": "media"
  }
 ]
}

Como remover marcadores

Console

  1. Acesse a página Implantações no Console do Google Cloud.

    Acessar a página "Implantações"

  2. Se solicitado, selecione o projeto e clique em Continuar.

  3. Marque a caixa ao lado da implantação dos rótulos que você quer remover. Um painel lateral aparecerá.

  4. Clique em X ao lado de cada rótulo que você quer remover.

  5. Salve as alterações.

gcloud

Em gcloud, remova os rótulos usando o comando deployments update e fornecendo a sinalização --remove-labels, seguida por uma lista separada por vírgulas de chaves de rótulos para remover.

Por exemplo, a seguinte expressão remove um rótulo com a tecla devserver:

gcloud deployment-manager deployments update example-deployment --remove-labels devserver

API

Na API, siga as instruções para atualizar sua implantação e inclua uma atualização para a implantação que não contenha a propriedade labels no corpo da solicitação, removendo efetivamente os rótulos.

Como adicionar ou atualizar rótulos

É possível adicionar marcadores novos ou atualizar os existentes nas implantações que você já tem.

Console

  1. Acesse a página Implantações no Console do Google Cloud.

    Acessar a página "Implantações"

  2. Se solicitado, selecione o projeto e clique em Continuar.

  3. Marque a caixa ao lado da implantação dos rótulos que você quer atualizar. Um painel lateral será exibido.

  4. Para alterar os valores dos rótulos, atualize as entradas apropriadas. Se quiser alterar a chave do rótulo, será necessário excluir o rótulo e adicioná-lo novamente com a nova chave.

  5. Salve as alterações.

gcloud

No gcloud, atualize ou adicione novos rótulos usando o comando deployments update e fornecendo a sinalização --update-labels, seguida por uma lista separada por vírgulas dos rótulos atualizados:

Por exemplo, o seguinte código atualiza o rótulo devserver:

gcloud deployment-manager deployments update example-deployment --update-labels devserver=frontend

API

Na API, siga as instruções para atualizar sua implantação e, no corpo da solicitação, omita a propriedade labels, que remove os rótulos da implantação.

Como adicionar rótulos durante as visualizações de implantações

Antes de criar uma implantação, é possível visualizá-la. Como parte da visualização, é possível atribuir rótulos à implantação. Por exemplo:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels devserver=backend --preview

Para alterar os rótulos durante a visualização, é preciso atualizá-la com os novos rótulos. Para saber mais sobre visualizações, consulte a documentação Como visualizar uma configuração.

Como filtrar pesquisas usando rótulos

Você pode pesquisar recursos e filtrar os resultados usando marcadores.

Console

  1. Acesse a página Implantações no Console do Google Cloud.

    Acessar a página "Implantações"

  2. Se solicitado, selecione o projeto e clique em Continuar.

  3. Na barra de pesquisa, comece a digitar labels. e a barra de pesquisa listará automaticamente os rótulos com que é possível filtrar.

gcloud

Na gcloud, crie uma solicitação list e use a sinalização --filter. Para filtrar rótulos, use a sintaxe labels.[KEY]=[VALUE]. Por exemplo, se você quiser filtrar um rótulo com env como a chave e dev como o valor, execute este comando:

gcloud deployment-manager deployments list --filter labels.env=dev

Para conseguir a documentação completa sobre a sintaxe do filtro na ferramenta do gcloud, consulte a documentação do gcloud topic filters.

API

Na API, faça uma solicitação de lista com um parâmetro de consulta filter codificado por URL. Por exemplo, para filtrar com base em uma chave de rótulo env que é igual ao valor dev, faça a seguinte solicitação GET:

GET https://www.googleapis.com/deploymentmanager/v2/deployments/list?filter=labels.env+eq+devserver

Para conseguir mais informações, consulte a documentação filter na referência da API.

A seguir