Introdução

NSX é a solução de Rede Definida por Software (SDN) da VMware que busca solucionar problemas de flexibilização de rede, microssegmentação, gerência centralizada, além de soluções de segurança e de balanceamento de carga.

Como parte dos componentes da solução Oracle Cloud VMware Solution (OCVS) é de suma importância que os clientes conheçam como interagir com essa solução e como extrair o máximo da solução.

O Problema

Resultante de uma operação abrupta (como a falha de um servidor e posterior desativação de forma definitiva) ou uma configuração errônea, é possível que o cliente se depare com uma situação em que, ao tentar adicionar um novo nó, uma mensagem de erro dizendo que não há IP disponível na rede de VTEP ocorra. Entretanto, o cliente tem plena certeza de que o CIDR configurado deveria suportar a quantidade de interfaces VTEP frente à quantidade de servidores do ambiente.

Mensagem de erro do VTEP dizendo: Failed to get a valid IP from IpPool

Verificando a mensagem de erro, é possível notar que houve uma falha para obtermos um IP válido de nosso IP Pool.

Para validarmos o uso de nosso IP Pool precisamos logar na console do NSX e navegar até Networking > Trocar a visão de Policy para Manager (canto superior direito) > IP Address Pools > Clicar sobre o número de IPs da rede VTEP-IP-Pool.

Imagem demonstrando etapas para verificar o Pool do VTEP

É possível notar que todos os 13 IPs que o CIDR configurado possuí estão em uso. Entretanto, possuo apenas 5 servidores configurados com 2 placas de VTEP cada (10 IPs alocados) e estou adicionando um novo servidor. Isso nos mostra que a tabela de endereços utilizados está preenchida de maneira incorreta (devido a uma remoção abruta de um servidor no passado).

Para fins de confirmação, realizamos um teste de PING nos IPs desejados, através da VMKernel de VTEP de um host funcional.

Execução do comando vmkping -I vmk11 -S vxlan 10.15.1.69

Comprovado que o IP não está em uso, seguiremos para a solução.

A Solução

A console do NSX e o CLI não possuem uma forma nativa de fazer a manipulação dos IPs utilizados no VTEP IP Pool, mas a API sim!

Essa informação está disponível na documentação oficial da API do NSX no item 3.7.1.2.6.2 IP Pools.

Munidos dessa informação, faremos algumas chamadas via aplicativo POSTMAN (você pode utilizar o CURL ou a ferramenta de sua preferência) para obter o ID do nosso IP Pool, validar se os IPs que desejamos liberar estão listados e então liberarmos para serem utilizados novamente.

1. Configurar o Postman

Criaremos 3 variáveis de ambiente no Postman para facilitar nossa manipulação, sendo elas:

baseURL com o IP ou endereço do nosso NSX Manager

nsx-user com o usuário com permissão de CRUD 

nsx-password a respectiva senha para esse usuário

Imagem com as variáveis de autenticação do Postman

2. Obter o IP-Pool

Faremos uma API Call do tipo GET na URL https://{{baseURL}}/api/v1/pools/ip-pools/ para obter o ID do VTEP-IP-Pool.

Postman com o comando GET para https://{{baseURL}}/api/v1/pools/ip-pools/

3. Listar os IPs alocados

Faremos mais um GET para validarmos se todos os IPs estão alocados corretamente: https://{{baseURL}}/api/v1/pools/ip-pools/<ID-IP-POOL>/allocations

<img alt="Imagem do Postman executando o comando https://{{baseURL}}/api/v1/pools/ip-pools//allocations” height=”645″ src=”/wp-content/uploads/sites/110/2025/12/VTEP-Postman-IP-Allocation.png” width=”1798″>

4. Remover os IPs desejados

Certificados que o IP realmente não está em uso por nenhum componente e que podemos remover, faremos um POST na URL https://{{baseURL}}/api/v1/pools/ip-pools/<ID-IP-POOL>?action=RELEASE no formato JSON e incluiremos no corpo do POST o parâmetro {“allocation_id”: “<IP_DESEEJADO>”}.

<img alt="Imagem do Postmant executando um POST do tipo JSON na URL https://{{baseURL}}/policy/api/v1/pools/ip-pools/?action=RELEASE” height=”414″ src=”/wp-content/uploads/sites/110/2025/12/VTEP-Postman-IP-Release.png” width=”1782″>

 

5. Listar os IPs alocados

Aguarde entre 2 e 5 minutos para que a informação seja populada na base do NSX Manager e replicada aos demais Managers e repita a verificação do Passo 3 (GET https://{{baseURL}}/api/v1/pools/ip-pools/<ID-IP-POOL>/allocations).

Você não deve obter mais os IPs removidos na listagem.

6. Verificar se as informações estão na console

O mesmo comportamento da etapa 5 deve se repetir na console do NSX Manager conforme descrito no tópico O Problema.

Imagem da console do NSX Manager mostrando a redução dos IPs usados em VTEP-IP-Pool

Conclusão

Neste artigo vemos que até mesmo uma ferramenta poderosa como o NSX pode sofrer com algumas opções que não foram implementadas em tela, mas que os desenvolvedores da solução nos dão caminhos alternativos para conseguirmos operar e corrigir possíveis problemas.

Lembre-se que a apesar de a utilização das APIs serem suportadas pela VMware e o ambiente ser gerenciado pelo cliente, caso você não se sinta confortável, sempre é possível abrir um chamado para a Oracle apoiá-lo no OCVS e, quando necessário, engajar o time da VMware para analisar com maior riqueza de detalhes o caso.