SlideShare a Scribd company logo
Hidde Beydals (Flux core maintainer, Weaveworks)
Stefan Prodan (Flux core maintainer, Weaveworks)
Flux Beyond Git
Harnessing the Power of OCI
Flux: Project overview
The Flux project aims to provide a complete Continuous Delivery platform on
top of Kubernetes, supporting all the common practices and tooling in the field.
Flux v2 is powered by the GitOps Toolkit, a set of composable APIs and specialized tools for
keeping Kubernetes clusters in sync with sources of configuration, and automating updates to
configuration when there is new code to deploy.
CLI
- https://github.com/fluxcd/flux2
Controllers
- https://github.com/fluxcd/source-controller
- https://github.com/fluxcd/kustomize-controller
- https://github.com/fluxcd/helm-controller
- https://github.com/fluxcd/image-automation-controller
- https://github.com/fluxcd/image-reflector-controller
- https://github.com/fluxcd/notification-controller
- https://github.com/fluxcd/flagger
Terraform Provider
- https://github.com/fluxcd/terraform-
provider-flux
Go SDK
- https://github.com/fluxcd/pkg
Flux: Ecosystem News
Adopters & Vendors
GitLab joins Azure, AWS, VMware, D2IQ, Giant Swarm and other vendors that
are relying on Flux to offer GitOps to their users.
Orange joins Deutsche Telekom and other mobile carriers that have adopted
Flux to accelerate the deployment of 5G infrastructure.
Integrations & Extensions
Weaveworks offers a free and open source distribution of Weave GitOps
which includes a Web UI for Flux and a Terraform Controller that extends
Flux’s capabiles beyond Kubernetes.
AWS is developing a Cloud Formation Controller that enables Flux
to manage cloud resources beyond EKS.
Open Container Initiative
The Open Container Initiative (OCI) is an open governance structure
under Linux Foundation, that defines the specifications and standards
for container technologies (artifacts, distribution and runtimes).
Unified Artifact Registry
The OCI distribution is rapidly evolving into an universal solution for
distributing not only container images but any other type of package.
- All major Cloud and SaaS vendors offer support for OCI Artifacts
- Popular package managers such as Homebrew and Helm make use of
OCI artifacts for package distribution
- Various cloud-native projects have adopted OCI for distributing
configuration, policies, addons, WASM, SBOMs, signatures
- Every organization that uses Kubernetes has the infrastructure needed to
store and distribute OCI artifacts (you can’t run Kubernetes without a
container registry).
Flux: GitOps Workflow
In the typical GitOps workflow, the Kubernetes clusters must pull the configs from
Git and the container images from a registry.
Flux: CI/CD Workflow for OCI artifacts
Using a container registry for both app container images and deploy configs,
simplifies the delivery pipeline.
Flux: Source APIs
Flux offers interchangeable APIs for defining Git and OCI sources.
Flux: OCI support for Kubernetes configs
$ flux push artifact oci://ghcr.io/org/my-app-config:1.0.0 --path ./deploy
$ cosign sign ghcr.io/org/my-app-config@<digest> --key cosign.key
Flux: OCI support for Terraform modules
$ flux push artifact oci://docker.io/org/my-app-infra:1.0.0 --path ./infra
$ cosign sign docker.io/org/my-app-infra@<digest> --key cosign.key
Flux: Push changes to clusters from CI safely
The Flux CLI can be used to implement a push-based workflow,
where kubectl apply is replaced with flux push.
Flux: OCI custom media types
The OCI artifacts produced by flux push are of type vnd.cncf.flux and they
contain information about the origin Git repository and the Git commit SHA.
Flux: OCI support for Helm charts
$ helm push my-app-1.0.0.tgz oci://<id>.dkr.ecr.amazonws.com/charts
$ cosign sign oci://<id>.dkr.ecr.amazonws.com/charts/my-app@<digest>
Flux: Benefits of OCI compared to Git
● Images, configuration and signatures in one place
● Registries have (often) higher availability
● OCI registries are API based, Git not so much
● Regional traffic saves you 💰
● Passwordless authentication
● Keyless integrity verification
Flux: (contextual) authentication towards registries
Git
- Secret with a SSH key or basic
authentication token
OCI
- Kubernetes Workload Identity
attached to controller’s Service
Account
- Image pull secrets attached to a
referenced Service Account
- Secret reference with a Docker
config
Easier to manage, fine-grain access control, better integrated with Kubernetes
and cloud providers.
Flux: Integrity verification of (OCI) Sources
Keyless verification, instead of hard to manage identities.
Git
- OpenPGP signatures
- Eventually[1]
: SSH signatures
OCI
- Sigstore Cosign (OpenSSF)
- Soon[2]
: Notation (CNCF)
[1]: https://github.com/go-git/go-git/pull/705
[2]: https://github.com/fluxcd/source-controller/issues/1072
Flux: Scenarios where OCI may be a better fit than Git
- When the Git repository does not contain the final Kubernetes manifests.
For example, using CUE, Jsonnet or any other tool that generates YAML
resources.
- At the edge, due to reduced resource usage.
- Isolated systems with limited network access.
As images are in many cases easier to mirror than Git repositories.
- Version based production systems.
- Local development environments.
Flux: OCI resources
- OCIRepository specification:
https://fluxcd.io/flux/components/source/ocirepositories/
- HelmRepository OCI specification:
https://fluxcd.io/flux/components/source/helmrepositories/#helm-oci-repository
- OCI cheatsheet:
https://fluxcd.io/flux/cheatsheets/oci-artifacts/
- flux-local-dev: https://github.com/stefanprodan/flux-local-dev
- flux-aio: https://github.com/stefanprodan/flux-aio
Flux: Demo time 🎉
Spinning up a local dev environment for Flux
using Kubernetes Kind and Docker OSS Registry
https://github.com/stefanprodan/flux-local-dev
Closing and final questions
Thank you for your time 🙇
We will be happy to answer any question you may have.

More Related Content

PPTX
The Prowess of Prow
PDF
Kubernetes: A Short Introduction (2019)
PPTX
Using GitHub Actions to Deploy your Workloads to Azure
PDF
Helm - Application deployment management for Kubernetes
PPTX
Introduction to Serverless and Google Cloud Functions
PDF
Docker - un outil pour faciliter le développement et le déploiement informatique
PPTX
KEDA Overview
PPT
Understanding REST
The Prowess of Prow
Kubernetes: A Short Introduction (2019)
Using GitHub Actions to Deploy your Workloads to Azure
Helm - Application deployment management for Kubernetes
Introduction to Serverless and Google Cloud Functions
Docker - un outil pour faciliter le développement et le déploiement informatique
KEDA Overview
Understanding REST

What's hot (20)

PDF
Spring MVC Framework
PDF
Introduction to GitHub Actions
PDF
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
PPTX
Kubernetes CI/CD with Helm
PDF
Deep dive into Kubernetes Networking
PDF
Kubernetes Networking - Sreenivas Makam - Google - CC18
PDF
gRPC - RPC rebirth?
PDF
Introduction to kubernetes
PDF
Intro to Git and GitHub
PDF
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
PDF
잘 키운 모노리스 하나 열 마이크로서비스 안 부럽다
PPSX
Docker Kubernetes Istio
PPTX
Red Hat Openshift Fundamentals.pptx
PPTX
Monitoring on Kubernetes using prometheus
PDF
Embracing Observability in CI/CD with OpenTelemetry
PDF
OWASP DefectDojo - Open Source Security Sanity
KEY
Introduction To Git
PPTX
Introduction to kubernetes
PDF
Service mesh(istio) monitoring
Spring MVC Framework
Introduction to GitHub Actions
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
Kubernetes CI/CD with Helm
Deep dive into Kubernetes Networking
Kubernetes Networking - Sreenivas Makam - Google - CC18
gRPC - RPC rebirth?
Introduction to kubernetes
Intro to Git and GitHub
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
잘 키운 모노리스 하나 열 마이크로서비스 안 부럽다
Docker Kubernetes Istio
Red Hat Openshift Fundamentals.pptx
Monitoring on Kubernetes using prometheus
Embracing Observability in CI/CD with OpenTelemetry
OWASP DefectDojo - Open Source Security Sanity
Introduction To Git
Introduction to kubernetes
Service mesh(istio) monitoring
Ad

Similar to Flux Beyond Git Harnessing the Power of OCI (20)

PDF
The App Developer's Kubernetes Toolbox
PPTX
Moby KubeCon 2017
PDF
How to manage Kubernetes at scale with just git
PDF
The Story of Flux Reaching Graduation in the CNCF
PDF
KubeCon 2022 EU Flux Security.pdf
PDF
Intro to GitOps & Flux.pdf
PDF
K8sfor dev parisoss-summit-microsoft-5-decembre-short
PDF
Flux is incubating + the road ahead
PPTX
Oscon 2017: Build your own container-based system with the Moby project
PDF
Red Hat and kubernetes: awesome stuff coming your way
PPTX
Moby Open Source Summit North America 2017
PDF
Kubernetes extensibility
PPTX
DevOps Training institute in Ameerpet
PPTX
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
PDF
Fabio Ferrari | particles.io | Presentation
PDF
Cloud Native Landscape (CNCF and OCI)
PDF
Kubernetes monitoring using prometheus stack
PPTX
Kata Container - The Security of VM and The Speed of Container | Yuntong Jin
PPTX
ArgoCD_Presentation overview and git ops
PDF
Container Runtimes: Comparing and Contrasting Today's Engines
The App Developer's Kubernetes Toolbox
Moby KubeCon 2017
How to manage Kubernetes at scale with just git
The Story of Flux Reaching Graduation in the CNCF
KubeCon 2022 EU Flux Security.pdf
Intro to GitOps & Flux.pdf
K8sfor dev parisoss-summit-microsoft-5-decembre-short
Flux is incubating + the road ahead
Oscon 2017: Build your own container-based system with the Moby project
Red Hat and kubernetes: awesome stuff coming your way
Moby Open Source Summit North America 2017
Kubernetes extensibility
DevOps Training institute in Ameerpet
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
Fabio Ferrari | particles.io | Presentation
Cloud Native Landscape (CNCF and OCI)
Kubernetes monitoring using prometheus stack
Kata Container - The Security of VM and The Speed of Container | Yuntong Jin
ArgoCD_Presentation overview and git ops
Container Runtimes: Comparing and Contrasting Today's Engines
Ad

Recently uploaded (20)

PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Hybrid model detection and classification of lung cancer
PDF
STKI Israel Market Study 2025 version august
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPTX
Modernising the Digital Integration Hub
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PPTX
TLE Review Electricity (Electricity).pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
August Patch Tuesday
A comparative study of natural language inference in Swahili using monolingua...
Hybrid model detection and classification of lung cancer
STKI Israel Market Study 2025 version august
Enhancing emotion recognition model for a student engagement use case through...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Assigned Numbers - 2025 - Bluetooth® Document
Zenith AI: Advanced Artificial Intelligence
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Modernising the Digital Integration Hub
O2C Customer Invoices to Receipt V15A.pptx
DP Operators-handbook-extract for the Mautical Institute
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
TLE Review Electricity (Electricity).pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Getting started with AI Agents and Multi-Agent Systems
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
WOOl fibre morphology and structure.pdf for textiles
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
August Patch Tuesday

Flux Beyond Git Harnessing the Power of OCI

  • 1. Hidde Beydals (Flux core maintainer, Weaveworks) Stefan Prodan (Flux core maintainer, Weaveworks) Flux Beyond Git Harnessing the Power of OCI
  • 2. Flux: Project overview The Flux project aims to provide a complete Continuous Delivery platform on top of Kubernetes, supporting all the common practices and tooling in the field. Flux v2 is powered by the GitOps Toolkit, a set of composable APIs and specialized tools for keeping Kubernetes clusters in sync with sources of configuration, and automating updates to configuration when there is new code to deploy. CLI - https://github.com/fluxcd/flux2 Controllers - https://github.com/fluxcd/source-controller - https://github.com/fluxcd/kustomize-controller - https://github.com/fluxcd/helm-controller - https://github.com/fluxcd/image-automation-controller - https://github.com/fluxcd/image-reflector-controller - https://github.com/fluxcd/notification-controller - https://github.com/fluxcd/flagger Terraform Provider - https://github.com/fluxcd/terraform- provider-flux Go SDK - https://github.com/fluxcd/pkg
  • 3. Flux: Ecosystem News Adopters & Vendors GitLab joins Azure, AWS, VMware, D2IQ, Giant Swarm and other vendors that are relying on Flux to offer GitOps to their users. Orange joins Deutsche Telekom and other mobile carriers that have adopted Flux to accelerate the deployment of 5G infrastructure. Integrations & Extensions Weaveworks offers a free and open source distribution of Weave GitOps which includes a Web UI for Flux and a Terraform Controller that extends Flux’s capabiles beyond Kubernetes. AWS is developing a Cloud Formation Controller that enables Flux to manage cloud resources beyond EKS.
  • 4. Open Container Initiative The Open Container Initiative (OCI) is an open governance structure under Linux Foundation, that defines the specifications and standards for container technologies (artifacts, distribution and runtimes). Unified Artifact Registry The OCI distribution is rapidly evolving into an universal solution for distributing not only container images but any other type of package. - All major Cloud and SaaS vendors offer support for OCI Artifacts - Popular package managers such as Homebrew and Helm make use of OCI artifacts for package distribution - Various cloud-native projects have adopted OCI for distributing configuration, policies, addons, WASM, SBOMs, signatures - Every organization that uses Kubernetes has the infrastructure needed to store and distribute OCI artifacts (you can’t run Kubernetes without a container registry).
  • 5. Flux: GitOps Workflow In the typical GitOps workflow, the Kubernetes clusters must pull the configs from Git and the container images from a registry.
  • 6. Flux: CI/CD Workflow for OCI artifacts Using a container registry for both app container images and deploy configs, simplifies the delivery pipeline.
  • 7. Flux: Source APIs Flux offers interchangeable APIs for defining Git and OCI sources.
  • 8. Flux: OCI support for Kubernetes configs $ flux push artifact oci://ghcr.io/org/my-app-config:1.0.0 --path ./deploy $ cosign sign ghcr.io/org/my-app-config@<digest> --key cosign.key
  • 9. Flux: OCI support for Terraform modules $ flux push artifact oci://docker.io/org/my-app-infra:1.0.0 --path ./infra $ cosign sign docker.io/org/my-app-infra@<digest> --key cosign.key
  • 10. Flux: Push changes to clusters from CI safely The Flux CLI can be used to implement a push-based workflow, where kubectl apply is replaced with flux push.
  • 11. Flux: OCI custom media types The OCI artifacts produced by flux push are of type vnd.cncf.flux and they contain information about the origin Git repository and the Git commit SHA.
  • 12. Flux: OCI support for Helm charts $ helm push my-app-1.0.0.tgz oci://<id>.dkr.ecr.amazonws.com/charts $ cosign sign oci://<id>.dkr.ecr.amazonws.com/charts/my-app@<digest>
  • 13. Flux: Benefits of OCI compared to Git ● Images, configuration and signatures in one place ● Registries have (often) higher availability ● OCI registries are API based, Git not so much ● Regional traffic saves you 💰 ● Passwordless authentication ● Keyless integrity verification
  • 14. Flux: (contextual) authentication towards registries Git - Secret with a SSH key or basic authentication token OCI - Kubernetes Workload Identity attached to controller’s Service Account - Image pull secrets attached to a referenced Service Account - Secret reference with a Docker config Easier to manage, fine-grain access control, better integrated with Kubernetes and cloud providers.
  • 15. Flux: Integrity verification of (OCI) Sources Keyless verification, instead of hard to manage identities. Git - OpenPGP signatures - Eventually[1] : SSH signatures OCI - Sigstore Cosign (OpenSSF) - Soon[2] : Notation (CNCF) [1]: https://github.com/go-git/go-git/pull/705 [2]: https://github.com/fluxcd/source-controller/issues/1072
  • 16. Flux: Scenarios where OCI may be a better fit than Git - When the Git repository does not contain the final Kubernetes manifests. For example, using CUE, Jsonnet or any other tool that generates YAML resources. - At the edge, due to reduced resource usage. - Isolated systems with limited network access. As images are in many cases easier to mirror than Git repositories. - Version based production systems. - Local development environments.
  • 17. Flux: OCI resources - OCIRepository specification: https://fluxcd.io/flux/components/source/ocirepositories/ - HelmRepository OCI specification: https://fluxcd.io/flux/components/source/helmrepositories/#helm-oci-repository - OCI cheatsheet: https://fluxcd.io/flux/cheatsheets/oci-artifacts/ - flux-local-dev: https://github.com/stefanprodan/flux-local-dev - flux-aio: https://github.com/stefanprodan/flux-aio
  • 18. Flux: Demo time 🎉 Spinning up a local dev environment for Flux using Kubernetes Kind and Docker OSS Registry https://github.com/stefanprodan/flux-local-dev
  • 19. Closing and final questions Thank you for your time 🙇 We will be happy to answer any question you may have.