Announcing Flux 2.1 GA
We are happy to announce the latest GA releases for Flux and Flagger.
This new release comes with lots of new features, fixes, restructured documentation and performance improvements. Everyone is encouraged to upgrade for the best experience.
The Flux APIs were extended with new opt-in features in a backwards-compatible manner.
The Flux Git capabilities have been improved with support for Git push options, Git refspec, Gerrit, HTTP/S and SOCKS5 proxies.
In case you missed it, Flux reached General Availability in June. You can read the announcement here.
You can now check the end-of-life(EOL) dates and support information for different Flux versions at https://endoflife.date/flux.
has a new field
.spec.proxySecretRefthat is used for specifying proxy configuration to use for all remote Git operations related to the particular object.
.spec.verify.modefield of the GitRepository API now accepts one of the following values
TagAndHEAD. These values are used to specify how the Git tags and commits are verified.
server-side apply behaviour
in the kustomize-controller has been extended with two extra policies:
Ignore. These policies are specified with the
kustomize.toolkit.fluxcd.io/ssaannotation on the resource manifest. The
IfNotPresentpolicy is useful to have Flux create an object that will later be managed by another controller.
- Support for sending notifications to DataDog.
ImageUpdateAutomation API has two
new optional fields -
.spec.git.push.optionsfor to specify a refspec and push options that will be used when pushing commits upstream.
Fixes and improvements
Here is a short list of features and improvements in this release:
- A new flag
--concurrent-ssahas been introduced in the kustomize-controller to set the number of concurrent server-side operations that will be performed by the controller per object. This increases speed when reconciling Kustomization with a considerable amount of objects.
- Performance improvement when loading helm repositories with large indexes (up to 80% memory reduction).
- The load distribution has been improved when reconciling Flux objects in parallel to reduce CPU and memory spikes.
- The Installation and Monitoring sections of the Flux documentation have been restructured to make navigation and locating guides easier. We are always open to receiving feedback on how we can improve the documentation.
- All APIs that accept TLS data have been modified to support Kubernetes TLS style secrets.
keyFilehave been deprecated. For more details about the TLS changes please see the Kubernetes TLS Secrets section.
- ⚠️ Breaking changes: This release comes with breaking changes to the Flux monitoring stack (Prom+Grafana). The stack now leverages the kube-state-metrics Custom Resource State metrics to report some Flux resource metrics. This will allow users to extend the Flux metrics with custom metadata. The monitoring configuration in the fluxcd/flux2 repository is now deprecated and will be removed in a future release. The new monitoring configuration is located at fluxcd/flux2-monitoring-example. Please see the new monitoring guide https://fluxcd.io/flux/monitoring for more information.
To upgrade Flux from v0.x to v2.1.0 please follow the Flux GA upgrade procedure.
You can take a look at the changelog for the full list of changes.
❣️Big thanks to all the Flux contributors who helped us with this release!
Flux Grafana Dashboards
The Flux monitoring stack comes with two dashboards for easy visualization of Flux controllers and resource metrics. You can follow this link to learn how to set it up.
This release fixes bugs related to the Canary lifecycle. The
is no longer called if the Canary is in the
WaitingPromotion phase. Furthermore, a bug which
caused downtime when initializing the Canary deployment has been fixed. Also, a bug in the
request-duration metric for Traefik which assumed the result to be in milliseconds
instead of seconds has been addressed.
The loadtester now also supports running
Please see the changelog for the full changes.
This section highlights additions to our community - new contributors, project members, maintainers or adopters.
We are very pleased to announce that the following adopters of Flux have come forward and added themselves to our website:
- Zeit Online: a German-language platform for demanding online journalism and reader discussions with level.
- Sonatype: a developer-friendly full-spectrum software supply chain management platform helps organizations and software developers.
- Prophesee: a company using sensor design and AI algorithms to develop computer vision systems.
- Infolegale: a legal information platform to monitor company solvency.
- Eco Vadis: a collaborative platform that allows companies to assess the environmental and social performance of their suppliers.
If you have not already done so, use the instructions here or give us a ping and we will help to add you. Not only is it great for us to get to know and welcome you to our community. It also gives the team a big boost in morale to know where in the world Flux is used everywhere.
Shoutout to all our new contributors:
- Brian Dols
- Chip Zoller
- Frank J Kelly
- Gerard Krupa
- Marcus Weiner
- Mihai Ratoiu
- Stéphane Este-Gracias
- Stephan Scheying
Thanks to all of our old and new contributors, and reach out if you’d like to become one as well.
People writing/talking about Flux
We love it when you all write about Flux and share your experience, write how-tos on integrating Flux with other pieces of software or other things. Give us a shout-out and we will link it from this section!
Our friends at Upbound wrote a great blog post on how you can use the power of Flux and Crossplane to drive control plane interactions and configure your control plane for GitOps Flows.
Rupin Solanki describes how to leverage Flagger and Istio, to automate the canary release process, ensure seamless traffic shifting and real-time application health monitoring.
It’s important to keep you up to date with events in Flux and provide simple ways to see our work in action and chat with our engineers.
In August here are a couple of talks we would like to highlight.
Cloud Native Islamabad - Harnessing the Power of GitOps with Flux
Flux maintainer, Stefan Prodan spoke at Cloud Native Islamabad on Harnessing the Power of GitOps with Flux. It is packed with a informed introduction to the concept of GitOps and a demo of Flux and the Weave GitOps UI! Click on the video below to watch it.
We are happy to announce that we have a number of events coming up. Tune in to learn more about Flux and GitOps best practices, get to know the team and join our community.
Share your story at GitOpsCon EU(virtual) this year! 📆
If you wish to speak at GitOpsCon EU, reach out to us to collaborate on proposals on a range of topics related to Kubernetes. We are happy to provide our writing expertise to your proposal and to collaborate on ideas. The CFP deadline is October 4, so kindly contact firstname.lastname@example.org ASAP if you’re interested. The conference will take place virtually on the 5th - 6th of December.
CNCF On-Demand Webinar
Flux Maintainer, Kingdon B will be giving a talk titled
How to start building a self-service infrastructure platform on Kubernetes on the 14th of September.
It’s going to be packed with knowledge on how to use Backstage and GitOps.
Project meetings and Bug Scrub
Our Flux Bug Scrubs still are happening on a weekly basis and remain one of the best ways to get involved in Flux. They are a friendly and welcoming way to learn more about contributing and how Flux is organised as a project.
- 2023-09-05 22:00 UTC, 00:00 CEST The Flux Bug Scrub (AEST)
- 2023-09-06 12:00 UTC, 14:00 CEST The Flux Bug Scrub
- 2023-09-07 15:00 UTC, 17:00 CEST CNCF Flux Project Meeting (late)
- 2023-09-13 12:00 UTC, 14:00 CEST CNCF Flux Project Meeting (early)
- 2023-09-14 17:00 UTC, 19:00 CEST The Flux Bug Scrub
- 2023-09-19 22:00 UTC, 00:00 CEST The Flux Bug Scrub (AEST)
We are flexible with subjects and often go with the interests of the group or of the presenter. If you want to come and join us in either capacity, just show up or if you have questions, reach out to Kingdon B on Slack.
The ecosystem is buzzing with news about the licensing changes to Hashicorp’s open-source projects including Terraform. Weaveworks has released a statement on this and the impact on the tf-controller.
VS Code GitOps Extension
Significant performance upgrades and code refactoring has been introduced with VS Code GitOps Tools
extension version 0.25.0. Previously cluster metadata was loaded using
kubectl get commands.
kubectl proxy is executed in the background for the new client. Rendering of resource treeviews has been reworked
to minimise data reloading, to maintain collapsible state and to allow visualising resource errors grouped
by namespaces. Timeout settings were added and bad cluster connections should no longer slow down Clusters treeview rendering.
UI refinements and bug fixes for the new client are ongoing. The most up-to-date UI features can be previewed by selecting “Install Pre-Release Version” in the VS Code Extension Browser.
Flux Fun Fact!
Did you know … 🔒 Flux is designed with security in mind: Pull vs. Push, least amount of privileges, adherence to Kubernetes security policies and tight integration with security tools and best-practices. Read more about our security considerations.
Over and out
If you like what you read and would like to get involved, here are a few good ways to do that:
- Join our upcoming dev meetings.
- Join the Flux mailing list and let us know what you’d like to see.
- Talk to us in the #flux channel on CNCF Slack.
- Join the planning discussions.
- And if you are completely new to Flux, take a look at our Get Started guide and give us feedback.
- Social media: Follow Flux on Twitter, join the discussion in the Flux LinkedIn group.
- We are looking forward to working with you.
❤️ Your Flux maintainer, Somtochi Onyekwere, and project member, Tamao Nakahara.