La API de gestión de direcciones IP (IPAM) usa recursos personalizados de Kubernetes y se basa en el modelo de recursos de Kubernetes (KRM). Gestiona la asignación de direcciones IP en una implementación con air gap de Google Distributed Cloud (GDC).
Para usar la API IPAM, te recomendamos que utilices la CLI de gdcloud o que llames a la API directamente con la CLI de kubectl
. Si tu aplicación necesita usar tus propias bibliotecas para llamar a esta API, utiliza los siguientes ejemplos y las definiciones completas de la API para crear tus solicitudes:
Punto de conexión de servicio y documento de descubrimiento
Las APIs de IPAM se proporcionan en dos paquetes, según la implementación zonal o global.
Los endpoints de las APIs de IPAM zonales y globales son los siguientes, respectivamente:
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.gdc.goog/v1
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.global.gdc.goog/v1
La variable MANAGEMENT_API_SERVER_ENDPOINT
es el endpoint del servidor de la API Management.
Con el comando kubectl proxy
, puedes acceder a esa URL en tu navegador o con una herramienta como curl
para obtener el documento de descubrimiento de la API IPAM.
El comando kubectl proxy
abre un proxy al servidor de la API de Kubernetes en tu máquina local. Una vez que se haya ejecutado ese comando, podrás acceder al documento en las siguientes URLs:
http://127.0.0.1:8001/apis/ipam.gdc.goog/v1
http://127.0.0.1:8001/apis/ipam.global.gdc.goog/v1
Ejemplo de recursos personalizados
A continuación, se muestra un ejemplo de un 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
A continuación se muestra un ejemplo de un objeto Subnet
global para un CIDR raíz de VPC predeterminado:
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