v0.10.0
This release of flannel contains many new features and improvements. Highlights include
- A new IPIP backend.
- A configuration for using Wireguard with the extensions backend.
- Some build changes. All images are now based on Alpine Linux.
- Initial groundwork for Windows support.
- Some changes to how subnets are configured. Flannel now performs additional checks on the configuration options that users supply.
- Changes to the kubernetes manifests
- The CNI configuration is now specified as a
.conflist
which allows multiple plugins to be chained. If you are upgrading flannel by just applying the new manifest, then kubernetes will continue to use the old.conf
instead of the new.conflist
until you manually delete the.conf
file. See discussion in #855 (comment) for more details. - The CNI configuration now includes the portmap plugin to provide hostPort functionality. You must ensure that the plugin is installed on your host (it will be if you have at least version 0.6.0 of the CNI plugins). This kubernetes manifest in this repo does not install any CNI binaries so you must install another way.
- The CNI configuration is now specified as a
- A number of other bug fixes and improvements. See below for the full list.
The full list of changes
IPIP
#842 Add new ipip backend (thanks @chenchun)
Wireguard
#898 backend/extension: Add Wireguard configuration (thanks @tomdee)
Builds
#859 Makefile: Stop building ACIs (thanks @tomdee)
#860 Makefile: Cleanup, alpine and amd64 only UDP (thanks @tomdee)
#863 MAINTAINER is deprecated, using LABEL now (thanks @cglewis)
Windows
#911 flannel: Get flannel running on windows (thanks @tomdee)
#879 backend: Get flannel building on windows with stubs (thanks @jroggeman)
#903 Fix to build/release windows binaries from Linux (thanks @madhanrm)
#854 network: move ipmasq management into platform-specific files (thanks @jroggeman)
Handling of subnet config
This changes could cause problems when using very small subnets.
#896 subnet/config.go: Fix handling of subnet config (thanks @tomdee)
#894 subnet/config.go: Ensure that Subnets are aligned (thanks @tomdee)
Manifests
#855 make sure flanneld got QoS class "Guaranteed" to have lower oom_score_adj (thanks @Dieken)
#888 Add portmap plugin to CNI conf (thanks @osoriano)
#884 Documentation/Manifests: Improve YMLs. (thanks @Gacko)
#849 kube-flannel-cfg: enable hairpin mode (thanks @Dieken)
#910 Correct Spelling ClusterRoleBinding (thanks @abhaydiwan)
Bug fixes and small improvments
#843 Remove unexpected route from route list (thanks @chenchun)
#840 Fix #712, allow overwriting the public IP of a Kubernetes node (thanks @alvaroaleman)
#897 backend/vxlan: Return correct MTU value (thanks @tomdee)
Automated testing
#845 Add support for multiarch e2e tests (thanks @mkumatag)
#816 Improve functional tests (thanks @tomdee)
#850 Fix TTY error while running e2e tests in container (thanks @mkumatag)
#876 Fix e2e tests for non-amd64 archs (thanks @mkumatag)
#861 Remove leftover containers (thanks @mkumatag)
#858 travis: Only run the tests once (thanks @tomdee)
Logging
#827 Fix printf verb %s of wrong type (thanks @sakeven)
#893 subnet/etcdv2/local_manager.go: Fix startup log (thanks @tomdee)
#873 Log kubernetes public ip override (thanks @alvaroaleman)
#828 Fix error message in ipmasq (thanks @sakeven)
Documentation Changes
#912 automated PR: update CoC (thanks @ericchiang)
#907 fixes typo (thanks @karthequian)
#857 README.md: fix link to kubernetes documentation (thanks @ysim)
#856 Comment out the PR template message and add release note section (thanks @gunjan5)
#880 [DOC] Clarify GCE route quota is only 100 by default (thanks @yuvipanda)
#868 fix typo (thanks @vissible)
#839 All lowercase filename (thanks @athai)