Skip to content

VIP Reservation

In some scenarios we want to dynamically reserve part of the IP but not assign it to Pods but to other infrastructure e.g:

  • Kubernetes nested Kubernetes scenarios where the upper Kubernetes uses the Underlay network take up the available addresses of the underlying Subnet.
  • LB or other network infrastructure requires the use of an IP within a Subnet.

Create Random Address VIP

If you just want to set aside a number of IPs and have no requirement for the IP addresses themselves, you can use the following yaml to create them:

apiVersion: kubeovn.io/v1
kind: Vip
metadata:
  name: vip-dynamic-01
spec:
  subnet: ovn-default
  • subnet: reserve the IP from this Subnet.

Query the VIP after creation.

# kubectl get vip
NAME             V4IP         PV4IP   MAC                 PMAC   V6IP   PV6IP   SUBNET        READY
vip-dynamic-01   10.16.0.12           00:00:00:F0:DB:25                         ovn-default   true

It can be seen that the VIP is assigned the IP address 10.16.0.12, which can later be used by other network infrastructures.

Create a fixed address VIP

The IP address of the reserved VIP can be fixed using the following yaml:

apiVersion: kubeovn.io/v1
kind: Vip
metadata:
  name: static-vip01
spec:
  subnet: ovn-default 
  v4Ip: "10.16.0.121"
  • subnet: reserve the IP from this Subnet.
  • v4Ip: A fixed-assigned IP address that should within the CIDR range of subnet.

Query the VIP after creation:

# kubectl get vip
NAME             V4IP         PV4IP   MAC                 PMAC   V6IP   PV6IP   SUBNET        READY
static-vip01   10.16.0.121           00:00:00:F0:DB:26                         ovn-default   true

It can be seen that the VIP has been assigned the expected IP address.

微信群 Slack Twitter Support


Last update: July 3, 2022
Created: June 30, 2022

Comments

Back to top