Como criar e gerenciar projetos

Os projetos do Google Cloud formam a base para criar, ativar e usar todos os serviços do Google Cloud, incluindo o gerenciamento de APIs, ativação de faturamento, adição e remoção de colaboradores e gerenciamento de permissões dos recursos do Google Cloud.

Esta página explica como criar e gerenciar projetos do Google Cloud usando a API Cloud Resource Manager e o console do Google Cloud.

Antes de começar

Leia sobre o recurso do projeto na Visão geral da hierarquia de recursos. Para orientações sobre como configurar a hierarquia de recursos, consulte Decidir uma hierarquia de recursos para sua zona de destino do Google Cloud.

Os seguintes itens são usados para identificar seu projeto:

  • Nome do projeto: um nome legível para seu projeto.

    O nome do projeto não é usado por nenhuma API do Google Você pode editar o nome do projeto a qualquer momento durante ou após a criação do projeto. Os nomes dos projetos não precisam ser exclusivos.

  • ID do projeto: um identificador exclusivo personalizável para seu projeto.

    O ID do projeto é uma string exclusiva usada para diferenciar seu projeto de todos os outros no Google Cloud. Depois que você insere um nome de projeto, o console do Google Cloud gera um ID do projeto exclusivo que pode ser uma combinação de letras, números e hifens. Recomendamos que você use o ID do projeto gerado, mas é possível editá-lo durante a criação do projeto. Depois que o projeto é criado, o ID do projeto é permanente.

    Um ID do projeto tem os seguintes requisitos:

    • Precisa ter de 6 a 30 caracteres.
    • Só pode conter letras minúsculas, números e hífens
    • Precisa começar com uma letra.
    • Não pode terminar com hífen
    • não pode ser em uso ou usado anteriormente; Isso inclui projetos excluídos.
    • Não podem conter strings restritas, como google, null, undefined e ssl.
  • Número do projeto: um identificador exclusivo gerado automaticamente para seu projeto.

Não inclua informações sensíveis, como informações de identificação pessoal (PII) ou dados de segurança no nome do projeto, no ID do projeto ou em outros nomes de recursos. O ID do projeto é usado no nome de muitos outros recursos do Google Cloud, e qualquer referência ao projeto ou aos recursos relacionados expõe o ID do projeto e o nome do recurso.

Crie um projeto

Para criar um projeto, você deve ter a permissão resourcemanager.projects.create. Essa permissão está incluída em papéis como Criador de projetos (roles/resourcemanager.projectCreator). O papel de Criador de projeto é concedido por padrão a todo o domínio de um novo recurso da organização e a usuários de avaliação gratuita. Para saber como conceder o papel a indivíduos e limitar o acesso a todos os recursos da organização, consulte a página Como gerenciar papéis padrão da organização.

Se você não especificar o recurso pai, um recurso pai será selecionado automaticamente, se aplicável, com base no domínio da conta de usuário.

Você pode criar um novo projeto usando o console do Google Cloud, a Google Cloud CLI ou o método projects.create().

Console

Para criar um novo projeto, faça o seguinte:

  1. Acesse a página Gerenciar recursos no console do Google Cloud.

    Acessar "Gerenciar recursos"

    As etapas restantes aparecem no console do Google Cloud.

  2. Na lista suspensa Selecionar organização, na parte de cima da página, escolha o recurso da organização em que o projeto vai ser criado. Se você é um usuário da avaliação gratuita, pule esta etapa porque a lista não será exibida.
  3. Clique em Criar projeto.
  4. Na janela Novo projeto que será exibida, insira o nome do projeto e selecione uma conta de faturamento, conforme aplicável. O nome de um projeto só pode ser composto por letras, números, aspas simples, hifens, espaços ou pontos de exclamação e precisa ter entre 4 e 30 caracteres.
  5. Insira o recurso da organização ou pasta mãe na caixa Local. Esse recurso vai ser o pai hierárquico do novo projeto. Se houver a opção Sem organização, selecione-a para criar o novo projeto como o nível superior da própria hierarquia de recursos.
  6. Quando terminar de inserir os detalhes do novo projeto, clique em Criar.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para criar um novo projeto, use o comando gcloud projects create:

    gcloud projects create PROJECT_ID
    

    Em que PROJECT_ID é o código do projeto que você quer criar. Um ID do projeto precisa começar com uma letra minúscula e deve conter apenas letras ASCII, dígitos e hifens e deve ter entre 6 e 30 caracteres.

    Para criar um projeto com um recurso de organização ou uma pasta como pai, use as sinalizações --organization ou --folder. Como um recurso pode ter apenas um pai, só uma dessas sinalizações pode ser usada:

    gcloud projects create PROJECT_ID --organization=ORGANIZATION_ID
    
    gcloud projects create PROJECT_ID --folder=FOLDER_ID
    

API

Não é possível usar determinadas palavras no ID do projeto quando cria um novo projeto com o método projects.create(). Alguns exemplos incluem google, null, undefined e ssl. Quando você usa uma palavra restrita, a solicitação é retornada com um erro INVALID_ARGUMENT.

A solicitação a seguir apenas cria um projeto e não o associa automaticamente a uma conta de faturamento. Use o método projects.updateBillingInfo para definir ou atualizar a conta de faturamento associada a um projeto.

Criar solicitação de projeto:

POST https://cloudresourcemanager.googleapis.com/v3/projects/
Authorization: *************
Content-Type: application/json

{
    "projectId": "our-project-123",
    "name": "my project",
    "labels": {
      "mylabel": "prod"
    }
}

Criar resposta de projeto:

{
    "name": "operations/pc.123456789",
}

Receber solicitação de operação:

GET https://cloudresourcemanager.googleapis.com/v3/operations/pc.123456789
Authorization: *************
Content-Type: application/json

Receber resposta de operação:

{
    "name": "operations/pc.123456789",
    "done": true,
    "response": {
        "@type": "type.googleapis.com/google.cloudresourcemanager.v3.Project",
        "projectNumber": "464036093014",
        "projectId": "our-project-123",
        "lifecycleState": "ACTIVE",
        "name": "my project",
        "labels": {
        "mylabel": "prod"
        },
    "createTime": "2016-01-07T21:59:43.314Z"
    }
}

Adicionar tags durante a criação do projeto

As tags são uma maneira de criar anotações para recursos. É possível adicionar tags ao criar projetos. É necessário atribuir o papel de Usuário de tag ao adicionar tags. Para mais informações sobre as permissões atribuídas a esse papel, consulte Gerenciar tags em recursos. Só é possível adicionar o namespace para os pares de chave-valor da tag de uma destas formas:

gcloud

Para adicionar tags durante a criação do projeto, execute o seguinte comando:

gcloud projects create PROJECT_ID --organization=ORGANIZATION_ID --tags=KEY_VALUE_PAIRS

Substitua:

  • PROJECT_ID é o identificador exclusivo do projeto.
  • ORGANIZATION_ID é o identificador exclusivo da organização.
  • KEY_VALUE_PAIRS é uma lista de pares de chave-valor separados por vírgulas que pode ser atribuída ao seu recurso. Um exemplo de pares de chave-valor separados por vírgulas é 123/environment=production, 456/create=testresource.

API

O snippet a seguir é uma solicitação JSON em que você cria um projeto e adiciona tags a ele.

  POST https://cloudresourcemanager.googleapis.com/v3/projects/
  Authorization: *************
  Content-Type: application/json

  {
    "projectId": "our-project-456",
    "name": "my project",
    "parent": "organizations/123",
    "tags": {
      "key": "123/environment"
      "value": "production"
    },
"tags": {
      "key": "123/costCenter"
      "value": "marketing"
  }
}

Como criar um projeto usando uma conta de serviço

Você pode usar uma conta de serviço para automatizar a criação do projeto. Assim como as contas de usuário, as contas de serviço podem receber permissão para criar projetos em um recurso da organização. As contas de serviço não podem criar projetos fora de um recurso de organização e precisam especificar o recurso pai ao criar um projeto. As contas de serviço podem criar um novo projeto usando a CLI gcloud ou o método projects.create().

Como gerenciar cotas de projeto

Se você tiver menos de 30 projetos restantes na cota, uma notificação exibirá a quantidade desses projetos na página Novo projeto. Depois de atingir seu limite de projetos, você deve solicitar um aumento no limite de projetos para criar mais projetos. Como alternativa, você pode programar a exclusão de alguns projetos depois de 30 dias na página Gerenciar recursos. Projetos que os usuários excluíram são contabilizados na sua cota. Esses projetos são excluídos totalmente após 30 dias.

Para solicitar mais capacidade para projetos na cota da sua organização, faça o seguinte:

  1. Acesse a página Cotas e limites do sistema.

    Acesse "Cotas e limites do sistema

  2. No seletor de recursos, selecione a organização em que você quer aumentar a cota do projeto.

  3. Na opção Filtro, selecione Métrica e insira cloudresourcemanager.googleapis.com/projects_count.

  4. Selecione a API Cloud Resource Manager, clique em Mais ações e selecione Editar cota.

  5. Na caixa de diálogo Quota changes, insira um novo valor de cota e uma descrição e clique em Next.

  6. Insira seus dados de contato e clique em Enviar solicitação.

Você recebe um e-mail confirmando o recebimento da solicitação. Se precisar de mais ajuda, responda ao e-mail. Após a análise, você vai receber uma notificação por e-mail indicando se sua solicitação foi aprovada.

Se você não tiver uma organização e quiser solicitar mais capacidade para os projetos na sua cota, use o formulário Solicitar aumento de cota de projeto.

Para mais informações sobre as cotas e por que elas são usadas, consulte a página de suporte Solicitações de cota para projetos no teste gratuito. Para mais informações sobre relatórios de faturamento, consulte a página de suporte Relatórios de faturamento.

Encontrar o nome, o número e o ID do projeto

Para interagir com os recursos do Google Cloud, você precisa fornecer as informações de identificação do projeto para cada solicitação. Um projeto é identificado pelo ID do projeto e número do projeto.

  1. Acesse a página Welcome no console do Google Cloud.

    Acesse "Bem-vindo"

  2. No seletor de projetos na parte de cima da página, selecione seu projeto.

    O nome, o número e o ID do projeto aparecem após o título Welcome.

Acessar um projeto existente

Você pode acessar um projeto usando a Google Cloud CLI ou o método projects.get().

Se você não for proprietário do projeto, precisará ter as permissões incluídas no papel de navegador (roles/browser).

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para obter os metadados de um projeto, use o comando gcloud projects describe:

    gcloud projects describe PROJECT_ID
    

    Substitua PROJECT_ID pelo código do projeto.

API

Solicitação:

GET https://cloudresourcemanager.googleapis.com/v3/projects/<var>PROJECT_ID</var>

Substitua PROJECT_ID pelo código do projeto.

Resposta:

{
    "projectNumber": "464036093014",
    "projectId": "our-project-123",
    "lifecycleState": "ACTIVE",
    "name": "my project",
    "labels": {
        "mylabel": "prod"
    },
    "createTime": "2016-01-07T21:59:43.314Z"
}

Listar todos os projetos em um recurso

Para listar todos os projetos que são filhos diretos de um recurso, use o método projects.list com o recurso pai especificado na consulta:

Solicitação:

GET https://cloudresourcemanager.googleapis.com/v3/projects

{
    "parent": "folders/662951040570"
}

Resposta:

{
    "projects": [
    {
        "name": "projects/951040570662",
        "parent": "folders/662951040570",
        "projectId": "tokyo-rain-123",
        "state": "ACTIVE",
        "displayName": "Tokyo Rain"
        "createTime": "2013-11-13T20:31:53.308Z"
        "updateTime": "2013-11-13T20:31:53.308Z"
        "etag": "BwWUlZ6XEfY="
    }
    ]
}

Pesquisar projetos

Para pesquisar projetos que correspondem à consulta especificada, use gcloud alpha resource-manager projects search, transmitindo a consulta na flag --query. O escopo da pesquisa é todos os projetos em que o usuário tem a permissão projects.get.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para conferir a lista de todos os projetos, use o comando gcloud alpha projects search:

    gcloud alpha projects search --query="displayName=rek*"
    <table output showing the projects with display names starting from rek eg. rekey-project-2, rekha-project>
    
    gcloud alpha projects search --query="state:DELETE_REQUESTED"
    <table output showing the projects for which delete has been requested>
    

API

Use o método projects.search e uma string de consulta para retornar recursos específicos do projeto que correspondam ao filtro. Os resultados contêm apenas projetos para os quais você recebeu a permissão resourcemanager.projects.get.

O snippet de código a seguir retorna o recurso Projeto com o nome de exibição "Tokyo Rain":

Solicitação:

GET https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain

Resposta:

{
  "projects": [
    {
      "name": "projects/951040570662",
      "parent": "folders/662951040570",
      "projectId": "tokyo-rain-123",
      "state": "ACTIVE",
      "displayName": "Tokyo Rain",
      "createTime": "2013-11-13T20:31:53.308Z",
      "updateTime": "2013-11-13T20:31:53.308Z",
      "etag": "BwWUlZ6XEfY="
    }
  ]
}

O snippet de código a seguir retorna todos os projetos com um rótulo vermelho:

Solicitação:

GET https://cloudresourcemanager.googleapis.com/v3/projects:search?query=labels.color%3Ared

Resposta:

{
  "projects": [
    {
      "name": "projects/951054970012",
      "parent": "folders/662951040570",
      "projectId": "Osaka-rain-234",
      "state": "ACTIVE",
      "displayName": "Osaka Rain",
      "createTime": "2013-11-13T20:31:53.308Z",
      "updateTime": "2013-11-13T20:31:53.308Z",
      "etag": "BwWUlZ6XEfY=",
      "labels": {
        "color": "red"
      }
    }
  ]
}

Se você especificar os campos parent.type e parent.id no corpo da solicitação, a permissão resourcemanager.projects.list será verificada no pai. Se o usuário tiver essa permissão, todos os projetos do pai serão retornados depois que os filtros restantes forem aplicados.

Se o usuário não tiver essa permissão, todos os projetos para os quais o usuário tem a permissão resourcemanager.projects.get serão retornados após a aplicação dos filtros restantes.

Se nenhum filtro for especificado, a chamada retornará projetos em que o usuário tem permissões resourcemanager.projects.get.

Como atualizar projetos

É possível atualizar projetos usando o console do Google Cloud ou o método projects.patch().

Os únicos campos que podem ser atualizados são o nome do projeto e os rótulos. Para mais informações sobre como atualizar projetos, veja a página de referência da API do projeto.

Para mover um projeto dentro da hierarquia de recursos, consulte Como mover um projeto. Para migrar um projeto de um recurso de organização para outro, consulte Como migrar projetos.

Console

Para atualizar o nome ou os identificadores de um projeto usando o console do Google Cloud, faça o seguinte:

  1. No console do Google Cloud, acesse a página Configurações do IAM e administrador.

    Acessar as configurações de IAM e administrador

    As etapas restantes aparecem no console do Google Cloud.

  2. Na parte superior da tela, clique na lista suspensa de seleção de projetos.
  3. Na janela Selecionar exibida, clique na lista suspensa da organização e escolha sua organização. Pule esta etapa se você for um usuário de avaliação gratuita, porque que a lista de organização não vai aparecer.
  4. Selecione seu projeto na lista que aparecer.
  5. Para alterar o nome do projeto, edite o Nome do projeto e clique em Salvar.
  6. Para mudar os rótulos, clique em Rótulos na navegação à esquerda.

    Saiba mais sobre como usar rótulos.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para atualizar o nome ou os rótulos de um projeto, use o comando gcloud alpha projects update:

    gcloud alpha projects update PROJECT_ID \
        --name=NAME \
        --update-labels=KEY=VALUE, ...
    

    Em que:

    • PROJECT_ID é o ID do projeto que você quer atualizar.

    • NAME é o novo nome que você quer atribuir ao projeto.

    • KEY = VALUE, ... é uma lista dos pares de chave-valor dos rótulos que você quer atualizar. Se um rótulo já existir, seu valor será modificado. Se ele não existir, um novo rótulo será criado.

    Para mais informações e sinalizações adicionais que podem ser usadas com esse comando, consulte o SDK da CLI do Google Cloud.

API

Para atualizar um projeto, faça o seguinte:

O exemplo a seguir atualiza o nome de exibição do projeto para myproject e define o rótulo color como red:

Solicitação:

PATCH https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_NUMBER?updateMask=displayName,labels

Em que PROJECT_NUMBER é o ID numérico do projeto que você quer atualizar.

Solicitar corpo JSON:

{
  "displayName": "myproject",
  "labels": {
    "color": "red"
  }
}

Resposta:

{
  "projects": [
    {
      "name": "projects/951054970012",
      "parent": "folders/662951040570",
      "projectId": "Osaka-rain-234",
      "state": "ACTIVE",
      "displayName": "myproject",
      "createTime": "2013-11-13T20:31:53.308Z",
      "updateTime": "2013-11-13T20:35:42.308Z",
      "etag": "BwWUlZ6XEfY=",
      "labels": {
        "color": "red"
      }
    }
  ]
}

Como encerrar (excluir) projetos

É possível encerrar projetos usando o console do Google Cloud ou o método projects.delete na API. Um projeto precisa ter um estado de ciclo de vida de ACTIVE para ser encerrado dessa maneira.

Este método marca imediatamente um projeto a ser excluído. Um e-mail de notificação é enviado para o usuário que iniciou a operação de exclusão e os contatos da categoria técnica listados nos Contatos essenciais com base no melhor esforço. se a notificação não for enviada, o projeto ainda estará marcado para ser excluído. Se não houver contato na categoria "Técnico", o contato substituto não será notificado.

Um projeto marcado para exclusão não pode ser usado. Se o projeto tiver uma conta de faturamento associada a ela, essa associação será interrompida e não será restabelecida se a operação de exclusão do projeto for cancelada. Após 30 dias, o projeto será totalmente excluído. Até que seja totalmente excluído, o projeto ainda pode ficar visível, mas não pode ser usado.

Para interromper o processo de exclusão do projeto durante o período de 30 dias, consulte as etapas para restaurar um projeto.

No final do período de 30 dias, o projeto e todos os seus recursos são excluídos e não podem ser recuperados. Até a exclusão, o projeto é contabilizado na sua cota do projeto.

Para garantir que você não exclua projetos importantes, ative as recomendações de risco de alterações. As recomendações de risco de alteração geram avisos quando você tenta excluir projetos que o Google Cloud identificou como importantes.

Se você configurou o faturamento para um projeto, ele pode não ser completamente excluído até que o ciclo de faturamento atual termine e a cobrança seja realizada. A quantidade e o tipo dos serviços em uso também podem ser afetados quando o sistema exclui permanentemente um projeto. Para saber mais sobre retenção de dados e exclusão segura, veja Como o Google retém os dados coletados.

Encerrar um projeto

Console

  1. No console do Google Cloud, acesse a página Configurações do IAM e administrador.

    Acessar as configurações de IAM e administrador

    As etapas restantes aparecem no console do Google Cloud.

  2. Na página Configurações IAM e administrador, selecione o projeto que você quer excluir e clique em Encerrar.

    A opção Desativar só aparece para usuários com a permissão resourcemanager.projects.delete no projeto atual.

  3. Clique em Encerrar.
  4. Digite o ID do projeto e clique em Encerrar mesmo assim.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para excluir um projeto, use o comando gcloud projects delete:

    gcloud projects delete PROJECT_ID
    

    Em que PROJECT_ID é o código do projeto que você quer excluir.

API

O snippet de código a seguir exclui o projeto especificado:

Solicitação:

DELETE https://cloudresourcemanager.googleapis.com/v3/projects/my-project-123

Como solucionar problemas de exclusão de projetos

Se o processo de encerramento de um projeto falhar, você poderá encontrar mais informações em Solução de problemas de exclusão do projeto.

Restaurar um projeto

Os proprietários de projetos podem restaurar um projeto excluído dentro do período de recuperação de 30 dias, contados a partir de quando o projeto é encerrado. A restauração de um projeto faz com que ele retorne ao estado em que estava antes de ser desativado, com algumas exceções:

  • O faturamento é desativado no projeto quando ele é desativado e não é ativado automaticamente em projetos restaurados. A conta de faturamento do Cloud vai precisar ser vinculada manualmente de novo após a restauração do projeto. Talvez seja necessário aguardar algumas horas para vincular um projeto restaurado recentemente a uma conta de faturamento.
  • É possível recuperar a maioria dos recursos se você restaurar um projeto dentro do período de 30 dias.
  • Alguns serviços têm atrasos na restauração, e talvez seja necessário esperar algum tempo (até 36 horas) até que os serviços sejam restaurados.
  • Alguns recursos, como os do Cloud Storage ou Pub/Sub, são excluídos muito antes. Esses recursos podem não ser recuperados integralmente, mesmo se você restaurar o projeto dentro do período de 30 dias.
  • Pode ser que alguns serviços precisem ser reiniciados manualmente. Para obter mais informações, consulte Como reiniciar os serviços do Google Cloud.

É necessário ter a permissão resourcemanager.projects.undelete no projeto que você quer restaurar. Para restaurar um projeto:

Console

Para visualizar o projeto no console do Google Cloud, você precisa das seguintes permissões:

  • resourcemanager.projects.list
  • resourcemanager.folders.list
  • resourcemanager.projects.get
  1. Acesse a página Gerenciar recursos no console do Google Cloud.

    Acessar a página "Gerenciar recursos"

  2. No Seletor de projetos, na parte de cima da página, selecione o recurso da organização.

  3. Abaixo da lista de recursos, pastas e projetos da organização, clique em Recursos com exclusão pendente.

  4. Marque a caixa do projeto que você quer restaurar e clique em Restaurar. Na caixa de diálogo exibida, confirme que você quer restaurar o projeto.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para restaurar um projeto, use o comando gcloud projects undelete:

    gcloud projects undelete PROJECT_ID
    

    PROJECT_ID é o ID do projeto ou o número do projeto que você quer restaurar.

API

O snippet de código a seguir restaura o projeto especificado:

Solicitação:

POST https://cloudresourcemanager.googleapis.com/v3/projects/my-project-123:undelete