Glossaire
- active-active
- Un service tourne et sert du trafic dans plusieurs datacenters à la fois : si l’un tombe, les autres continuent de répondre.
- Square 2017 : des retries qui saturent l’authentification des marchands
- Anycast
- Le même préfixe annoncé depuis beaucoup de data centers, pour que chaque utilisateur arrive au plus proche. Cloudflare sert presque tous ses services ainsi.
- Cloudflare 1.1.1.1 2025 : les préfixes du résolveur retirés par un changement de test
- apiserver
- Le processus Kubernetes que tous les autres composants interrogent sur l’état du cluster. Il lit et écrit cet état dans etcd.
- Monzo 2017 : linkerd, Kubernetes et une panne des paiements
- authorized_keys
- Le fichier d’un serveur qui liste les clés SSH publiques autorisées à se connecter à un compte. Par défaut, sshd lit aussi l’ancien fichier
authorized_keys2. - Matrix.org 2019 : le Jenkins pas à jour et les clés SSH transférées
- Autorisation
- La trace, dans Boulder, qu’un compte a prouvé qu’il contrôle un nom de domaine. Let’s Encrypt la réutilise pendant 30 jours.
- Let’s Encrypt 2020 : la revérification CAA qui ne testait qu’un nom
- Backbone
- Le réseau que Facebook a construit pour relier tous ses sites de calcul, avec des liens en fibre entre chaque data center.
- Facebook 2021 : le backbone qui a coupé son propre DNS
- Backbone
- Les lignes privées de Cloudflare entre ses data centers. Le trafic entre deux sites peut y passer au lieu de passer par l’Internet public.
- Cloudflare 2020 : le changement sur le routeur d’Atlanta qui a aspiré le trafic du backbone
- Backoff
- Un client attend un peu plus longtemps après chaque échec avant de réessayer. Sans backoff, les nouvelles tentatives chargent encore un système déjà en panne.
- AWS 2021 : la congestion du réseau interne de us-east-1
- backoff
- Une attente avant chaque nouvelle tentative, en général plus longue après chaque échec, pour que les retries n’arrivent pas au serveur aussi vite que le client peut les envoyer.
- Square 2017 : des retries qui saturent l’authentification des marchands
- Backtracking
- Ce que fait un moteur de regex comme PCRE quand une correspondance échoue : il revient en arrière et essaie un autre découpage de l’entrée. Certains motifs lui font essayer un nombre énorme de découpages.
- Cloudflare 2019 : la règle WAF qui a pris tout le CPU
- Bail de droplet
- Le bail que le DropletWorkflow Manager (DWFM) d’EC2 tient sur chaque serveur physique, appelé droplet. Un droplet sans bail actif ne peut pas recevoir de nouvelle instance.
- AWS us-east-1 2025 : une race condition dans l’automatisation DNS de DynamoDB
- Base multi-tenant
- Une base de données partagée par plusieurs clients. Chaque shard contient les données de plusieurs tenants, isolées les unes des autres.
- Atlassian 2022 : le script qui a supprimé 883 sites
- Baseline Requirements (BR)
- Les règles que doit suivre toute autorité de certification reconnue publiquement, dont quand vérifier le CAA et en combien de temps révoquer.
- Let’s Encrypt 2020 : la revérification CAA qui ne testait qu’un nom
- Bash Uploader
- Le script shell de Codecov qui détecte les réglages de la CI, rassemble les rapports de couverture et les envoie à Codecov.
- Codecov 2021 : un Bash Uploader modifié dans la CI des clients
- BGP
- Le protocole par lequel les réseaux annoncent les blocs IP qu’ils savent joindre. Google annonce chaque bloc IP de GCE depuis plusieurs sites, pour que chacun prenne le chemin le plus court.
- Google Compute Engine 2016 : la config qui a retiré tous les blocs IP
- BGP
- Border Gateway Protocol : la façon dont les réseaux d’Internet s’annoncent les plages d’adresses IP qu’ils savent joindre.
- Facebook 2021 : le backbone qui a coupé son propre DNS
- Bloc IP
- Un groupe contigu d’adresses internet. Google en utilise pour les VM GCE, les répartiteurs de charge réseau et les Cloud VPN.
- Google Compute Engine 2016 : la config qui a retiré tous les blocs IP
- C2
- Command and control : un programme sur une machine piratée qui se connecte au serveur de l’attaquant et exécute les commandes qu’il reçoit.
- Cloudflare 2023 : les identifiants oubliés après la fuite chez Okta
- Cellule
- Une copie isolée d’un service parmi plusieurs. Chaque copie traite une partie des requêtes, donc une panne dans une copie ne touche que cette partie.
- AWS S3 2017 : la commande qui a retiré trop de serveurs
- Cellule
- Une copie isolée parmi plusieurs d’un même service. Chaque copie traite une partie des requêtes, donc une panne reste dans sa copie.
- AWS Kinesis 2020 : l’ajout de capacité qui a dépassé une limite de threads de l’OS
- cgroup
- Une fonction de Linux qui plafonne le CPU et la mémoire qu’un groupe de processus peut utiliser sur une machine.
- Square 2017 : des retries qui saturent l’authentification des marchands
- Charge
- La partie du code malveillant qui fait le mal. Ici elle est chiffrée, pour qu’un lecteur ne voie pas ce qu’elle fait.
- npm event-stream 2018 : le nouveau mainteneur et la charge cachée
- checksum
- Une courte valeur calculée à partir des octets d’un fichier, comme une somme SHA-256. Un seul octet modifié, et la somme change.
- Codecov 2021 : un Bash Uploader modifié dans la CI des clients
- Clé d’API
- Une chaîne secrète qu’un script envoie à un service, ici Cloudflare, pour faire des changements sans qu’une personne se connecte.
- Matrix.org 2019 : le Jenkins pas à jour et les clés SSH transférées
- Clé de déchiffrement
- Le secret qui rend lisibles des données chiffrées. Un attaquant qui copie un fichier chiffré sans sa clé n’obtient que des octets illisibles.
- LastPass 2022 : l’ordinateur personnel d’un ingénieur et les clés des sauvegardes
- Cluster haute disponibilité
- L’ensemble des services qui tournent dans les trois data centers de Hillsboro à la fois, avec des données synchronisées. Si un data center tombe, les deux autres continuent de les faire tourner.
- Cloudflare 2023 : le data center privé de tout courant
- Compte de service
- Un compte qu’utilise un programme à la place d’une personne, par exemple le compte avec lequel un outil SaaS lit et écrit des tickets Jira.
- Cloudflare 2023 : les identifiants oubliés après la fuite chez Okta
- compte machine
- Un compte utilisé par un logiciel et non par une personne, avec son propre token, par exemple pour qu’un système interne en appelle un autre.
- Heroku 2022 : des tokens OAuth GitHub volés
- config var
- Un réglage Heroku que l’app lit comme une variable d’environnement. Les clients y gardent des secrets.
- Heroku 2022 : des tokens OAuth GitHub volés
- Consul
- Le registre de services et stockage clé/valeur de HashiCorp. Chez Roblox, 5 serveurs votants portent l’état et 5 non-votants servent des lectures en plus.
- Roblox 2021 : la panne Consul de 73 heures
- Control plane
- La partie d’un cluster Kubernetes qui gère son état. OpenAI s’en sert pour administrer ses clusters.
- OpenAI 2024 : un service de télémétrie qui a saturé les control planes Kubernetes
- Control plane
- L’interface client de tous les services Cloudflare : le site du dashboard et les API. Les clients changent leurs réglages par là.
- Cloudflare 2023 : le data center privé de tout courant
- Control plane
- Les services de SmartDataCenter qui font tourner l’API et les séquences de démarrage. Certains de ses composants sont stateful : ils gardent des données qu’ils doivent retrouver après un redémarrage.
- Joyent 2014 : tous les serveurs de us-east-1 redémarrent d’un coup
- Control plane
- Les API qui créent et gèrent les ressources AWS, par exemple le lancement d’une instance EC2. Les instances déjà lancées tournent sans lui.
- AWS 2021 : la congestion du réseau interne de us-east-1
- Core proxy
- Le système de Cloudflare, appelé FL et FL2 dans sa nouvelle version, par lequel passe chaque requête. Bot Management fait partie des modules qu’il exécute.
- Cloudflare 2025 : le fichier de features de Bot Management qui a doublé
- curl pipe to bash
- Exécuter un script directement depuis une URL, comme
curl -s https://… | bash, sans l’enregistrer ni le vérifier avant. - Codecov 2021 : un Bash Uploader modifié dans la CI des clients
- Data plane
- Les nœuds qui font tourner les charges, comme l’inférence des modèles. Ils tiennent un moment sans le control plane.
- OpenAI 2024 : un service de télémétrie qui a saturé les control planes Kubernetes
- Découverte de services
- La façon dont un service trouve l’adresse d’un autre. Chez OpenAI, elle passe par le DNS de Kubernetes, que Kubernetes alimente depuis le serveur d’API.
- OpenAI 2024 : un service de télémétrie qui a saturé les control planes Kubernetes
- Délai de grâce
- Le temps qui sépare une nouvelle décision de quota du moment où le système de quotas l’applique.
- Google 2020 : le User ID Service à court de quota
- Démarrage PXE
- Un serveur démarre par le réseau : il demande une adresse à un serveur DHCP et télécharge son image de démarrage en TFTP. Les nœuds de calcul de Joyent démarrent ainsi.
- Joyent 2014 : tous les serveurs de us-east-1 redémarrent d’un coup
- Dépendance transitive
- Un paquet que ton projet installe parce qu’une de tes dépendances en a besoin. Tu ne l’as jamais écrit dans ton propre
package.json. - npm event-stream 2018 : le nouveau mainteneur et la charge cachée
- Déploiement progressif
- Envoyer un changement sur quelques sites d’abord, et sur le monde entier à la fin. Le logiciel de Cloudflare passe par DOG (employés seulement), PIG (une partie du trafic gratuit), 3 PoP Canary, puis partout.
- Cloudflare 2019 : la règle WAF qui a pris tout le CPU
- Déploiement progressif
- Pousser un changement sur une fraction des sites à la fois, pour qu’une panne inédite se voie avant d’atteindre tous les sites.
- Google Compute Engine 2016 : la config qui a retiré tous les blocs IP
- Dépublier
- Retirer une version d’un paquet du registre npm. En mars 2016, un auteur pouvait dépublier n’importe quelle version à tout moment.
- npm left-pad 2016 : le paquet dépublié qui a cassé les builds
- Disjoncteur (circuit breaker)
- Une enveloppe autour d’un appel distant qui compte les échecs. Au delà d’un seuil, elle renvoie tout de suite une erreur sans faire l’appel.
- Stripe 2019 : un shard incapable d’élire un primaire
- DNS Enactor
- Le composant qui applique un plan DNS dans Amazon Route53, une transaction par endpoint. Trois copies tournent indépendamment, dans trois zones de disponibilité.
- AWS us-east-1 2025 : une race condition dans l’automatisation DNS de DynamoDB
- DNS Planner
- Le composant de DynamoDB qui surveille la santé et la capacité des load balancers et écrit régulièrement un nouveau plan DNS : un ensemble de load balancers et de poids pour chaque endpoint.
- AWS us-east-1 2025 : une race condition dans l’automatisation DNS de DynamoDB
- Donnée périmée
- Une lecture qui peut manquer les dernières écritures. Le User ID Service refuse ces lectures, « for security reasons » (pour des raisons de sécurité).
- Google 2020 : le User ID Service à court de quota
- Dyno
- Un conteneur Heroku où tourne le code d’une appli.
- Heroku 2025 : la mise à jour système qui a coupé le réseau des dynos
- Échantillonnage top-p
- Le modèle tire le token suivant au hasard, seulement parmi les tokens les plus probables dont les probabilités cumulées atteignent un seuil comme 0,99.
- Anthropic 2025 : trois bugs qui ont dégradé les réponses de Claude
- Élection
- L’étape où les nœuds restants d’un shard choisissent un nouveau primaire quand l’ancien tombe.
- Stripe 2019 : un shard incapable d’élire un primaire
- endpoints
- La liste des adresses IP des pods derrière un Service Kubernetes. Un Service réduit à 0 réplica a une liste vide.
- Monzo 2017 : linkerd, Kubernetes et une panne des paiements
- Enregistrement CAA
- Un enregistrement DNS où le propriétaire d’un domaine liste les autorités de certification autorisées à émettre des certificats pour ce domaine.
- Let’s Encrypt 2020 : la revérification CAA qui ne testait qu’un nom
- Étape canary
- Déployer un changement sur un seul site d’abord, et vérifier que ce site marche encore avant d’aller plus loin.
- Google Compute Engine 2016 : la config qui a retiré tous les blocs IP
- etcd
- La base distribuée où Kubernetes range ce qui est déployé et où. Une écriture exige l’accord d’une majorité de ses nœuds (un quorum).
- Monzo 2017 : linkerd, Kubernetes et une panne des paiements
- exfiltration
- La copie de données hors des systèmes d’une entreprise, vers un endroit que l’attaquant contrôle.
- CircleCI 2023 : une session volée et tous les secrets des clients
- Fail open
- Quand une vérification échoue, le service répond quand même à la requête au lieu de la rejeter.
- Google Cloud 2025 : la politique de quota aux champs vides
- Feature flag
- Un interrupteur qui active du nouveau code petit à petit, région par région et projet par projet, en commençant par les projets internes.
- Google Cloud 2025 : la politique de quota aux champs vides
- Fichier de features
- Le fichier de configuration qui liste les features (traits d’une requête) utilisées par le modèle de Bot Management. Il est régénéré toutes les quelques minutes et envoyé à chaque machine.
- Cloudflare 2025 : le fichier de features de Bot Management qui a doublé
- Flotte front-end
- Les serveurs Kinesis qui gèrent l’authentification, la limitation de débit et l’envoi de chaque requête vers le bon shard. Elle compte plusieurs milliers de serveurs.
- AWS Kinesis 2020 : l’ajout de capacité qui a dépassé une limite de threads de l’OS
- Freelist
- La liste des pages du fichier BoltDB qui contenaient des données effacées et peuvent resservir. Le fichier lui-même ne rétrécit jamais.
- Roblox 2021 : la panne Consul de 73 heures
- Global terminate
- Un mécanisme interne de Cloudflare qui désactive un seul composant sur tous les serveurs du monde.
- Cloudflare 2019 : la règle WAF qui a pris tout le CPU
- haché et salé
- Un mot de passe stocké comme la sortie d’une fonction à sens unique, mélangé à une valeur aléatoire propre à chaque utilisateur : deux mots de passe identiques donnent deux valeurs stockées différentes.
- Heroku 2022 : des tokens OAuth GitHub volés
- Identifiant de transaction (XID)
- Un compteur sur 32 bits que PostgreSQL attribue à chaque écriture. Chaque ligne garde le XID qui l’a écrite, et les règles de visibilité comparent les XID.
- Mandrill 2019 : le shard qui n’acceptait plus d’écritures
- IP virtuelle (VIP)
- Une adresse IP que Pacemaker déplace d’un nœud à l’autre. Les applis Rails se connectent à la VIP et tombent donc toujours sur le primaire du moment.
- GoCardless 2017 : le cluster de bases qui n’a pas basculé
- Keylogger
- Un logiciel malveillant qui enregistre chaque touche tapée, mots de passe compris.
- LastPass 2022 : l’ordinateur personnel d’un ingénieur et les clés des sauvegardes
- Label de nœud
- Une clé et une valeur posées sur un nœud Kubernetes, comme
node-role.kubernetes.io/master. D’autres ressources choisissent leurs nœuds en comparant ces labels. - Reddit 2023 : la mise à jour Kubernetes qui a retiré un label de nœud
- Leader Raft
- Le votant qui réplique chaque écriture vers les autres votants et décide quand elle est validée. Consul l’élit avec l’algorithme Raft.
- Roblox 2021 : la panne Consul de 73 heures
- Limite de threads de l’OS
- Un réglage du système d’exploitation qui plafonne le nombre de threads d’un serveur. Un processus qui en demande plus ne peut pas les créer.
- AWS Kinesis 2020 : l’ajout de capacité qui a dépassé une limite de threads de l’OS
- Limite maximum-prefix
- Un plafond sur le nombre de préfixes qu’une session BGP accepte d’un voisin. Au-delà, le routeur coupe la session.
- Cloudflare 2020 : le changement sur le routeur d’Atlanta qui a aspiré le trafic du backbone
- linkerd
- Un proxy sur chaque nœud qui route et répartit les appels entre services. Il apprend les adresses des services auprès de l’apiserver de Kubernetes.
- Monzo 2017 : linkerd, Kubernetes et une panne des paiements
- local-preference
- Un attribut BGP échangé entre les routeurs d’un même réseau (iBGP). Quand deux routes mènent au même préfixe, celle qui a la valeur la plus haute gagne.
- Cloudflare 2020 : le changement sur le routeur d’Atlanta qui a aspiré le trafic du backbone
- Mainteneur
- Un compte npm qui a le droit de publier de nouvelles versions d’un paquet.
- npm event-stream 2018 : le nouveau mainteneur et la charge cachée
- MCP
- Multi-Colo PoP, l’architecture des 19 data centers les plus chargés de Cloudflare. Une couche de routeurs, les spines, relie les parties de chaque data center en maillage.
- Cloudflare 2022 : le changement de politique BGP qui a coupé 19 data centers
- Mise à jour automatique
- Une mise à jour de paquet du système d’exploitation qu’un hôte installe seul, sans qu’un opérateur la lance.
- Heroku 2025 : la mise à jour système qui a coupé le réseau des dynos
- Mode mono-utilisateur
- Une façon de démarrer le serveur Postgres hors du fonctionnement normal. L’arrêt de protection contre le wraparound ne s’y applique pas : la doc demande d’y lancer VACUUM.
- Sentry 2015 : le wraparound des identifiants de transaction PostgreSQL
- Monitoring hors bande
- Des sondes qui tournent entièrement hors de ton infrastructure et appellent tes API publiques comme un utilisateur. Elles alertent même quand ton propre monitoring est tombé.
- Datadog 2023 : la mise à jour automatique de l’OS qui a coupé le réseau des nœuds
- Mot de passe maître
- Le seul mot de passe qu’un utilisateur LastPass tape pour ouvrir son coffre. LastPass ne le stocke jamais, et la clé du coffre en est dérivée sur l’appareil de l’utilisateur.
- LastPass 2022 : l’ordinateur personnel d’un ingénieur et les clés des sauvegardes
- Multimog
- Le répartiteur de charge interne de Cloudflare dans les data centers MCP, une variante d’Unimog. Il répartit les requêtes entre les serveurs d’un data center.
- Cloudflare 2022 : le changement de politique BGP qui a coupé 19 data centers
- Ordres parent et enfant
- SMARS reçoit un ordre « parent » d’un autre système de Knight. Il envoie un ou plusieurs ordres « enfant » aux lieux d’exécution, selon la liquidité disponible.
- Knight Capital 2012 : le vieux code resté sur un serveur sur huit
- Pacemaker
- Un logiciel de cluster qui tourne sur chaque nœud, décide où tourne chaque ressource (un processus Postgres, une adresse IP) et la déplace quand un nœud tombe.
- GoCardless 2017 : le cluster de bases qui n’a pas basculé
- Panic
- En Rust, l’arrêt brutal du thread en cours. Appeler unwrap() sur un Result qui contient un Err en déclenche un.
- Cloudflare 2025 : le fichier de features de Bot Management qui a doublé
- Paquet de réservation
- Un paquet que npm publie sous un nom retiré, pour que personne d’autre ne puisse prendre ce nom.
- npm left-pad 2016 : le paquet dépublié qui a cassé les builds
- Paxos
- Un protocole où une majorité de processus doit accepter chaque proposition avant qu’elle soit validée. La base du User ID Service l’utilise, avec un processus leader qui fait les écritures.
- Google 2020 : le User ID Service à court de quota
- PBKDF2
- Une fonction qui transforme un mot de passe en clé en le hachant de nombreuses fois. Par défaut en 2022, LastPass faisait 100 100 itérations, donc chaque essai coûte 100 100 hachages à l’attaquant.
- LastPass 2022 : l’ordinateur personnel d’un ingénieur et les clés des sauvegardes
- Persistance
- Un moyen de revenir que l’attaquant installe, pour que la coupure du premier compte volé ne le mette pas dehors : un second compte, un programme installé.
- Cloudflare 2023 : les identifiants oubliés après la fuite chez Okta
- pg_basebackup
- L’outil PostgreSQL qui copie un cluster en marche par une connexion de réplication, pour démarrer un nouveau standby.
- GitLab 2017 : le répertoire de base de données supprimé
- Plage caret
- Une règle de version comme
^0.1.0danspackage.json. npm installe la version la plus récente qui la respecte, donc chaque installation neuve reçoit le dernier correctif publié. - npm event-stream 2018 : le nouveau mainteneur et la charge cachée
- Plan de contrôle
- Les nœuds qui font tourner l’API server de Kubernetes et sa base etcd. Ce cluster en a trois.
- Reddit 2023 : la mise à jour Kubernetes qui a retiré un label de nœud
- PMON
- Le principal outil de suivi des risques de Knight. Il montre les positions une fois les ordres exécutés, et quelqu’un doit le surveiller : il n’envoie aucune alerte automatique.
- Knight Capital 2012 : le vieux code resté sur un serveur sur huit
- Power Peg
- Une ancienne fonction de SMARS que Knight n’utilisait plus depuis 2003. Son code était resté sur les serveurs et pouvait encore être appelé.
- Knight Capital 2012 : le vieux code resté sur un serveur sur huit
- Précision mixte
- Certaines opérations tournent en flottants 16 bits (bf16), d’autres en 32 bits (fp32) : deux résultats peuvent alors différer sur les derniers chiffres.
- Anthropic 2025 : trois bugs qui ont dégradé les réponses de Claude
- Prefix list
- Une liste nommée de préfixes IP dans la config d’un routeur. Un terme de politique qui contient
prefix-list Xdans son blocfromne correspond qu’aux routes de cette liste. - Cloudflare 2020 : le changement sur le routeur d’Atlanta qui a aspiré le trafic du backbone
- Préfixe
- Une plage d’adresses IP voisines qu’un réseau annonce à ses pairs en BGP. Un préfixe qui n’est plus annoncé est « retiré » (withdrawn) : plus personne sur internet ne peut joindre ces adresses.
- Cloudflare 2022 : le changement de politique BGP qui a coupé 19 data centers
- Préfixe
- Un bloc d’adresses IP annoncé comme une seule route, par exemple
1.1.1.0/24(les 256 adresses de 1.1.1.0 à 1.1.1.255). - Cloudflare 1.1.1.1 2025 : les préfixes du résolveur retirés par un changement de test
- Primaire
- Le seul nœud d’un shard qui accepte les écritures. Les autres nœuds recopient ses données.
- Stripe 2019 : un shard incapable d’élire un primaire
- Private Space
- Un environnement Heroku dédié qui fait tourner des dynos et certains add-ons dans un réseau isolé.
- Heroku 2025 : la mise à jour système qui a coupé le réseau des dynos
- provision-service
- Le service de Slack qui configure et teste chaque nouvelle instance avant qu’elle serve du trafic.
- Slack 2021 : un Transit Gateway saturé le premier jour ouvré de l’année
- Quota
- La quantité d’une ressource, ici le stockage de la base des comptes, qu’un service a le droit d’utiliser. Chez Google, des outils automatiques fixent ces quotas.
- Google 2020 : le User ID Service à court de quota
- Race condition
- Un bug qui n’apparaît que si deux processus agissent dans un ordre précis. Ici, deux DNS Enactors travaillaient sur le même endpoint presque en même temps.
- AWS us-east-1 2025 : une race condition dans l’automatisation DNS de DynamoDB
- Randomized exponential backoff
- Chaque nouvel essai attend plus longtemps que le précédent, plus un délai aléatoire : des clients tombés ensemble ne réessaient pas ensemble.
- Google Cloud 2025 : la politique de quota aux champs vides
- RCE
- Remote code execution : un bug qui permet à quelqu’un sur le réseau d’exécuter son propre code sur ton serveur.
- Matrix.org 2019 : le Jenkins pas à jour et les clés SSH transférées
- Règle de colocation
- Une règle Pacemaker qui impose que deux ressources tournent, ou ne tournent jamais, sur le même nœud.
- GoCardless 2017 : le cluster de bases qui n’a pas basculé
- Règle IP
- Une règle de routage qui choisit la table de routes d’un paquet, par exemple selon son adresse source. Cilium ajoute des règles IP pour que le trafic des pods sorte par la bonne interface.
- Datadog 2023 : la mise à jour automatique de l’OS qui a coupé le réseau des nœuds
- Réplica synchrone
- Un réplica que le primaire attend : une écriture n’est confirmée au client qu’une fois reçue par ce réplica.
- GoCardless 2017 : le cluster de bases qui n’a pas basculé
- Réseau interne
- Le réseau d’AWS qui héberge les services de base : monitoring, DNS interne, autorisation et une partie du control plane d’EC2. Les applications des clients n’y tournent pas.
- AWS 2021 : la congestion du réseau interne de us-east-1
- Retard de réplication
- L’écart entre le standby et le primaire, en WAL que le standby n’a pas encore rejoué.
- GitLab 2017 : le répertoire de base de données supprimé
- Retrait BGP
- Un message BGP qui prévient les voisins qu’une route vers un préfixe n’est plus disponible. Quand toutes les routes sont retirées, les paquets vers ce préfixe n’ont plus de chemin.
- Cloudflare 1.1.1.1 2025 : les préfixes du résolveur retirés par un changement de test
- Révocation
- L’autorité de certification déclare un certificat invalide avant son expiration. Les clients qui vérifient la révocation le refusent alors.
- Let’s Encrypt 2020 : la revérification CAA qui ne testait qu’un nom
- rotation
- Remplacer un secret par un nouveau dans le système qu’il ouvre, et y révoquer l’ancien.
- CircleCI 2023 : une session volée et tous les secrets des clients
- Rotation d’identifiants
- Remplacer un mot de passe, un jeton ou une clé par un nouveau et révoquer l’ancien, pour qu’une copie de l’ancien ne marche plus.
- Cloudflare 2023 : les identifiants oubliés après la fuite chez Okta
- Routage collant
- Le load balancer envoie les requêtes suivantes d’une conversation au serveur qui a traité la première.
- Anthropic 2025 : trois bugs qui ont dégradé les réponses de Claude
- Route reflector
- Un nœud Calico qui échange les routes des pods (en BGP) avec tous les autres nœuds. Les autres nœuds n’ont alors besoin de parler qu’aux reflectors.
- Reddit 2023 : la mise à jour Kubernetes qui a retiré un label de nœud
- RPO
- Recovery point objective : la quantité de données récentes qu’une restauration peut perdre, comptée à rebours depuis la panne.
- Atlassian 2022 : le script qui a supprimé 883 sites
- RTO
- Recovery time objective : le délai maximal pour restaurer les données et les rendre au client.
- Atlassian 2022 : le script qui a supprimé 883 sites
- Segment WAL
- Un fichier du journal d’écriture anticipée (write-ahead log) de PostgreSQL. Un standby rejoue ces fichiers pour suivre le primaire.
- GitLab 2017 : le répertoire de base de données supprimé
- Serveur d’API Kubernetes
- Le composant du control plane qui expose l’API HTTP de Kubernetes. Retirer un service d’un cluster passe par lui.
- OpenAI 2024 : un service de télémétrie qui a saturé les control planes Kubernetes
- Serveur de noms faisant autorité
- Le serveur DNS qui détient les réponses pour un domaine. Ceux de Facebook ont des adresses IP fixes que Facebook annonce en BGP.
- Facebook 2021 : le backbone qui a coupé son propre DNS
- SERVFAIL
- L’erreur DNS que renvoie un résolveur quand il n’obtient pas de réponse des serveurs de noms d’un domaine.
- Facebook 2021 : le backbone qui a coupé son propre DNS
- Service Control
- Le binaire de Google qui vérifie que chaque requête d’API entrante est autorisée et reste dans son quota. Il lit les quotas et les politiques dans une base régionale.
- Google Cloud 2025 : la politique de quota aux champs vides
- Service Health Dashboard
- La page publique d’AWS (SHD) où AWS affiche l’état de chaque service dans chaque région.
- AWS S3 2017 : la commande qui a retiré trop de serveurs
- Service Health Dashboard
- La page publique où AWS affiche l’état de ses services dans chaque région.
- AWS 2021 : la congestion du réseau interne de us-east-1
- session SSO
- Le cookie qu’un fournisseur d’authentification unique remet au navigateur après une connexion, étape 2FA comprise. Tout navigateur qui envoie ce cookie est traité comme connecté.
- CircleCI 2023 : une session volée et tous les secrets des clients
- Shard
- Une base parmi plusieurs, qui contient une partie des clés. Chez Mandrill, un algorithme de hachage choisit le shard de chaque clé.
- Mandrill 2019 : le shard qui n’acceptait plus d’écritures
- Shard
- Une tranche d’un cluster de base de données. Stripe répartit les données par type entre des clusters et par volume entre des shards, chacun avec plusieurs nœuds redondants.
- Stripe 2019 : un shard incapable d’élire un primaire
- Shard-map
- Le cache que chaque serveur front-end garde pour savoir quel cluster back-end possède quel shard. Sans shard-map complète, un serveur ne sait pas où envoyer les requêtes.
- AWS Kinesis 2020 : l’ajout de capacité qui a dépassé une limite de threads de l’OS
- Site de reprise après sinistre
- Un site Cloudflare en Europe qui peut faire tourner les services critiques du control plane quand ceux de Hillsboro ne peuvent plus.
- Cloudflare 2023 : le data center privé de tout courant
- SMARS
- Le routeur d’ordres automatique et rapide de Knight. Il reçoit des ordres d’autres systèmes de Knight et envoie des ordres aux Bourses et autres lieux d’exécution.
- Knight Capital 2012 : le vieux code resté sur un serveur sur huit
- Snapshot LVM
- Une copie d’un volume disque à un instant donné, prise par le gestionnaire de volumes de Linux. GitLab s’en servait pour copier la production vers le staging.
- GitLab 2017 : le répertoire de base de données supprimé
- Soft delete
- Une suppression qui marque seulement les données comme supprimées. On peut les récupérer jusqu’à la fin d’une période de rétention.
- Atlassian 2022 : le script qui a supprimé 883 sites
- Sous-système d’index
- La partie de S3 qui garde les métadonnées et l’emplacement de chaque objet S3 de la région. Chaque GET, LIST, PUT et DELETE en a besoin.
- AWS S3 2017 : la commande qui a retiré trop de serveurs
- Sous-système de placement
- La partie de S3 qui alloue le stockage d’un nouvel objet pendant un PUT. Il ne marche que si l’index marche.
- AWS S3 2017 : la commande qui a retiré trop de serveurs
- Split brain
- Deux parties d’un cluster se prennent chacune pour le seul leader et acceptent des écritures. Leurs données divergent, et une partie se perd.
- Joyent 2014 : tous les serveurs de us-east-1 redémarrent d’un coup
- Squat de nom
- Publier sous un nom de paquet qu’un autre a utilisé avant, pour que les installations existantes reçoivent ton code.
- npm left-pad 2016 : le paquet dépublié qui a cassé les builds
- Streaming
- Une fonction de Consul 1.10 pour diffuser les mises à jour dans le cluster, conçue pour consommer moins de CPU et de bande passante que le long polling.
- Roblox 2021 : la panne Consul de 73 heures
- systemd-networkd
- Le service systemd qui configure les interfaces réseau, les routes et les règles de routage d’un hôte Linux à partir des fichiers
.network. - Datadog 2023 : la mise à jour automatique de l’OS qui a coupé le réseau des nœuds
- Table distribuée
- Une table ClickHouse de la base default qui interroge les tables sous-jacentes, stockées dans la base r0 sur chaque shard.
- Cloudflare 2025 : le fichier de features de Bot Management qui a doublé
- Terme de politique
- Une règle nommée dans une politique BGP. Le routeur lit les termes dans l’ordre, et le premier qui accepte ou rejette un préfixe tranche.
- Cloudflare 2022 : le changement de politique BGP qui a coupé 19 data centers
- Throttle
- Une limite sur la quantité de travail qu’un service accepte à la fois. L’infrastructure de Joyent en a « to ensure that it cannot run away with a machine » (pour qu’elle ne monopolise pas une machine).
- Joyent 2014 : tous les serveurs de us-east-1 redémarrent d’un coup
- Thundering herd
- Un service revient, et toutes les requêtes qui ont échoué pendant la panne arrivent d’un coup et le surchargent.
- Cloudflare 2023 : le data center privé de tout courant
- Tier web
- La flotte de serveurs web de Slack. L’autoscaling ajoute ou retire des instances selon le CPU et l’occupation des threads Apache.
- Slack 2021 : un Transit Gateway saturé le premier jour ouvré de l’année
- token OAuth
- Un token qui permet à CircleCI d’agir sur le compte GitHub d’un client, par exemple pour lire ses dépôts.
- CircleCI 2023 : une session volée et tous les secrets des clients
- token OAuth
- Un token que GitHub remet à une app comme Heroku, pour qu’elle agisse sur les dépôts d’un utilisateur sans son mot de passe.
- Heroku 2022 : des tokens OAuth GitHub volés
- Top-k approximatif
- Une opération rapide qui trouve les k plus grandes valeurs d’un tableau et peut se tromper sur les plus basses qu’elle renvoie. Dans JAX,
jax.lax.approx_max_ka unrecall_targetde 0,95 par défaut. - Anthropic 2025 : trois bugs qui ont dégradé les réponses de Claude
- Topologie de service
- La liste, chez Cloudflare, des data centers où les préfixes d’un service doivent être annoncés. Les services du Data Localization Suite (DLS) s’en servent pour rester dans une seule région.
- Cloudflare 1.1.1.1 2025 : les préfixes du résolveur retirés par un changement de test
- transaction optimiste
- Une transaction Redis qui pose un
WATCHsur des clés et s’annule à l’EXECsi un autre client a modifié l’une d’elles. Le client la relance alors. - Square 2017 : des retries qui saturent l’authentification des marchands
- Transfert d’agent SSH
- Une option SSH (
ssh -A, ouForwardAgent yes) qui permet à un serveur distant d’utiliser les clés privées de ton portable tant que tu y es connecté. - Matrix.org 2019 : le Jenkins pas à jour et les clés SSH transférées
- Transit Gateway (TGW)
- Un hub réseau AWS qui interconnecte des VPC. AWS le gère et le dimensionne, et Slack s’en sert pour relier ses VPC.
- Slack 2021 : un Transit Gateway saturé le premier jour ouvré de l’année
- Unattended upgrades
- La fonction d’Ubuntu qui installe les mises à jour de sécurité sur minuterie, sans opérateur. Les hôtes de Datadog gardaient les réglages par défaut : mise à jour à 06 h 00 UTC plus jusqu’à 60 minutes de délai aléatoire.
- Datadog 2023 : la mise à jour automatique de l’OS qui a coupé le réseau des nœuds
- VACUUM
- La commande de maintenance de Postgres qui, entre autres, marque les vieilles lignes comme gelées pour qu’elles restent visibles après le wraparound. Autovacuum la lance tout seul.
- Sentry 2015 : le wraparound des identifiants de transaction PostgreSQL
- VACUUM
- La commande PostgreSQL qui, entre autres, marque les vieilles lignes comme gelées : leur XID ne compte plus. L’autovacuum la lance en tâche de fond.
- Mandrill 2019 : le shard qui n’acceptait plus d’écritures
- variables d’environnement de CI
- Les variables avec lesquelles tourne un job de CI. Les équipes y mettent des tokens et des clés pour que le job puisse déployer ou appeler d’autres services.
- Codecov 2021 : un Bash Uploader modifié dans la CI des clients
- Version exacte
- Une dépendance écrite
"0.0.3", sans^ni~. npm installe cette version et aucune autre. - npm left-pad 2016 : le paquet dépublié qui a cassé les builds
- VPC
- Virtual Private Cloud : un réseau isolé dans AWS. Slack fait tourner ses services dans des comptes AWS séparés et des VPC dédiés.
- Slack 2021 : un Transit Gateway saturé le premier jour ouvré de l’année
- WAF
- Web application firewall (pare-feu applicatif) : du code sur chaque serveur Cloudflare qui compare chaque requête HTTP à des règles et bloque celles qui ressemblent à une attaque.
- Cloudflare 2019 : la règle WAF qui a pris tout le CPU
- Webhook d’admission
- Un appel HTTP que l’API server fait vers un autre service avant d’accepter une écriture. Si ce service ne répond pas, l’écriture part en timeout.
- Reddit 2023 : la mise à jour Kubernetes qui a retiré un label de nœud
- Wraparound
- Après environ 2 milliards de nouveaux XID, un vieux XID semblerait être dans le futur. PostgreSQL cesse d’attribuer des XID avant d’en arriver là.
- Mandrill 2019 : le shard qui n’acceptait plus d’écritures
- Wraparound des XID
- Le compteur de XID repasse à zéro, et des lignes écrites dans le passé semblent tout à coup venir du futur.
- Sentry 2015 : le wraparound des identifiants de transaction PostgreSQL
- XID
- Un identifiant de transaction PostgreSQL : un compteur sur 32 bits que Postgres compare pour décider quelles versions de lignes une transaction peut voir.
- Sentry 2015 : le wraparound des identifiants de transaction PostgreSQL