Recomendador de projeto autônomo

O recomendador de projetos autônomo analisa a atividade de uso em projetos na sua organização e fornece recomendações que ajudam a descobrir, recuperar ou remover projetos autônomos.

Visão geral

Em organizações em rápida evolução, é comum que recursos da nuvem, incluindo projetos inteiros, sejam esquecidos. Esses recursos podem ser difíceis de identificar e tendem a resultar em desperdícios desnecessários e riscos de segurança.

O recomendador de projetos autônomos analisa a atividade de uso em todos os projetos na organização e fornece os seguintes recursos para ajudar a descobrir, recuperar e encerrar projetos autônomos:

  • Insights de uso de cada projeto (rede, API, proprietário do projeto, atividade de serviço e muito mais).
  • Recomendações para recusar projetos com baixa atividade de uso.
  • Recomendações para atribuir um novo proprietário a projetos com alta atividade de uso, mas sem proprietário ativo.

Encerrar ou recuperar projetos autônomos pode gerar os seguintes impactos e benefícios à organização:

  • redução de riscos de segurança (SECURITY);
  • redução de gastos desnecessários (COST);
  • redução da pegada de carbono associada às cargas de trabalho (SUSTAINABILITY).

Como funciona

O recomendador de projetos autônomo analisa o uso do projeto nos últimos 30 dias. A tabela a seguir lista as recomendações e insights que o recomendador de projeto autônomo pode gerar com base no fato de a atividade de uso ser baixa ou alta.

Uso/tipo do projeto Subtipo de insight Recomendação Subtipo de recomendação
Projetos com:
  • Baixa utilização nos últimos 30 dias
PROJECT_ACTIVITY Revise ou exclua o projeto. CLEANUP_PROJECT
Projetos com:
  • Alta utilização nos últimos 30 dias
  • Proprietários de usuários atribuídos, mas nenhum deles está ativo no projeto.
PROJECT_ACTIVITY Reivindique o projeto atribuindo um novo proprietário. RECLAIM_PROJECT
Todos os outros projetos que não são do Apps Script. PROJECT_ACTIVITY - -

As recomendações e os Insights estão disponíveis em diferentes níveis na sua hierarquia de organização do Cloud. O acesso a essas recomendações e Insights requer uma vinculação de papel do IAM no nível correspondente:

  • Para envolvidos no projeto: os proprietários do projeto podem descobrir e atuar em Insights e recomendações nos projetos a que eles têm acesso.
  • Em um nível organizacional: os administradores da organização podem descobrir e atuar em Insights e recomendações para projetos em uma organização da nuvem.
  • No nível da conta de faturamento: os administradores do faturamento podem descobrir e atuar em Insights e recomendações para projetos associados a uma determinada conta de faturamento.

Classificar a atividade de uso de um projeto

Um projeto pode ser classificado como tendo uma atividade de uso baixo ou alto, com base nas recomendações que são fornecidas. A classificação da atividade de uso de um projeto é calculada com base no conteúdo incluído nas informações de utilização do projeto.

Para projetos identificados como tendo baixa atividade de uso, as seguintes condições se aplicam:

Classificação de uso Condição
Organizações com mais de 50 projetos
  • Um projeto é classificado com base no nível de atividade de uso em todo o conteúdo incluído no insights de utilização do projeto.
  • Um projeto é classificado como autônomo se estiver dentro de 10% da atividade de uso em comparação com todos os outros projetos nessa organização.
Organizações com menos de 50 projetos
  • A média diária de chamadas de API consumidas por um projeto (consumedApiDailyCount) é menor que 100.
  • O Cloud Logging é o único serviço usado por um projeto.
  • Todos os outros insights de utilização do projeto têm um valor igual a zero.

Prioridade das recomendações e impactos

As recomendações de projetos autônomos contêm os seguintes campos que ajudam a priorizar e estimar os benefícios de aplicá-las:

  • priority: um valor de prioridade entre P1 a P4, sendo P1 a prioridade mais alta.
  • primaryImpact - SECURITY. A contagem de recomendações de segurança de alta prioridade em um projeto autônomo.
  • additionalImpact(s) - COST e SUSTAINABILITY. A redução do custo (US$) e da emissão de sustentabilidade (kgCO2e) que seria realizada se o projeto fosse removido.

Prioridade da recomendação

A prioridade da recomendação de projetos autônomos varia de P1 a P4, sendo P1 a prioridade mais alta.

O recomendador começa analisando as recomendações de segurança em cada projeto autônomo. A partir daí, ele define a prioridade da recomendação do projeto autônomo igual à da recomendação de maior prioridade encontrada no projeto. Por exemplo, se um projeto autônomo tiver 10 recomendações de segurança, oito recomendações P2 e duas recomendações P1, a recomendação do projeto autônomo receberá um valor de prioridade P1.

As recomendações de segurança mais frequentes encontradas em projetos autônomos são do Recomendador do IAM. Uma recomendação de projeto autônomo com prioridade P1 provavelmente significa que há um bucket de armazenamento em nuvem acessível publicamente no projeto autônomo. Saiba mais sobre como o recomendador do IAM define prioridades.

Impacto na segurança

O campo primaryImpact - SECURITY oferece um securityProjection igual à contagem de recomendações de segurança de alta prioridade (P2 e mais altas) no projeto autônomo. Por exemplo, quando um projeto tem uma recomendação para substituir o papel amplo de editor por um papel mais granular, essa recomendação tem uma prioridade de P2 e é contabilizada em priorityRecommendationCount.

Impacto de custos

O campo additionalImpact - COST oferece um costProjection, que é uma estimativa da economia de custos caso o projeto autônomo seja removido. Isso é baseado nos custos dos recursos executados no projeto autônomo nos últimos 30 dias.

Impacto de sustentabilidade

O campo additionalImpact - SUSTAINABILITY oferece um sustainabilityProjection, que é uma estimativa das emissões de carbono contribuídas pelos recursos em execução no projeto autônomo nos últimos 30 dias. A estimativa é medida em quilogramas equivalentes de dióxido de carbono (kgCO2e).

Conteúdo de um insight de utilização do projeto

O conteúdo dos insights de utilização de um projeto são valores de campo usados para classificar a atividade de uso do projeto e gerar recomendações CLEANUP_PROJECT e/ou RECLAIM_PROJECT.

Na tabela a seguir, listamos os vários campos que o recomendador exibe como parte do insight PROJECT_ACTIVITY:

Campo Descrição
Nível de uso
usagePercentile Percentil do nível de uso deste projeto em comparação com outros projetos da mesma organização.

Se o percentil for -1, isso significa que o valor não é computado. O valor não é computado quando as organizações têm menos de 50 projetos.

Atividade da API
activeServiceAccountDailyCount Média diária de contas de serviço com atividade de autenticação neste projeto.
apiClientDailyCount Média diária de clientes distintos de chamadas de API produzidas por este projeto.
consumedApiDailyCount Média diária de chamadas de API consumidas por este projeto.
datastoreApiDailyCount Média diária de chamadas da API Datastore consumidas por este projeto
Atividade de rede
vpcEgressDailyBytes Média diária de bytes de saída da VPC desse projeto.
vpcIngressDailyBytes Média diária de bytes de entrada da VPC neste projeto
Faturamento e uso
hasBillingAccount Verifica se o projeto tem uma conta de faturamento no final da observação
serviceWithBillableUsage Nomes dos serviços faturáveis usados nos últimos 30 dias.
Uso de serviços do Cloud
activeAppengineInstanceDailyCount: system/instance_count Média diária do número de instâncias do App Engine ativas neste projeto
activeCloudsqlInstanceDailyCount Média diária do número de instâncias ativas do Cloud SQL neste projeto.
activeGceInstanceDailyCount Média diária do número de instâncias ativas do Compute Engine neste projeto.
bigqueryInflightJobDailyCount Média diária de jobs do BigQuery em andamento neste projeto.
bigqueryInflightQueryDailyCount Média diária da contagem de consultas do BigQuery em andamento neste projeto.
bigqueryStorageDailyBytes Média diária de armazenamento do BigQuery em andamento neste projeto.
bigqueryTableDailyCount Média diária da contagem de tabelas do BigQuery neste projeto.
gcsObjectDailyCount Média diária de número de objetos do Cloud Storage neste projeto.
gcsRequestDailyCount Média diária do número da API Cloud Storage neste projeto.
gcsStorageDailyBytes Média diária de bytes de armazenamento usados pelo Cloud Storage neste projeto.
Atividade do usuário
numActiveUserOwners O número de proprietários do projeto do tipo usuário ativo no final do período de observação. Ativo significa que a conta de usuário não está desativada e houve alguma atividade identificada nesse projeto durante o período de observação.
owners Lista de proprietários do projeto e as atividades deles
Outros campos
hasActiveOauthTokens Verifica se o projeto tem algum token OAuth ativo usado nos últimos 180 dias.
carbonFootprintDailyKgCO2 Média diária de emissões de carbono por este projeto com base nos últimos 30 dias de dados disponíveis.
costProjection Projeção de economia de custo para a duração especificada se o projeto for removido. Um preço personalizado ou de tabela é mostrado com base nas permissões da conta de faturamento. É uma estimativa baseada nos últimos 30 dias de dados disponíveis e não constitui uma fatura.
severity O severity é definido como o valor correspondente do insight de segurança de maior gravidade encontrado no projeto. Por exemplo, com base em como o recomendador do IAM define gravidades para os insights, uma gravidade CRITICAL no insight de projeto autônomo provavelmente significa que há um bucket de armazenamento em nuvem acessível publicamente no projeto autônomo.

Recomendações para excluir um projeto

Recomendamos um projeto para exclusão quando ele tiver baixo uso nos últimos 30 dias e não houver tokens OAuth usados nos últimos 180 dias.

Recomendações para atribuir um novo proprietário a um projeto

É recomendável atribuir um novo proprietário a um projeto quando ele atender a todas as condições listadas abaixo:

  • Todos os proprietários atribuídos estão inativos no projeto nos últimos 90 dias ou não estão mais na empresa.
  • O projeto tem uma atividade de uso elevado.

Preços

Para mais detalhes sobre os preços do Active Assist, consulte os preços do recomendador.

Antes de começar

Antes de ver os insights e recomendações, faça o seguinte:

  • É preciso ativar a API Recommender. Você só precisa ativar a API em um único projeto de faturamento. É possível usar esse mesmo projeto de faturamento para examinar as recomendações e insights de outros projetos, da organização inteira ou da conta de faturamento, usando a funcionalidade --billing-project do gcloud/API.
  • Verifique se você tem um dos papéis obrigatórios atribuídos:
Descrição Papéis
Ver recomendações recommender.projectUtilViewer
Ver e atualizar recomendações recommender.projectUtilAdmin
Como desativar insights e recomendações na Central de transparência e controle dataprocessing.admin

Esses papéis fornecem um conjunto de permissões que permitem acessar insights e recomendações. Para mais informações sobre papéis, consulte Como entender os papéis e Como conceder permissões do IAM.

Conceder esses papéis no nível da organização permite que você acesse as recomendações e os Insights dos projetos na organização de maneira individual ou coletivamente (todos os projetos sem supervisão na organização) usando a API no nível da organização.

Ao conceder esses papéis no nível da conta de faturamento, é possível acessar as recomendações e os Insights para projetos que usam a conta de faturamento especificada.

Para mais informações sobre como desativar, consulte como desativar insights e recomendações.

ID do recomendador

Veja o ID do recomendador do projeto autônomo e o tipo de insight:

  • google.resourcemanager.projectUtilization.Recommender
  • google.resourcemanager.projectUtilization.Insight

Permissões do IAM obrigatórias

Para acessar a lista de recomendações e insights, as seguintes permissões são necessárias:

  • recommender.resourcemanagerProjectUtilizationRecommendations.get
  • recommender.resourcemanagerProjectUtilizationRecommendations.list
  • recommender.resourcemanagerProjectUtilizationInsights.get
  • recommender.resourcemanagerProjectUtilizationInsights.list

Para atualizar recomendações e insights (por exemplo, para dispensar uma recomendação), as seguintes permissões são necessárias:

  • recommender.resourcemanagerProjectUtilizationRecommendations.update
  • recommender.resourcemanagerProjectUtilizationInsights.update

Como visualizar recomendações de projetos autônomos

Esta seção descreve como verificar insights e recomendações autônomos usando gcloud e usando curl para enviar solicitações à API do recomendador.

gcloud

Para visualizar recomendações e insights usando gcloud, siga as etapas abaixo. Para mais informações, consulte Como usar a API - Insights e Como usar a API - Recomendações.

Recomendações

  1. Para listar recomendações autônomas do projeto em que você ativou a API Recommender, execute o seguinte comando:

      gcloud recommender recommendations list \
      --project=PROJECT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
  2. Para listar recomendações autônomas em um projeto diferente enquanto usa um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --project=PROJECT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • PROJECT_ID: o ID de um projeto diferente que você quer ver as recomendações de projetos autônomos.
  3. Para listar recomendações de projetos autônomos para toda a organização, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --organization=ORGANIZATION_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender, o mesmo PROJECT_ID fornecido na etapa anterior.
    • ORGANIZATION_ID: o ID da organização em que você quer ver as recomendações de projeto autônomos.
  4. Para listar recomendações de projetos autônomos que usam uma conta de faturamento específica, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --billing-account=BILLING_ACCOUNT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender, o mesmo PROJECT_ID fornecido na etapa anterior.
    • BILLING_ACCOUNT_ID: o ID da conta de faturamento do Google Cloud.

Insights

  1. Para listar informações de uso de um determinado projeto, execute o seguinte comando:

      gcloud recommender insights list \
      --project=PROJECT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
  2. Para listar insights de uso de um projeto diferente, usando um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --project=PROJECT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • PROJECT_ID: o ID de um projeto diferente para o qual você quer ver os insights de recomendações autônomas.
  3. Para listar Insights de uso para toda a organização, enquanto usa um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --organization=ORGANIZATION_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender, o mesmo PROJECT_ID fornecido na etapa anterior.
    • ORGANIZATION_ID: o ID da organização em que você quer ver os Insights de uso.
  4. Para listar Insights de uso que usam uma conta de faturamento específica, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --billing-account=BILLING_ACCOUNT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender, o mesmo PROJECT_ID fornecido na etapa anterior.
    • BILLING_ACCOUNT_ID: o ID da conta de faturamento do Google Cloud.

API

Para visualizar recomendações e insights, use curl para enviar uma solicitação às APIs do recomendador. Para autorizar solicitações a partir da linha de comando, use tokens de acesso do OAuth. Um token de acesso do OAuth é uma string que concede acesso temporário a uma API.

Recomendações

  1. Para listar recomendações autônomas do projeto em que você ativou a API Recommender, execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
  2. Para listar recomendações autônomas em um projeto diferente enquanto usa um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: BILLING_PROJECT_ID" \
    "https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • PROJECT_ID: o ID de um projeto diferente que você quer ver as recomendações de projetos autônomos.
  3. Para listar recomendações de projetos autônomos para toda a organização, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: BILLING_PROJECT_ID" \
    "https://recommender.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • ORGANIZATION_ID: o ID da organização em que você quer ver as recomendações de projeto autônomos.
  4. Para listar recomendações de projetos autônomos que usam uma conta de faturamento específica, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: BILLING_PROJECT_ID" \
    "https://recommender.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • BILLING_ACCOUNT_ID: o ID da conta de faturamento do Google Cloud.

Insights

  1. Para listar informações de uso de um determinado projeto, execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/global\
    /insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
  2. Para listar insights de uso de um projeto diferente, usando um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "x-goog-user-project: BILLING_PROJECT_ID/" \
    "https://recommender.googleapis.com/v1/projects/PROJECT_ID//locations/global\
    /insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • PROJECT_ID: o ID de um projeto diferente para o qual você quer ver os insights de recomendações autônomas.
  3. Para listar Insights de uso para toda a organização, enquanto usa um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: PROJECT_ID/" \
    "https://recommender.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/\
    insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • ORGANIZATION_ID: o ID da organização em que você quer ver as recomendações de projeto autônomos.
  4. Para listar Insights de uso que usam uma conta de faturamento específica, ao usar um projeto em que você ativou a API Recommender (como na etapa anterior), execute o seguinte comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: PROJECT_ID/" \
    "https://recommender.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/locations/global/\
    insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Substitua:

    • BILLING_PROJECT_ID: o ID do projeto que você ativou com a API Recommender (esse seria o mesmo PROJECT_ID fornecido na etapa anterior).
    • BILLING_ACCOUNT_ID: o ID da conta de faturamento do Google Cloud.

Como configurar parâmetros de recomendação

Esta seção descreve como visualizar e configurar esse recomendador usando gcloud e curl.

A tabela a seguir lista vários parâmetros que podem ser configurados:

Parâmetro Descrição Valores esperados
minimum_observation_period O período de observação mínimo define o número de dias de atividade do projeto a ser analisado antes que uma Recomendação seja gerada.

No momento, só é possível definir esse valor no nível da organização.

"P30D"[PADRÃO], "P60D", "P90D", "P180D", "P270D", "P365D"

gcloud

Para ver e atualizar as configurações do recomendador usando gcloud, siga as etapas abaixo.

Como visualizar as configurações

  1. Para visualizar as configurações do recomendador de projetos autônomos de uma determinada organização, execute o seguinte comando de um projeto dessa organização que tem a API Recommender ativada:

    gcloud beta recommender recommender-config describe \
    google.resourcemanager.projectUtilization.Recommender \
    --organization=ORGANIZATION_ID \
    --location=global
    

    Substitua:

    • ORGANIZATION_ID: o ID da organização.
  2. Exemplo de saída:

    etag: ETAG
    name: organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    recommenderGenerationConfig:
      params:
        minimum_observation_period: P30D
    revisionId: DEFAULT
    updateTime: '2022-04-19T00:57:55Z'
    

    Observe o valor da ETAG:

    • ETAG: esse valor será usado em recommender-config update.

Como atualizar configurações

  1. Para atualizar as configurações do recomendador de projetos autônomos para uma determinada organização, escolha um projeto pertencente a essa organização em que você ativou a API Recommender e crie um arquivo config.gcloud:

    
    {
     "params": {
        "minimum_observation_period": DURATION
      }
    }
    

    Substitua:

    • DURATION: um valor de "P30D", "P60D", "P90D", "P180D", "P270D", "P365D"
  2. Execute este comando:

    gcloud beta recommender recommender-config update \
    google.resourcemanager.projectUtilization.Recommender \
    --organization=ORGANIZATION_ID \
    --location=global \
    --config-file=config.gcloud \
    --etag=ETAG
    

    Substitua:

    • ORGANIZATION_ID: o ID da organização.
    • ETAG: o valor de etag que foi retornado de recommender-config describe.

API

Para visualizar e atualizar as configurações do recomendador, use curl para enviar uma solicitação às APIs Recommender. Para autorizar solicitações a partir da linha de comando, use tokens de acesso do OAuth. Um token de acesso do OAuth é uma string que concede acesso temporário a uma API.

Como visualizar as configurações

  1. Para visualizar as configurações do recomendador de projetos autônomos de uma determinada organização, execute o seguinte comando de um projeto dessa organização que tem a API Recommender ativada:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "x-goog-user-project: PROJECT_ID" \
    https://recommender.googleapis.com/v1beta1/organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
    • ORGANIZATION_ID: o ID da organização.
  2. Exemplo de saída:

    
    {
      "name": "organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "P60D"
        }
      },
      "etag": ETAG,
      "updateTime": "2022-04-21T18:51:17.407255Z",
      "revisionId": "75c3b0d7"
    }
    
    

    Observe o valor da ETAG:

    • ETAG: esse valor será usado em curl PATCH.

Como atualizar configurações

  1. Para atualizar as configurações do recomendador de projetos autônomos para uma determinada organização, escolha um projeto pertencente a essa organização em que você ativou a API Recommender e crie um arquivo request.json:

    
    {
      "name": "organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": DURATION
        }
      },
    "etag": ETAG,
    }
    

    Substitua:

    • DURATION: um valor de "P30D", "P60D", "P90D", "P180D", "P270D", "P365D"
    • ETAG: o valor de etag que foi retornado de CURL get.
  2. Execute a seguinte linha de comando:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "x-goog-user-project: PROJECT_ID" \
    -H "Content-Type: application/json; charset=utf-8" -d @request.json \
    https://recommender.googleapis.com/v1beta1/organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
    • ORGANIZATION_ID: o ID da organização.

A seguir