Clusters

Les Clusters représentent les différents clusters Kubernetes d’une organisation. Ils sont la plupart du temps nommés selon un environnement bien défini, par exemple prod, qual, dev, etc… et permettent la séparation facile des application qui y sont déployées. Il est néanmoins possible de nommer librement ses clusters selon ses objectifs et ses contraintes, comme par exemple selon le nom d’une équipe de développement, d’une large application, etc…

Les information des clusters sont stockés dans le dossier clusters, dans des fichiers yaml séparés selon les noms définis ci-dessus. Ces fichiers peuvent présenter un large nombre de variables permettant d’exprimer les différences entre tous les clusters gérés par la configuration globale. Ces variables vont s’appliquer à tous les Hosts déclarés comme faisant partie des-dits clusters, et à l’inverse, il n’est évidemment pas possible d’allouer un host à plusieurs clusters en même temps.

domain: cluster.local

subnets:
  services: 192.168.48.0/20
  pods: 192.168.64.0/20

addons:
- essentials

vars:
  kubernetes_version: v1.26.4

  bootstrap_auths:
  - name: "my-user"
    sshKey: "ssh-ed25519 xxx my-user"

  ssh_keys:
  - "ssh-ed25519 xxx my-user"

  devname_match: /dev/([shv]da|nmve[0-9]+n[0-9]+)
  # to match a specific partition (here: 3):
  #devname_match: /dev/([shv]da|nvme[0-9]+n[0-9]+p)3

  vip_interface: main
  public_vip: 10.42.0.10

  netmask: 24
  gateway: 10.42.0.254
  dns:
  - 10.42.0.1

  dls_base_url: http://10.42.0.254:7606

  etcd:
    image: quay.io/coreos/etcd
    version: v3.5.9
    cluster_state: new # set to existing to secure existing clusters

  keepalived:
    image: novitnc/keepalived
    version: 2.0.19
    garp_master_refresh: 60
    router_id: 1

  control_plane:
    api_port: 6443
    reserve_resources: true

  iface: "(en|eth).*"
  containerd_size: 50%FREE

  local_storage_class: local

  encrypt_disks: false

  cni_provider: knet-wg
  ingress_controller: nginx
  kube_proxy: proxy

  k8s_registry: registry.k8s.io

  kernel_modules: []