Skip to content

New 'balloons' policy, bugfixes, dependency updates.

Compare
Choose a tag to compare
@klihub klihub released this 23 Jun 10:22
· 450 commits to master since this release
647cd55

This release introduces the new balloons policy. It also adds support for namespace-based allocation of reserved CPUs as well as pod- and namespace-based colocation of containers to the topology-aware policy. In addition to these, the release contains various other smaller functional improvements and a number of bug fixes. Dependencies are updated to more recent versions.

What's Changed

  • balloons: add PreferSpreadingDifferentNamespace option by @askervin in #814
  • balloons: improve dynamic configuration update by @askervin in #830
  • balloons: new policy with flexible pools and custom CPU params by @askervin in #791
  • balloons: reassign all containers on start and config change by @askervin in #813
  • Add cpu controller and integrate to balloons policy by @marquiz in #806
  • podpools: never count default pool CPUs in Instances percentages by @askervin in #782
  • podpools: fix test03 on cgroups v2 by @askervin in #783
  • topology-aware: Do not advertise shared CPUs if there are none by @jukkar in #777
  • topology-aware: Add ReservedPoolNamespaces option support by @jukkar in #780
  • topology-aware: Clone also CPU type in grant by @jukkar in #787
  • topology-aware: Add ReservedPoolNamespaces documentation by @jukkar in #789
  • topology-aware: Add support for reserved CPU annotations by @jukkar in #810
  • topology-aware: implement pod/namespace co-location using implicit affinities. by @klihub in #825
  • topology-aware: refuse empty reserved CPU set. by @klihub in #839
  • Reserved pool annotations additions by @jukkar in #812
  • cri-resmgr: fix cgroup v2 paths in available resources by @askervin in #851
  • resmgr: write a PID file upon successful startup. by @klihub in #756
  • Monitor the pool CPU usage for podpools-policy. by @huangrui666 in #705
  • Statically linked binaries in container images by @marquiz in #793
  • fixes: properly reject containers with invalid/unparsable affinity annotations. by @klihub in #743
  • fixes: better socket probing. by @klihub in #757
  • fixes: substitute golang version from go.mod. by @klihub in #834
  • crash fix: don't try to rebalance/deliver events/trigger post-update hooks with nil policy. by @klihub in #796
  • Fix SST discovery by @jukkar in #803
  • sst: Pass around pointer to SST info struct by @jukkar in #804
  • resmgr: disallow talking to untested runtimes by default. by @klihub in #821
  • sysfs: workaround for bogus NUMA meminfo entry. by @klihub in #795
  • control/cpu: add uncore frequency controls by @marquiz in #815
  • e2e: local vm-install-cri-resmgr installs systemd service by @askervin in #762
  • e2e: fix installing containernetworking with go 1.16 by @askervin in #733
  • e2e: add distro-install-kernel-dev for distro=opensuse by @askervin in #716
  • e2e: Enable cri-o in centos-8 by @jukkar in #734
  • e2e: Do not try to use govm if user has specified the VM address by @jukkar in #738
  • e2e: Add support for Fedora 35 images by @jukkar in #737
  • e2e: Fixes for non govm usage by @jukkar in #741
  • e2e: support vm-set-kernel-cmdline on opensuse by @askervin in #742
  • e2e: podpools metrics test by @askervin in #695
  • e2e: support distro=fedora-<34|33> by @askervin in #745
  • e2e: update distro=opensuse to 15.3 by @askervin in #751
  • e2e: add use_host_images=1, workaround to docker.io pull quota by @askervin in #752
  • e2e: containernetworkplugins in /opt/cni/bin in fedora by @askervin in #753
  • e2e: fix cilium installation and update to cilium v1.11 by @askervin in #748
  • e2e: support k8scni=<cilium|weavenet|flannel> by @askervin in #747
  • e2e: add vm-install-glibc, vm-set-glibc and on_*_install hooks by @askervin in #746
  • e2e: test container exit by @askervin in #704
  • e2e: detect cri-resmgr(-agent) with fuser/pidfile instead of pidof by @askervin in #754
  • e2e: add a test for distro/cni/cri combinations by @askervin in #755
  • e2e: vm-install-cri replaces original containerd/crio binary by @askervin in #749
  • e2e: support containerd and cgroups v2 in the blockio test by @askervin in #750
  • e2e: fix podXcY allowed resources finder by @askervin in #790
  • e2e: clear new control-plane taint set by new k8s by @askervin in #811
  • e2e: allow downgrading packages on .deb distros. by @askervin in #797
  • e2e: update ./run.sh debug to work with recent golang and dlv by @askervin in #826
  • e2e: add support for distro=ubuntu-22.04 by @askervin in #822
  • e2e: enable running tests on multi-node clusters by @askervin in #818
  • e2e: add kubectl-force-delete() by @askervin in #827
  • e2e: clean up after namespace colocation tests. by @klihub in #837
  • e2e: produce more readable policy test suite logs. by @klihub in #838
  • e2e: don't use invalid '0' CPU reservation. by @klihub in #840
  • e2e: add test for dynamic balloons configuration update by @askervin in #831
  • e2e: ambigious allowed resources for each name is an error by @askervin in #841
  • e2e: fix/update balloons test05 by @askervin in #843
  • e2e: fix log parsing in podpools test05-prometheus-metrics by @askervin in #844
  • e2e: try rebooting harder for/after isolcpu tests. by @klihub in #846
  • e2e: fix centos-[78] packaging tests. by @klihub in #853
  • e2e: distro=debian-11 by @askervin in #759
  • Add memtier-benchmark-02, a multi-memtier-containers variant. by @okartau in #816
  • demo/lib: fix kubernetes installation on centos-[78]. by @klihub in #852
  • build: pull/refresh cross-build source image. by @klihub in #849
  • build: build binary tarball from static binaries. by @klihub in #854
  • build: add target for cross-building binary tarballs using a CentOS-7 container. by @klihub in #786
  • build: fix supported distro detection. by @klihub in #848
  • cross-build: build using golang version 1.17. by @klihub in #785
  • cross-build: fixup centos-8 repos. by @klihub in #847
  • Makefile: add static building with make STATIC=1 by @askervin in #800
  • scripts/build/get-buildid: return unknown version by @marquiz in #736
  • scripts: add go-mod-tree for inspecting dependencies by @askervin in #664
  • .githooks: add hook to check go version conistency. by @klihub in #765
  • deps: update k8s dependencies to 1.24.1. by @klihub in #835
  • .github: use golangci-lint v1.46.2. by @klihub in #832
  • docs: update rdt config examples by @marquiz in #819
  • docs: fix docs Sphinx build breaking in github actions. by @klihub in #735
  • docs: Fix doc and example config typos/indentation by @wpross in #768
  • docs: document rdt related annotations by @marquiz in #767
  • docs: use myst markdown parser for docs/releases too by @marquiz in #770
  • docs: fix typo in rdt documentation by @marquiz in #776
  • webhook: update example deployment node selector and toleration by @askervin in #845
  • CODEOWNERS: add @jukkar. by @klihub in #758
  • packages: add Ubuntu 22.04 cross-build and package tests by @askervin in #850

New Contributors

Full Changelog: v0.6.0...v0.7.0