Cota do Google Cloud IN_USE_ADDRESSES excedida.

19

Passo as últimas 3 horas procurando maneiras de liberar endereços IP em uso da API do Google Compute Engine, pois tenho 8/8 em uso. Eu pesquisei, li os manuais, mas não há como liberá-lo em qualquer lugar do console. Estou tentando configurar um aplicativo Rails. Ao compilar, ele ficou preso com erros, pois eu não forneci o soquete correto para o DB (o que realmente não importa aqui). Ao ficar preso, lancei com Ctrl + C no meu terminal e presumo que seja o problema. - Sou totalmente novo no Google Cloud, portanto, só posso assumir.

A mensagem de erro:

ERROR: (gcloud.app.deploy) Error Response: [400] The following quotas were exceeded: IN_USE_ADDRESSES (quota: 8, used: 8 + needed: 2).
https://appengine.googleapis.com/v1/apps/workepics/services/default/versions?alt=json

Aqui visualizado no console: insira a descrição da imagem aqui

Quando clico no console nos mecanismos de computação, apenas me perguntam se quero criar um. Não há outra opção.

Qualquer ajuda seria apreciada! Obrigado.

Georg Keferböck
fonte
cloud.google.com/compute/quotas "Se você espera um aumento notável no uso, poderá solicitar proativamente ajustes de cota na página Cotas no Cloud Platform Console."
precisa
@ceejayoz Não quero um aumento nas cotas. Basicamente, só quero encontrar uma maneira de liberar os endereços IP atuais em uso. Compilei meu aplicativo algumas vezes e ele aparece a cada compilação, um novo endereço IP foi adicionado.
Georg Keferböck 18/08/19
11
Consulte stackoverflow.com/questions/37381694/… , então. Suas implantações antigas ainda estão em execução (e custando dinheiro). Você vai querer finalizá-los.
precisa
11
Lifesaver! @ceejayoz
Georg Keferböck
11
@ceejayoz, você pode adicionar esses dois links a uma resposta para que eu possa lhe dar os pontos: cloud.google.com/sdk/gcloud/reference/app/versions/list cloud.google.com/sdk/gcloud/reference/app / versions / stop Esses links explicam como parar e excluir versões. Eu não estava familiarizado com o conceito e, portanto, não sabia. Talvez alguém se encontre em uma situação semelhante. Obrigado
Georg Keferböck 18/17

Respostas:

9

Não posso aceitar todo o crédito por esta resposta - acabei de me lembrar desta - mas uma implantação na nuvem do Google mantém a implantação antiga (e, portanto, usando um IP e seu dinheiro suado) indefinidamente.

As implantações podem ser acionadas --stop-previous-versionpara evitar esse comportamento, e você pode usar listar e parar para localizar e remover as implantações antigas, para que elas não usem mais recursos.

ceejayoz
fonte
11
Executei este one-liner para limpar minhas implantações antigas: gcloud app versions list | grep -v SERVING | awk '{print $2}' | tail -n +1 | xargs -I {} gcloud app versions delete {}
user2688473
4

Eu nem tenho um aplicativo implantado, apenas um cluster Kubernetes; portanto, nenhuma das sugestões me ajudou. Continuei excluindo o cluster e depois recriando.

Encontrei esta página que lista os IPs externos em uso, o que parece ser a raiz do problema. Deverá funcionar, independentemente do motivo dos seus endereços IP usados: https://console.cloud.google.com/networking/addresses/list

Para o meu caso de balanceadores de carga, o problema foi: excluí todos os meus clusters e ainda vi endereços em uso. Em seguida, encontrei esta página que permite excluir os mapeamentos de IP do balanceador de carga: https://console.cloud.google.com/net-services/loadbalancing/advanced/forwardingRules/list Recriou os clusters e serviços, e tudo funciona bem agora.

Não sei por que excluir o cluster não liberou os endereços desta vez. Talvez porque eu cancelei no meio da criação de um cluster.

sudo
fonte
11
Sim! Muito obrigado - balanceadores de carga para mim também. Fiquei muito desleixado com a criação do meu cluster / recurso, então acho que essa foi a causa. Essa deve ser a resposta aceita, já que é a solução mais geral.
Michael Hays
Se eu pudesse reproduzir isso, enviaria um relatório de bug, porque parece um bug.
Sudo #
3

Eu recebi o mesmo erro, mas o motivo foi que minha compilação estava apontando para um projeto errado (lista de configurações do gcloud). Eu havia configurado o SQL da nuvem no meu código, mas estava em um projeto diferente do mecanismo de aplicativo em que estava tentando implantar. O erro mostrado foi exatamente como mencionado na edição acima.

Neelima
fonte
0

Eu tive o problema no kubernetes quando quis adicionar um novo nó. Resolvido assim:

  • kubectl get svc
  • Exclua serviços antigos com kubectl delete svc [service-name]

Espero que isso ajude mais alguém.

Tobias Ernst
fonte
0

Para esse problema, ao criar a VM, não forneça o IP externo -

  1. Clique em Gerenciamento, Segurança, Discos, Rede, Arrendamento Único
  2. Clique em Rede
  3. Clique na interface de rede
  4. Em IP externo - não dê nenhum

Isso funcionou para mim

sahithya
fonte