An underlay network, as the name implies, is an underlying network that features low latency, high reliability, and strong security. These characteristics are exactly what latency-sensitive applications need for optimal user experience, and also facilitate efficient management and protection of network resources. Underlay networks are commonly used for latency-sensitive applications, firewall security control and other scenarios.
-
Latency-sensitive applications: applications in specific industries, such as financial trading and real-time video transmission, are highly sensitive to network latency. Underlay networks directly control physical and link-layer connections to reduce data transmission time, providing an ideal solution for these applications.
-
Firewall security control and management: firewalls are often used to manage north-south traffic, namely communication between internal and external networks, by checking, filtering, and restricting communication traffic. IP address management (IPAM) solutions of underlay networks that allocate fixed egress IP addresses for applications can provide better communication management and control between the cluster and external networks, further enhancing overall network security.
The rising popularity of private cloud data centers has made underlay networks essential components of data center network architecture by offering efficient network transmission and improved network topology management capabilities.
01
The Requirements of IP Address Allocation across Network Zones
I recently encountered a scenario while using an underlay network where the nodes of a cluster were distributed across different regions or data centers. Some nodes were restricted to using subnet 10.6.1.0/24 while others could only use subnet 172.16.2.0/24. For an application deploying replicas across subnets, it is essential for IPAM to assign IP addresses that match the subnet for different Pods of the same application on various nodes, ensuring Pods running normally. To achieve this, IPAM must support IP allocation across network zones, enabling flexible deployment and scalability of applications.
The following network topology diagram illustrates this scenario:
Allocating IP addresses across network zones for replicas of the same application is a common production requirement in underlay networks. For this reason, Spiderpool has emerged as an open-source IPAM project for Kubernetes. Spiderpool offers a flexible and intelligent solution for IP allocation across network zones, making it easier to manage IP addresses for applications with replicas distributed across different subnets. Let’s dive deeper into Spiderpool.
02
A New Solution: Spiderpool
Spiderpool(https://github.com/spidernet-io/spiderpool) is a Kubernetes IPAM plugin designed to address the specific requirements of underlay networks. It can work with any CNI project that supports third-party IPAM plugins. One of its key features is the ability to allocate IP addresses across network zones, in addition to supporting application IP address fixation, automatic scaling of IP addresses, multiple NICs, and dual-stack. For more information on Spiderpool’s capabilities, please refer to the Spiderpool feature introduction(https://github.com/spidernet-io/spiderpool/blob/main/README-zh_CN.md)Let’s dive deeper into Spiderpool.
03
Demo Environments
To showcase how Spiderpool can allocate IP addresses across network zones, I have prepared a cluster that spans multiple networks and labeled the nodes with available subnet tags. Below is the information about the cluster being used:
04
Install
Following the instructions in the Spiderpool, I have set up an environment with Multus, Macvlan, Veth, and Spiderpool. The following example demonstrates how SpiderSubnet instances can be created using their own environment:
未经允许不得转载:DaoCloud道客博客 » Cloud-Native Spiderpool: IP Allocation Across Network Zones