Parcours Sylva : la pile cloud télécom open source
Éditoriale
Rédigée à partir de sources publiques (spécifications, documentations, textes officiels). Aucune analyse d'offres d'emploi : l'indicateur de demande n'est pas renseigné.
Source : Rédaction éditoriale à partir du dépôt sylva-core (README, valeurs d'exemple, units) et de la documentation officielle du projet Sylva, lus le 2026-11-02. Ce n'est pas une formation officielle Sylva ; le champ 'demande' n'est pas renseigné.
Pour l'ingénieur ou l'architecte qui doit déployer ou opérer une plateforme Sylva : du socle Kubernetes et GitOps au cluster de gestion, aux clusters de charge et aux réglages des nœuds pour les fonctions réseau.
Socle Kubernetes et GitOps
- Linux avancé (RHEL/CentOS) · Fondamental
Systemd, processus, namespaces/cgroups, SELinux, diagnostic système. Base de tout le reste.
- Conteneurs (OCI, Podman, CRI-O) · Fondamental
Images, registries, runtime, différences Docker/Podman/CRI-O.
- Architecture Kubernetes · Fondamental
Control plane, etcd, kubelet, scheduler, API server, contrôleurs.
- Helm et packaging de CNF · Intermédiaire
Charts, values, hooks, gestion de versions. Les CNF sont livrés en charts.
- GitOps (ArgoCD / Flux) · Intermédiaire
État désiré dans Git, synchronisation, gestion multi-environnements.
Comprendre Sylva
- Le projet Sylva : une pile cloud télécom commune · Fondamental
Projet de Linux Foundation Europe annoncé en novembre 2022 avec Deutsche Telekom, Ericsson, Nokia, Orange, Telecom Italia, Telefónica et Vodafone : un cadre logiciel cloud-native commun pour les réseaux d'opérateurs, une implémentation de référence (sylva-core, licence Apache 2.0) et un programme de validation des fonctions réseau.
- Cluster de gestion, clusters de charge et units · Fondamental
Un cluster de gestion, déployé depuis une VM de bootstrap, crée et gère de façon déclarative des clusters de charge qui hébergent les CNF. Chaque cluster est composé d'« units », des composants open source obligatoires ou optionnels (Rancher, Keycloak, Harbor, Vault, Flux, Thanos…). Deux rôles : l'opérateur d'infrastructure et l'opérateur des charges.
- Cluster API : le cycle de vie des clusters · Intermédiaire
Gérer des clusters Kubernetes avec Kubernetes : des ressources déclaratives décrivent les clusters, des fournisseurs d'infrastructure et d'amorçage les réalisent. Sylva s'en sert pour tous ses clusters, y compris le cluster de gestion.
- Le chart sylva-units : activer et configurer des units · Intermédiaire
Un chart Helm maison transforme chaque unit en ressources Flux (GitRepository, HelmRepository, OCIRepository, Kustomization, HelmRelease) selon le contexte (bootstrap, gestion, charge) et les fournisseurs choisis. On active, désactive et règle les units dans values.yaml ; Kustomize adapte les manifestes sans les modifier.
Déployer une plateforme Sylva
- VM de bootstrap et prérequis du déploiement · Intermédiaire
La VM de bootstrap (Ubuntu 22.04 LTS recommandée, 4 vCPU, 8 Go de mémoire et 16 conseillés, 40 Go de disque) doit joindre l'API de l'infrastructure ou les BMC (IPMI, Redfish), Internet et les réseaux utiles ; les noms d'hôtes *.sylva doivent être résolus par le DNS.
- Fournisseurs d'infrastructure et distributions Kubernetes · Intermédiaire
Les valeurs d'exemple de sylva-core combinent trois distributions (kubeadm, RKE2, Canonical Kubernetes) et des fournisseurs Cluster API : OpenStack (CAPO), bare metal avec Metal3 (CAPM3), vSphere (CAPV), OpenNebula (CAPONE) et Docker (CAPD) pour les essais. On part du dossier qui correspond à sa cible.
- Bare metal avec Metal3 (CAPM3) · Avancé
Provisionner des serveurs physiques par leur BMC (IPMI ou Redfish) avec Metal3 et le fournisseur Cluster API CAPM3. Sylva déploie aussi des clusters OKD sur bare metal par ce fournisseur.
- La variante SUSE de Sylva : SL Micro, RKE2, Rancher, Longhorn, NeuVector · Avancé
Une partie des composants de sylva-core vient des dépôts SUSE et Rancher : RKE2 (fournisseur Cluster API), Rancher et Rancher Turtles, Longhorn, NeuVector, Metal3 maintenu par SUSE, opérateur SR-IOV et KubeVirt de SUSE Edge. Le dépôt susetelcocloud aligne Sylva 1.7 sur SUSE Edge 3.6 : SUSE Linux Micro 6.2 configuré par Ignition, images construites avec KIWI et Edge Image Builder, charts et images de registry.suse.com.
- Déployer et valider le cluster de gestion · Intermédiaire
bootstrap.sh crée un cluster temporaire qui déploie le cluster de gestion ; apply.sh installe ou met à jour ses units. On valide ensuite : nœuds Ready, pods de Rancher, Flux, Harbor, Vault et Keycloak en marche, points d'entrée exposés.
Opérer la plateforme
- Prometheus, Alertmanager, Thanos · Intermédiaire
Métriques, règles d'alerte, rétention longue, alerting basé sur les SLO.
- Logs centralisés (EFK/ELK, Loki) · Intermédiaire
Collecte, indexation, rétention, corrélation avec les alertes.
- Sécurité de la chaîne d'approvisionnement · Avancé
Scan d'images (Trivy), signature, politiques d'admission, SBOM.
- Créer des clusters de charge : du script à SylvaWorkloadCluster · Avancé
Avant Sylva 1.6, un cluster de charge se créait avec apply-workload-cluster.sh. Depuis la 1.6, on déclare une ressource SylvaWorkloadCluster, réconciliée depuis un dépôt Git propre à l'équipe, avec des valeurs par défaut fournies par l'administrateur (SylvaUnitsReleasePresets).
- Monter de version Kubernetes · Avancé
Une version de Sylva prend en charge plusieurs versions de Kubernetes (par exemple 1.29 à 1.31 pour Sylva 1.4). On monte d'une version mineure à la fois, en vérifiant la version de chaque nœud avant et après.
- Les services de la plateforme : Rancher, Keycloak, Harbor, Vault, Flux, Thanos · Intermédiaire
Après le déploiement, la plateforme expose ses interfaces sous des noms d'hôtes en .sylva (rancher.sylva, keycloak.sylva, vault.sylva, harbor.sylva, flux.sylva, thanos.sylva) : savoir les joindre, retrouver les identifiants et à quoi sert chacun.
- Journaux et supervision dans Sylva · Intermédiaire
Dans chaque cluster, la pile rancher-logging (Fluent Bit, Fluentd) collecte les journaux ; Loki les centralise dans le cluster de gestion, consultables dans Grafana. La supervision se règle dans les sections logging et monitoring de values.yaml.
- Sécurité : signatures d'images, PKI, NeuVector, SBOM, WireGuard · Avancé
La section security de values.yaml règle un émetteur de certificats externe (par exemple Vault), la vérification des signatures d'images (cosign), le chiffrement WireGuard de Calico, l'analyse NeuVector et l'opérateur SBOM. Des politiques Kyverno font partie des units.
Charges télécom
- CNI et OVN-Kubernetes · Intermédiaire
Réseau de pods, OVN-Kubernetes, Open vSwitch, NetworkPolicy, egress.
- Multus et réseaux secondaires · Intermédiaire
NetworkAttachmentDefinition, macvlan, ipvlan, séparation plan de contrôle / usager / gestion.
- SR-IOV · Avancé
VF, opérateur SR-IOV, NIC supportées, accès direct pour l'UPF et les fonctions à haut débit.
- HugePages et NUMA · Avancé
Allocation de pages, topologie NUMA, alignement CPU/mémoire/NIC.
- Performance Profile et CPU pinning · Avancé
Isolation de CPU, gestionnaire de topologie, noyau temps réel, réglages pour CNF.
- Classes de nœuds : generic, intensive, SR-IOV · Avancé
Une classe de nœud regroupe les réglages d'un type de charge : generic (sans HugePages ni CPU pinning), intensive (HugePages, CPU manager statique) ou SR-IOV (HugePages, SR-IOV, CPU pinning, NUMA, isolation des CPU système). Réservé aux clusters RKE2 ; l'isolation des CPU ajoute nohz_full, irqaffinity et reservedSystemCPUs.