# Installation de Calico (CNI qui applique réellement les NetworkPolicy) — # nécessaire pour que deploy/chart-gestion/network-policy soit autre chose # qu'une déclaration ignorée par le cluster. # # ⚠️ Si le cluster a déjà un CNI actif (flannel, etc.), installer Calico en # remplacement est disruptif : tous les pods doivent être recréés pour # obtenir une IP du nouveau CNI. À faire lors d'une fenêtre de maintenance, # pas à chaud sur un cluster avec des démos clients actives. Si vous voulez # juste ajouter l'enforcement de policy SANS remplacer le CNI existant, dites- # le : Calico peut aussi tourner en mode "policy-only" au-dessus de flannel # (Canal), c'est un manifeste différent de celui-ci. # # Étape 1 (à lancer manuellement, pas inclus ici : c'est un manifeste upstream # de plusieurs milliers de lignes, à récupérer directement depuis le projet) : # # kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.32.1/manifests/tigera-operator.yaml # # Étape 2 : une fois l'operator up (kubectl get pods -n tigera-operator), # appliquer ce fichier : # # kubectl apply -f deploy/cni/calico-install.yml # # Étape 3 : vérifier l'enforcement avec deploy/cni/network-policy-test.yml. apiVersion: operator.tigera.io/v1 kind: Installation metadata: name: default spec: calicoNetwork: ipPools: # ⚠️ Ce CIDR doit correspondre au pod CIDR réellement utilisé par le # cluster (ou être libre s'il s'agit d'une installation neuve). Ne pas # appliquer tel quel sans vérifier qu'il ne chevauche pas l'existant. - name: default-ipv4-ippool cidr: 192.168.0.0/16 encapsulation: VXLAN natOutgoing: Enabled nodeSelector: all() --- apiVersion: operator.tigera.io/v1 kind: APIServer metadata: name: default spec: {}