--- Title: Clusters Description: Un cluster est un groupe d'hosts pouvant être de type différent mais travaillant ensemble dans un même environnement. Weight: 20 --- 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]({{< relref "configuration/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. {{< highlight yaml >}} 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: [] {{< / highlight >}}