Vista geral da API de gestão de endereços IP

A API IP Address Management (IPAM) usa recursos personalizados do Kubernetes e baseia-se no modelo de recursos do Kubernetes (KRM). Gerir a atribuição de endereços IP numa implementação isolada do Google Distributed Cloud (GDC).

Para usar a API IPAM, recomendamos que use a CLI gdcloud ou chame a API diretamente através da CLI kubectl. Se a sua aplicação precisar de usar as suas próprias bibliotecas para chamar esta API, use os exemplos seguintes e as definições completas da API para criar os seus pedidos:

Ponto final do serviço e documento de descoberta

As APIs IPAM são fornecidas em dois pacotes, consoante a implementação zonal ou global.

Os pontos finais da API para as APIs IPAM zonais e globais são os seguintes, respetivamente:

  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.gdc.goog/v1
  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.global.gdc.goog/v1

A variável MANAGEMENT_API_SERVER_ENDPOINT é o ponto final do servidor da API Management.

Com o comando kubectl proxy, pode aceder a esse URL no seu navegador ou com uma ferramenta como curl para obter o documento de descoberta da API IPAM. O comando kubectl proxy abre um proxy para o servidor da API Kubernetes na sua máquina local. Depois de executar esse comando, pode aceder ao documento nos seguintes URLs:

  • http://127.0.0.1:8001/apis/ipam.gdc.goog/v1
  • http://127.0.0.1:8001/apis/ipam.global.gdc.goog/v1

Exemplos de recursos personalizados

Segue-se um exemplo de um objeto Subnet zonal:

apiVersion: ipam.gdc.goog/v1
kind: Subnet
metadata:
  labels:
    ipam.gdc.goog/overlay-network-type: External
    ipam.gdc.goog/category-type: ExternalOverlayNetwork
  name: test-subnet
  namespace: root
spec:
  type: Root
  ipv4Request:
    cidr: 10.0.0.0/16
  networkSpec:
    staticVLANID: 100
    enableVLANID: true
    enableGateway: true

Segue-se um exemplo de um objeto Subnet global para um CIDR raiz de VPC predefinido:

apiVersion: ipam.global.gdc.goog/v1
kind: Subnet
metadata:
  labels:
    ipam.gdc.goog/vpc: default-vpc
    ipam.gdc.goog/usage: network-root-range
  name: default-vpc-root-cidr
  namespace: platform
spec:
  ipv4Request:
    cidr: 10.200.0.0/23
  type: Root