Skip to content

Releases: liqotech/liqo

v1.1.2

03 Mar 08:47

Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • [FirewallConfiguration] nft filter rule equal check by @cheina97 in #3207
  • fix: always render EKS annots on wg server templates by @fra98 in #3208
  • fix: avoid false positive errors in controllers by @fra98 in #3212
  • [Networking] arm32 overflow by @cheina97 in #3218

🧹 Code Refactoring

✅ Tests

🚚 Dependencies Management

  • chore: update nftables library from v0.2.0 to v0.3.0 by @cheina97 in #3215
  • chore: bump github.com/go-git/go-git/v5 from 5.12.0 to 5.16.5 by @dependabot[bot] in #3196
  • chore: bump github.com/containerd/containerd from 1.7.12 to 1.7.29 by @dependabot[bot] in #3141
  • chore: bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 by @dependabot[bot] in #3211

Full Changelog: v1.1.1...v1.1.2

v1.1.1

17 Feb 17:34

Choose a tag to compare

What's Changed

🚚 Dependencies Management

Full Changelog: v1.1.0...v1.1.1

v1.1.0

17 Feb 16:56

Choose a tag to compare

What's Changed

🚀 New Features

  • [Network] TCP MSS clamping in Gateway by @cheina97 in #3176
  • [Webhook]: added skip label by @cheina97 in #3183
  • feat: add skip webhook label to non cross-cluster resources by @fra98 in #3185
  • [Networking] disable leader election in gateway by @cheina97 in #3186
  • [VirtualKubelet] shadowpod event reflection by @cheina97 in #3189
  • feat(vkoptions): add tolerations support for virtual kubelet pod by @aleoli in #3191
  • [Liqo-CRDs] CRD upgrade job by @cheina97 in #3192
  • feat(helm): support priorityClassName in default gateway templates by @fra98 in #3195
  • feat: avoid kyverno dependency in tests by @cheina97 in #3128
  • [API] Firewall: support IP ranges and accept/drop by @Wekkser in #2966
  • feat(gateway): add tolerations option for gateway pods by @aleoli in #3193
  • feat(pod-security): add pod security labels to tenant ns by @aleoli in #3184
  • [Core] feat: mark foreigncluster as permanently unreachable by @claudiolor in #3122
  • [Liqoctl] Force unpeer command by @giuliafalaschi in #3126

🐛 Bug Fixes

  • [Networking] fwcfg match port fix by @cheina97 in #3181
  • fix: fix a bug that CN should be consumer cluster id by @likakuli in #3171
  • fix: bind cluster-wide clusterroles with TolerateNoHandshake peering by @fra98 in #3201
  • fix: ignore not found InternalNode on deletion by @claudiolor in #3200
  • [Networking] Relieve stress on the Kubernetes API server. by @cheina97 in #3202

🧹 Code Refactoring

📝 Documentation

✅ Tests

🚚 Dependencies Management

📦 Builds Management

  • build(liqo-test): switch to setup‑envtest for envtest binaries by @aleoli in #3199

👷 CI/CD

New Contributors

Full Changelog: v1.0.3...v1.1.0

v1.0.3

18 Dec 09:47

Choose a tag to compare

What's Changed

🐛 Bug Fixes

Full Changelog: v1.0.2...v1.0.3

v1.0.2

16 Dec 15:50

Choose a tag to compare

What's Changed

🚀 New Features

  • [Network] wireguard-go post new build pipeline by @cheina97 in #3089
  • feat(auth): add TLS compatibility mode for authentication keys by @aleoli in #3109
  • [Liqoctl] Specify other (non-standard) resources with liqoctl commands by @claudiolor in #3138
  • feat: add helm values for affinity and ns on fabric ds by @fra98 in #3150

🐛 Bug Fixes

  • fix(reflection): handle errors when getting metadata accessor by @aleoli in #3106
  • fix(reflection): terminated pod reflection logic by @aleoli in #3107
  • [virtual-kubelet] Allow scheduling pods with name > 63 chars by @fra98 in #3111
  • [Auth module] fix: enable healthcheck with missing identity by @claudiolor in #3114
  • fix: handle nil chain type in FromChainToRulesArray by @riccardotornesello in #3131
  • [Network] Internalfabric get fix by @cheina97 in #3125
  • fix: backward compatibility with ed25519-only keys clusters by @claudiolor in #3165
  • [Network] fullmasquerade idempotency by @cheina97 in #3167

🧹 Code Refactoring

📝 Documentation

✅ Tests

  • [E2E] forge kubeconfig from service-account by @cheina97 in #3146
  • test(cni): update Cilium CLI version to v0.18.8 by @aleoli in #3149

🚚 Dependencies Management

👷 CI/CD

New Contributors

Full Changelog: v1.0.1...v1.0.2

v1.0.1

14 Jul 16:08

Choose a tag to compare

What's Changed

🚀 New Features

🐛 Bug Fixes

🧹 Code Refactoring

  • [Firewall] moved FwCfg util functions out of apis types folder by @fra98 in #2995
  • [Docs] update mariadb-galera version by @cheina97 in #3001
  • [Makefile] removed useless command by @cheina97 in #3056

📝 Documentation

🚚 Dependencies Management

  • chore: bump deprecated ubuntu 20.04 runner by @fra98 in #3027
  • chore: bump golangci-lint to v2 by @fra98 in #3009
  • chore: bump controller-runtime to v0.20.4 by @fra98 in #3028
  • Add image pull policy and secret handling across components by @aleoli in #3029

Other Changes

  • Adding information about community (how-to, meetings, etc) by @frisso in #2955
  • Update reflection.md to fix two trivial typos by @topiaruss in #3015
  • [Project] DevContainer configuration by @cheina97 in #3062

New Contributors

Full Changelog: v1.0.0...v1.0.1

v1.0.0

07 Mar 18:36

Choose a tag to compare

🚀 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-node vxlan 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

v1.0.0-rc.3

19 Dec 16:24

Choose a tag to compare

What's Changed

🚀 New Features

🐛 Bug Fixes

  • add missing ClusterRole to liqo-webhook by @EladDolev in #2726
  • fix: retrieve GatewayServer/GatewayClient resources by labels by @fra98 in #2758
  • Assign unique names to all controllers by @fra98 in #2771
  • fix: retrieve configuration resources by labels by @fra98 in #2772
  • fix: retrieve publickey resources by labels by @fra98 in #2773
  • fix: network status in ForeignCluster resource by @claudiolor in #2783
  • fix: avoid creation of VirtualNode if ResourceSlice deleting by @fra98 in #2786
  • fix: wggateway controllers pod watch by @cheina97 in #2815
  • test: fix HA replicas checks by @fra98 in #2804
  • fix: liqoctl cluster labels and API server addr override collection by @claudiolor in #2781
  • fix: nil pointer in network checker of liqoctl info peer by @claudiolor in #2797
  • [Fix] argocd install by @aleoli in #2794
  • [Fix] improve liqoctl uninstall error message by @claudiolor in #2825
  • [virtual-kubelet] namespacemap bidirectional fix by @cheina97 in #2870
  • [Deploy] Fixes for smooth ArgoCD uninstall by @claudiolor in #2847

🧹 Code Refactoring

  • Metrics: changed port from 8080 to 8082 by @cheina97 in #2818
  • refactor: use standard maps lib instead of experimental one by @fra98 in #2860
  • [Helm] uniform flag names by @aleoli in #2855

📝 Documentation

Other Changes

Full Changelog: v1.0.0-rc.2...v1.0.0-rc.3

v1.0.0-rc.2

04 Oct 05:51

Choose a tag to compare

What's Changed

🚀 New Features

🐛 Bug Fixes

🧹 Code Refactoring

📝 Documentation

Other Changes

Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2

v1.0.0-rc.1

02 Aug 17:43

Choose a tag to compare

v1.0.0-rc.1 Pre-release
Pre-release

New Liqo v1.0.0-rc.1 release

Liqo v1.0.0-rc.1 is here! 🚀

This is a major milestone for the project, bringing us closer to the stable 1.0 release. We encourage you to try out this release candidate and provide feedback. Your input is invaluable as we refine Liqo and prepare for the 1.0 release.

This major version includes a new suite of features and a big refactoring of the codebase:

  • fully declarative approach on all functionalities (install, peering, offloading, etc..)
  • a new division in 3 main modules: networking, authentication, offloading
  • modularity and independence between the 3 modules (e.g., the possibility to turn off individual modules)
  • new networking fabric
  • possibility to implement new networking technologies
  • new authentication workflow
  • possibility to have multiple virtual nodes targeting the same remote cluster, giving more flexibility and allowing to target specific node pools on the remote provider cluster
  • docs: new structure, improvements, new pages (e.g., advanced usage examples), fix deprecated features, and a lot more