Skip to content

merusso/clusters-flux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

clusters-flux

This repo contains Flux config for a collection of clusters.

All clusters deploy a component bundle defined in a separate repo

Usage

Dependencies: Kubernetes cluster, kubectl client, Flux CLI, Taskfile

I recommend using a local Kubernetes cluster. Any should do, but I'm using k3d to manage multiple local clusters.

You can install the Taskfile CLI using brew install go-task. Alternatively, you can view the root Taskfile.yaml and run the commands directly.

First, install Flux:

$ task install

Then, apply the Flux config for a specific cluster. This will sync the bundle repo with the cluster and apply the bundle to the cluster.

$ task camel:apply

There are other useful tasks to run, like deleting the Flux config or uninstalling Flux. To see all available commands, run: task --list-all

Clusters

alpaca

Uses Kustomization to deploy bundle

Layers:

  1. Kustomization "flux-system", source: clusters-flux.git
  2. Kustomization "components", sources: clusters-flux.git, cluster-components-flux-kustomize.git

badger

Similar to alpaca but with a single layer

Layers:

  1. Kustomization "components", sources: clusters-flux.git, cluster-components-flux-kustomize.git

camel

Uses HelmRelease to deploy bundle

Layers:

  1. Kustomization "flux-system", source: clusters-flux.git
  2. HelmRelease "components", source: cluster-components-flux-helm.git

dingo

Similar to camel but with a single layer

Layers:

  1. HelmRelease "components", source: cluster-components-flux-helm.git

Cluster Components Bundle

Cluster components are defined in a separate bundle repo. The bundle is synced to each cluster.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages