Configurar IPAM para redes de pod
RESUMEN La versión 22.1 de Cloud-Native Contrail® Networking™ admite la administración de direcciones IP (IPAM) para pods y servicios. Configure un Subnet
recurso para facilitar la asignación de direcciones IP.
IPAM en Contrail Networking nativa en la nube
Cloud-Native Contrail Networking presenta los Subnet
recursos y SubnetPool
y para el propósito de IPAM para pods y servicios. Cada Subnet
uno tiene un SubnetPool
. Estos recursos le permiten configurar la asignación de direcciones IPv4 e IPv6 en el clúster. Una VirtualNetwork
referencia a un Subnet
recurso para determinar subredes disponibles para nuevos pods y servicios. Varios VirtualNetworks
pueden hacer referencia a la misma Subnet
. El Subnet
recurso se traduce a IPAM y es consumido por el nodo de control y el agente vRouter.
Descripción general de SubredPool
El SubnetPool
sistema administra un conjunto de direcciones a partir de las cuales Subnets
se asignan. Cuando se produce una solicitud de una dirección IP, esa dirección IP se asigna desde una red virtual asociada SubnetPool
. EISC parámetros (longitud de prefijo, capacidad, rango) para la asignación de direcciones IP se determinan cuando se crea una SubnetPool
. Puede asignar prefijos adicionales si agota un SubnetPool
.
Considere el siguiente SubnetPool
ejemplo:
apiVersion: idallocator.contrail.juniper.net/v1 capacity: 262144 count: 157 kind: Pool max: 262143 metadata: creationTimestamp: null name: subnet-id-pool-Subnet-contrail-k8s-kubemanager-ocp-rdang-q8roaw-contrail-default-podnetwork-pod-v4-subnet reserved: - 0 - 262143 - 1
El capacity
parámetro indica el número total de identificaciones posibles en el grupo. El count
parámetro indica la cantidad de identificaciones usadas en el grupo. El max
parámetro indica la cantidad máxima de identificaciones disponibles para asignar desde el grupo. Un ID determinado se asigna a una dirección IP en el Subnet
grupo.
Descripción general de subred
El Subnet
es un bloque de direcciones IP y las configuraciones asociadas con esas direcciones. A Subnet
se basa en una sola familia de direcciones (IPv4, IPv6) a la vez. Debe crear IPv4 e IPv6 Subnets
independientes. Si no especifica un SubnetPool
, las Subnet
funciones son Contrail Classic IPAM. Esto significa que el Subnet
sistema se aísla a un solo espacio de nombres.
Considere el siguiente Subnet
ejemplo de especificaciones:
apiVersion: v1 kind: Subnet metadata: name: default-servicenetwork-pod-v4-subnet namespace: contrail-k8s-kubemanager-ocp spec: cidr: 10.128.0.0/16 defaultGateway: 10.128.0.1 ranges: - ipRanges: - from: 10.128.0.0 to: 10.128.0.255 key: contrail-k8s-kubemanager-ocp-user-4yu0qk-ocp-user-4yu0qk-ctrl-1
Los cidr
parámetros y defaultGateway
son los parámetros principales que definen un Subnet
recurso. El cidr
parámetro determina el intervalo de IP disponibles para la asignación en ese Subnet
. El defaultGateway
parámetro define la dirección IP de la defaultGateway
para . Subnet
Especificar una defaultGateway
dirección es opcional. Si no especifica una defaultGateway
dirección, se establece automáticamente como la primera dirección IP en el Subnet
.
Una configuración de nodo de Kubernetes puede tener un podCIDR
parámetro de configuración. El podCIDR
es un subconjunto de la default-podnetwork-subnet
. Cuando el podCIDR
está presente, la dirección IP de cualquier pod creado en ese nodo tendrá una dirección IP asignada desde el podCIDR
. Si no podCIDR
está presente, todas las direcciones IP en el EISC del Subnet
nodo se pueden asignar para el nodo. También podCIDR
puede hacer referencia a una clave comodín. En el ejemplo, las solicitudes de asignación de direcciones IP eligen entre IP 10.128.0.0
a 10.128.0.255
siempre que el pod de solicitud se cree en el nodo con la clave contrail-k8s-kubemanager-ocp-kparmar-4yu0qk-ocp-kparmar-4yu0qk-ctrl-1
.
Alternativamente, puede definir un ranges
parámetro . El ranges
parámetro define una lista de IP disponibles para la asignación. El ranges
parámetro reemplaza el parámetro EISC cuando está presente en una especificación. El ranges
parámetro no invalida el podCIDR
parámetro.
Descripción general de la red virtual
Cloud-Native Contrail Networking actualiza el recurso para que sea compatible con la VirtualNetwork
implementación de IPAM. Considere el siguiente ejemplo:
apiVersion: v3 kind: VirtualNetwork metadata: namespace: contrail name: virtualnetwork-sample spec: v4SubnetReference: apiVersion: core.contrail.juniper.net/v1 kind: Subnet namespace: contrail name: v4subnet v6SubnetReference: apiVersion: core.contrail.juniper.net/v1 kind: Subnet namespace: contrail name: v6subnet
Tenga en cuenta las referencias separadas Subnet
para la familia de direcciones IPv4 y la familia de direcciones IPv6. No puede actualizar la Subnet
referencia de un VirtualNetwork
a lo largo de todo el ciclo de vida de ese VirtualNetwork
.
Descripción general de direcciones IP de sesión de BGP como servicio
El BGP como servicio (BGPaaS) permite el establecimiento de una sesión de BGP entre un nodo de control a una dirección IP de carga de trabajo o pod. Puede crear una Subnet
con la DisableBGPaaSIPAutoAllocation
marca establecida en false o true. Cuando se establece en DisableBGPaaSIPAutoAllocation
false, se produce lo siguiente:
-
No se asigna ninguna dirección IP por
BGPaaSPrimaryIP
oBGPaaSSecondaryIP
de inmediato. Estas IP solo se asignan (dentro deSubnet
EISC rango) cuando la primeraBGPAsAService
se configura dentro de la red de estaSubnet
. -
Cuando elimina todos los
BGPAsAService
recursos asociados con unSubnet
, las direcciones IP asignadasBGPaaSPrimaryIP
y se liberan del grupo yBGPaaSSecondaryIP
se establecen en valores vacíos. Estas direcciones se vuelven a asignar desde el grupo cuando se configura una vez más.BGPAsAService
Cuando se establece la DisableBGPaaSIPAutoAllocation
marca en true, se produce lo siguiente:
-
Puede usar valores definidos por el usuario para los
BGPaaSPrimaryIP
campos yBGPaaSSecondaryIP
. Estos campos IP son obligatorios y no se pueden dejar vacíos. Los valores definidos por el usuario para estos campos también están reservados en elSubnet
grupo. -
Las direcciones IP utilizadas y
BGPaaSPrimaryIP
BGPaaSSecondaryIP
aún permanecen reservadas en elSubnet
grupo, incluso si no hay ningunaBGPAsAService
configurada o si se eliminan todos losBGPAsAService
recursos.
Cuando cambia el DisableBGPaaSIPAutoAllocation
campo de false a verdadero y BGPaaSPrimaryIP
BGPaaSSecondaryIP
se convierte en campos obligatorios. Si las IP se asignaron automáticamente antes de cambiar esta marca de false a true, esas IP se liberarán del grupo y las nuevas IP proporcionadas por el usuario se reservan en el grupo.
Cuando cambia DisableBGPaaSIPAutoAllocation
de verdadero a false , ocurre lo siguiente:
-
Si no se configura ningún
BGPAsAService
en elSubnet
,BGPaaSPrimaryIP
yBGPaaSSecondaryIP
los valores se liberan del grupo y estos campos quedan vacíos. -
Si al menos uno
BGPAsAService
está configurado, no se produce ningún cambio en los valores existentes deBGPaaSPrimaryIP
yBGPaaSSecondaryIP
.
Para obtener más información acerca del BGP como servicio (BGPaaS), consulte la sección Habilitar BGP como servicio .