Configure etiquetas para serviços

As etiquetas do Cloud Run são pares de chave-valor aplicados ao serviço e às revisões do Cloud Run. Esta página mostra como definir, modificar e eliminar etiquetas no seu serviço e revisões do Cloud Run. Tenha em atenção que, quando define uma etiqueta num serviço do Cloud Run, é criada uma nova revisão com esta etiqueta para este serviço. A etiqueta não é aplicada a revisões mais antigas.

As possíveis utilizações incluem:

  • Atribuição de custos e discriminações de faturação.
  • Identificar os recursos usados por equipas individuais ou centros de custos.
  • Distinguir ambientes de implementação (produção, preparação, controlo de qualidade ou teste).
  • Identificar proprietários e etiquetas de estado.
  • Filtre registos no Logging.

Regras de utilização das etiquetas

A seguinte regra aplica-se à utilização de etiquetas definidas num serviço do Cloud Run:

Só podem ser usadas etiquetas Google Cloud válidas no Cloud Run.

Funções necessárias

Para receber as autorizações de que precisa para configurar e implementar serviços do Cloud Run, peça ao seu administrador para lhe conceder as seguintes funções de IAM:

Se estiver a implementar um serviço ou uma função a partir do código fonte, também tem de ter funções adicionais concedidas no seu projeto e na conta de serviço do Cloud Build.

Para ver uma lista de funções e autorizações de IAM associadas ao Cloud Run, consulte os artigos Funções de IAM do Cloud Run e Autorizações de IAM do Cloud Run. Se o seu serviço do Cloud Run interage com Google Cloud APIs, como as bibliotecas cliente da Google Cloud, consulte o guia de configuração da identidade do serviço. Para mais informações sobre a atribuição de funções, consulte as autorizações de implementação e faça a gestão do acesso.

Defina ou modifique etiquetas

Qualquer alteração de configuração leva à criação de uma nova revisão. As revisões subsequentes também vão receber automaticamente esta definição de configuração, a menos que faça atualizações explícitas para a alterar.

As etiquetas que definiu anteriormente para as suas funções do Cloud Run através de comandos gcloud functions ou da API Cloud Functions v2 propagam-se para o Cloud Run quando implementa as suas funções no Cloud Run.

Pode definir ou modificar etiquetas através da Google Cloud consola, da linha de comandos gcloud ou de um ficheiro YAML quando implementa uma nova revisão.

Consola

  1. Na Google Cloud consola, aceda ao Cloud Run:

    Aceda ao Cloud Run

  2. Selecione a caixa de verificação à esquerda do serviço no qual está a definir a etiqueta.

  3. Certifique-se de que o painel de informações no lado direito está ativado (Mostrar painel de informações).

  4. Clique em Etiquetas para apresentar o painel de etiquetas.

    Definir etiqueta

  5. Para editar o valor de uma chave de etiqueta existente, localize a etiqueta e altere o Valor conforme pretendido.

  6. Para definir uma nova etiqueta no serviço, clique em Adicionar etiqueta e indique a chave e o valor.

  7. Clique em Guardar.

gcloud

Pode atualizar as etiquetas de um serviço através do comando:

gcloud run services update SERVICE --update-labels KEY=VALUE

Para atualizar mais de uma etiqueta, forneça uma lista de pares de chave/valor delimitada por vírgulas. Tenha em atenção que o comando update-labels define um novo valor para a chave da etiqueta se a etiqueta já existir. Caso contrário, cria uma nova etiqueta.

Substituir

  • SERVICE com o nome do seu serviço do Cloud Run
  • KEY com o nome da chave da etiqueta
  • VALUE com o valor da chave

Também pode definir etiquetas durante a implementação:

gcloud run deploy SERVICE --image IMAGE --labels KEY=VALUE

Para criar mais de uma etiqueta durante a implementação, forneça uma lista de pares de chave/valor separados por vírgulas.

YAML

  1. Se estiver a criar um novo serviço, ignore este passo. Se estiver a atualizar um serviço existente, transfira a respetiva configuração YAML:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Atualize os atributos labels em dois locais:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
      labels:
        LABEL: VALUE
    spec:
      template:
        metadata:
          labels:
            LABEL: VALUE
          name: REVISION

    Substituir

    • SERVICE com o nome do seu serviço do Cloud Run
    • LABEL com o nome da etiqueta
    • VALUE com o valor desejado
    • REVISION com um novo nome de revisão ou elimine-o (se existir). Se fornecer um novo nome de revisão, este tem de cumprir os seguintes critérios:
      • Começa com SERVICE-
      • Contém apenas letras minúsculas, números e -
      • Não termina com um -
      • Não exceder 63 carateres

    metadata.labels define etiquetas no objeto de serviço, enquanto spec.template.metadata.label define etiquetas na revisão criada. Apenas as etiquetas definidas na revisão são transmitidas aos registos e à faturação.

  3. Crie ou atualize o serviço com o seguinte comando:

    gcloud run services replace service.yaml

Terraform

Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.

Adicione o seguinte a um recurso google_cloud_run_v2_service na sua configuração do Terraform:

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-labels"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    # Labels
    labels = {
      foo : "bar"
      baz : "quux"
    }
  }
}

O fragmento anterior adiciona duas etiquetas, foo (cujo valor é bar) e baz (cujo valor é quux), à sua instância do Cloud Run.

A adição das etiquetas em template define as etiquetas para a revisão: apenas as etiquetas definidas para a revisão são transmitidas aos registos e à faturação. Se adicionar as etiquetas a uma localização que não seja em template, a etiqueta é definida para o serviço e não para a revisão.

Substitua o:

  • name com o nome do seu serviço.
  • Propriedade da location com a localização usada para o seu serviço.
  • image com a sua imagem de contentor.
  • foo e baz com os seus próprios nomes de etiquetas.
  • bar e quux com os seus próprios valores de etiquetas.

Liste serviços por etiqueta

Pode listar os serviços por etiqueta através de um filtro da CLI Google Cloud:

  gcloud run services list --filter metadata.labels.LABEL=VALUE
  

Substituir:

  • LABEL com o nome da etiqueta
  • VALUE com o valor a incluir na sua lista filtrada

Elimine uma etiqueta num serviço

Pode usar a consola ou a linha de comandos para eliminar etiquetas num serviço.

Consola

  1. Na Google Cloud consola, aceda ao Cloud Run:

    Aceda ao Cloud Run

  2. Selecione a caixa de verificação à esquerda do serviço do qual está a eliminar a etiqueta.

  3. Certifique-se de que o painel de informações no lado direito está ativado (Mostrar painel de informações).

  4. Clique em Etiquetas para apresentar o painel de etiquetas.

  5. Localize a etiqueta que quer eliminar.

  6. Passe o cursor do rato à direita da caixa de texto Valor para que a etiqueta apresente o ícone de lixo e clique no ícone de lixo.

  7. Clique em Guardar.

gcloud

Para limpar todas as etiquetas de um serviço:

gcloud run services update SERVICE --clear-labels

Para eliminar etiquetas específicas de um serviço, forneça uma lista de chaves separadas por vírgulas:

gcloud run services update SERVICE --remove-labels LABEL

Substituir

  • SERVICE com o nome do seu serviço do Cloud Run
  • LABEL com o nome da sua etiqueta