Skip to content

Releases: kubeovn/kube-ovn

v1.5.2 -- Bugfix

01 Dec 03:10
Compare
Choose a tag to compare

New Feature

  • Iface now support regex
  • install.sh supports DPDK resource configuration
  • Masquerade other nodes to local pod to avoid NodePort triangle traffic

Monitoring

  • Add ping total count metric
  • Add ovs-vsctl show to diagnose results
  • Add kubectl describe no to diagnose results

Bugfix

  • Fix cleanup scripts
  • Update Go to 1.15
  • Check ipv6 requirement before start
  • Check if ovn-central ip exists in NODE_IPS before start
  • Fix external-address config description
  • Fix the problem of confusion between old and new versions of crd
  • Add resources limits to avoid eviction
  • NAT rules can be modified

Mics

  • Refactor iptable logs
  • Tolerate all taints
  • OVN/OVS log rotation

v1.5.1 -- Bugfix

26 Oct 08:12
Compare
Choose a tag to compare

This release mainly fix bugs found in v1.5.0 and add function of binding pod to specified subnet

New Feature

  • Support binding pod to subnet

Bugfix

  • Remove not alive pod in networkpolicy portGroup
  • Delete Pod when marked with deletionTimestamp
  • Use internal IP when node try to connect to pod
  • Do not advertise node switch cidr when enable ovn-ic
  • Wrong proto str for udp diagnose
  • Wrong ipv6 network format when update subnet
  • Broken RPM link
  • Default SSL var for compatibility
  • Wrong iptable order
  • Check multicast and loopback subnet
  • CodeQL scan warnings

Mics

  • CI: change to official docker buildx action
  • Perf: remove default acl rules
  • Perf: accelerate ic and ex gw update

Pod EIP, graceful update and more dashboard

28 Sep 07:54
60afb4e
Compare
Choose a tag to compare

From v1.5.0 Kube-OVN takes use of OVN distributed gateway router to implement SNAT and EIP functions. Users now can controller the external IP of a groups of pods. SFC functions is also integrated into OVN to further extend the capability of OVN. In this version, users can also enabled the TLS connection between Kube-OVN components to secure the communication. We also enhance the monitoring and diagnose tools, more metrics and Grafana dashboards are added to better expose the internal stats of the network.

New Feature

  • Pod level SNAT and EIP support, please check the Guide
  • Integrate SFC function into OVN
  • OVN-Controller graceful stop
  • Mirror config can be updated dynamically
  • Set more metadata to interface external-ids

Security

  • Support TLS connection between components
  • Change DB file access mode

Monitoring

  • Add more metrics to pinger dashboard
  • Add more metrics to kube-ovn-cni and a new Grafana dashboard
  • Diagnose show ovn-nb and ovn-sb overview

Mics

  • Update CI k8s to 1.19
  • Change kube-ovn-cni updateStrategy
  • Move CNI conf when kube-ovn-cni ready

Bugfix

  • Use NodeName as OVN chassis name
  • Stop OVN-IC if disabled
  • Uninstall scripts will clean up ipv6 iptables and ipset
  • Bridging-mapping may conflict, if enable vlan and external gateway
  • Pinger ipv6 mode fetch portmaping failed
  • Pinger diagnose should reuse cmd args

Multi-Cluster Network, ACL logs and more!

01 Sep 09:30
290e7ba
Compare
Choose a tag to compare

From 1.4, Kube-OVN can connect multiple cluster into one network. Pods in different cluster can communicate with others by Pod IP directly. This version also add ACL log function that can record when and why a packet is dropped by NetworkPolicy. We also enhance many dependency and improve the performance. Please look the changelog for more detail.

New Feature

  • Integrate OVN-IC to support multi-cluster networking, Multi-Cluster Networking Steps
  • Enable ACL log to record networkpolicy drop packets
  • Reserve source ip for NodePort service to local pod
  • Support vlan subnet switch to underlay gateway

Bugfix

  • Add forward accept rules
  • kubectl-ko cannot find nic
  • Prevent vlan/subnet init error logs
  • Subnet ACL might conflict if allSubnets and subnet cidr overlap
  • Missing session lb

Misc

  • Update ovs to 2.14
  • Update golang to 1.15
  • Suppress logs
  • Add psp rules
  • Remove juju log dependency

v1.3.0 -- Hadware Offload, Gateway QoS and Pod Gateway

31 Jul 06:37
Compare
Choose a tag to compare

From v1.3.0, Kube-OVN support hardware offload which can significantly improve data plane performance and save CPU resource. This version also add gateway qos, pod gateway, session affinity loadbalancer and more features for security and monitoring.

New Feature

  • Hardware offload to boost performance in Bare-Metal environment
  • Assigning a specific pod as gateway
  • Central gateway QoS
  • Session affinity service
  • Round-robbin IP allocation to relieve IP conflict

Security

  • Use gosec to audit code security
  • Use trivy to scan and fix image CVEs
  • Update loopback plugin to fix CVEs

Bugfix

  • Missing package for arm images
  • Node annotation overwrite incorrectly
  • Create/Delete order might lead ip conflict
  • Add MSS rules to resolve MTU issues

Monitoring

  • kubectl-ko support ovs-tracing
  • Pinger support metrics to resolve external address

Misc

  • Update OVN to 20.06
  • CRD version upgrade to v1
  • Optimize ARM build
  • Refactor ovs cmd with ovs.Exec
  • OVS-DPDK support config file
  • Add DPDK tools in OVS_DPDK image
  • Reduce image size of OVS-DPDK

v1.2.1 -- Bugfix

22 Jun 03:41
Compare
Choose a tag to compare

This release fix bugs found in v1.2.0

Bugfix

  • Add back privilege for IPv6
  • Update loopback cni to fix CVE issues
  • Node annotations overwrite incorrectly
  • Create/Delete order might lead to ip conflict

Geneve, Vlan, BGP and DPDK all in one network plugin

30 May 13:57
3ec9829
Compare
Choose a tag to compare

In this version, Kube-OVN support vlan and dpdk type network interfaces for higher performance requirement.
Thanks for Intel and Ruijie Networks guys who contribute these features.

Previously to expose Pod IP to external network, admins have to manually add static routes.
Now admins can try the new BGP features to dynamically announce routes to external network.

From this version, subnet CIDR can be changed after creation, and routes will be changed if gateway type is modified.

New Feature

  • Kube-OVN now supports OVS-DPDK, high performance dpdk application can run in pod
  • Kube-OVN now supports vlan underlay network to achieve better network performance
  • Kube-OVN now supports using BGP to announce Pod IP routes to external network
  • Subnet validator will check if subnet CIDR conflicts with svc or node CIDR
  • Subnet CIDR can be changed after creation
  • When subnet gateway changed, routes will aromatically changed

Monitoring

  • Check if dns and kubernetes svc exist
  • Make grafana dashboard more sensitive to changes

Misc

  • Patch upstream ovn to reduce lflow count
  • Add support for arm64 platform
  • Add support for kubernetes 1.18
  • Use github action to perform CI tasks
  • Optimize some log information
  • Move image to dockerhub

Bugfix:

  • OVS local interface table mac_in_use row is lower case, but pod annotation store mac in Upper case
  • fork go-ping to fix ping lost issues
  • Networkpolicy controller will panic if label is nil
  • Some concurrent panic when handle pod and subnet update
  • Some IPv6 break issues
  • Use kubectl version to avoid handshake errors in apiserver

v1.1.1 -- Bugfix

27 Apr 05:17
Compare
Choose a tag to compare

This release fix bugs found in v1.1.0.

Bugfix

  • Use legacy iptables to replace default iptables in centos:8 image
  • Mount etc/origin/ovn to ovs-ovn
  • Fix bugs in go-ping
  • Fix yaml indent error
  • Fix panic when handles networkpolicy

Monitoring

  • Make graph more sensitive to changes

Multi-nic, Hairpin LB and One-click Installation

07 Apr 06:22
0258e5d
Compare
Choose a tag to compare

v1.1.0 -- 2020/04/07

In this version, we refactor IPAM to separate IP allocation logical from OVN. On top of that we provide a general cluster wide IPAM utility for other CNI plugins. Now other CNI plugins like macvlan/host-device/vlan etc can take advantage of subnet and static ip allocation functions in Kube-OVN.Please check this document to see how we combine Kube-OVN and Multus-CNI to provide multi-nic container network.

This version also update OVN to 20.03 and OVS to 2.13 with some x86 related optimization, which increase the control plan data plan performance and we finally support hairpin LB now.

This version also simplify the installation steps by merge all components into one image and add a new one-click installation script to help users setup a high-available, production-ready Kube-OVN container network. Please look the installation guide

IPAM

  • Separate IPAM logical form OVN
  • Add support for Multus-CNI

Performance

  • Recycle address if pod is in failed or succeeded phase
  • Delete chassis form ovn-sb when node deleted
  • Only enqueue updatePod when needed
  • Add x86 optimization CFLAGS
  • Add support to disable encapsulation checksum

Monitor

  • Diagnose will check Kube-OVN components status
  • Diagnose will check crd status
  • Diagnose will check kube-proxy and coredns status

Bugfix

  • Use uuid to fetch lb vips
  • Add inactivity_probe back
  • Update svc might remove other svc that with same prefix
  • IP prefix might be empty
  • Enqueue subnet update to add route
  • Add iptables to accept container traffic

Chore

  • Update OVN to 20.03 and OVS to 2.13
  • Add support for Kubernetes 1.17
  • Put all component in one image to reduce distribute burden
  • Add scripts to build ovs
  • Add one script installer
  • Add uninstall script
  • Add more e2e tests

Bugfix

31 Mar 02:11
Compare
Choose a tag to compare

v1.0.1 -- 2020/03/31

This release fix bugs found in v1.0.0

Bugfix

  • Use uuid to fetch lb vips
  • Add inactivity_probe back
  • Update svc might remove other svc that with same prefix
  • IP prefix might be empty
  • Enqueue subnet update to add route