🚀 Liqo v1.0.0 Release Notes 🚀
🚨 Breaking Changes Alert
This release contains significant breaking changes.
The Liqo v1.0.0
release includes many breaking changes, due to the necessity to bring more modularity and flexibility to the project, a cleaner and more granular control (e.g., fully declarative APIs to control the most important features of Liqo), and other features.
Even more important, the Liqo team believes that the project is now mature and stable enough to be safely deployed in production environments, and to consolidate most of its APIs that were defined as alpha
in the past.
📝 Fully declarative APIs
This approach allows users to support gitops and automation use cases, as Liqo can be completely configured via CRs, without necessarily relying on liqoctl (e.g., perform peering declaratively, easily integrate Liqo with other services).
🧩 Modularity
Liqo is now structured in three core modules (network, authentication, and offloading) that are totally independent and can be individually configured and used (e.g. you can enable offloading or resource reflection without necessarily setting up the network connectivity between the clusters, which can be provided by other third-party tools).
🌐 Network Module
Complete re-design of the network fabric, involving:
- A new communication model inside the cluster (i.e., intra-cluster traffic now flows inside the CNI thanks to node-to-gateway
geneve
tunnels replacing the old node-to-nodevxlan
overlay) - A new, simplified model for the inter-cluster connectivity (still based on
wireguard
, but more robust and open to other technologies)
🔐 Authentication Module
The peering authentication between clusters is now:
- Fully declarative and simpler (it does not require exposing a dedicated auth service anymore as well as no API server exposition is necessary from the consumer side)
- More robust overall (e.g., fixing a broken peer is easier and faster)
- Minimized permissions required on the provider cluster to establish a peering connection with liqoctl
- New
ResourceSlice
CR allows a more granular and flexible control of the resources requested to provider clusters
🚢 Offloading Module
- It is now possible to have multiple virtual nodes targeting the same remote provider cluster
- This allows splitting the resources of bigger clusters across multiple virtual nodes
- Support for nodes with specific resources (e.g. GPUs) or characteristics (e.g. specific architectures)
- Share huge resource pools with another cluster while keeping the virtual nodes size quite small, avoiding a "black hole" effect during scheduling
🔮 What's Next?
There are many more news and features that will be presented in dedicated blog posts and community meetings.
Stay tuned! 📢
The Liqo Team