Wiki SRE - Kubernetes, HAProxy, Linux, Terraform
226 articles, du mémo de 10 lignes au tutoriel complet : commandes copy-pasteable, configs qui tournent vraiment et les gotchas croisés en route.
Le wiki existe depuis 2017, au départ pour ne pas refaire deux fois la même recherche. Plus de contexte sur la page À propos. Une question ? contact+wiki[at]jdelgado[dot]fr
Le plan complet est ci-dessous, sinon la recherche fait le job.
Linux
Fondamentaux
- Rappel des commandes de base
- Rappel sur le cron
- VIM: L'editeur de texte de la mort
- cURL: La commande à tout faire
Ligne de commande
- La commande find
- Mémo sur la commande IP
- Dotfiles
- La commande ss
- Configurer correctement son hostname
- Personnaliser ton motd
- Simuler des conditions réseau sur Linux
- Apprendre à se servir de git
- Réduire la taille de son repository Git
- tmux
- Remplacer les commandes de base Linux
- DFC, la commande DF en plus
- sed : chercher et remplacer en CLI
Shell & scripting
- Liste de commandes utiles assez avancées
- Ecrire son script bash
- Astuces bash
- Astuces zsh
- Debug ses lenteurs de ohmyzsh
- Un template pour un script bash
Sécurité
- Générer une clé SSH au format RFC 4716
- Désactiver les patchs de sécurité Meltdown & co
- Apprendre à se servir d'ipset
- Installer et configurer RKHunter
- Installer et configurer LogWatch
- Hardening simple du serveur SSH
- Installer et configurer PortSentry
- Whitelister une série d'IP à l'aide d'IPset et iptables
- Logger les actions SSH utilisateurs simplement
- Accès sécurisé via sFTP (Chroot SSH)
- Améliorer la vitesse de connexion à votre serveur SSH
- Améliorer la sécurité des mots de passe par défaut
- Configurer des notifications Slack pour SSH
- Configurer des notifications Telegram pour SSH
- Lister tous les certificats émis
Réseau
- Installer et configurer son VPN OpenVPN
- Configurer son serveur OpenVPN pour de l'IPv6
- Augmenter le buffer de sa carte réseau
- Effectuer un Speedtest depuis son serveur
Stockage
systemd
Avancé
- Exploration poussée des systèmes de fichiers sysfs & procfs
- strace : tracer les appels système
- Mitigation DDoS L7
- Déplacer un processus dans un tmux
- Troubleshooting GRUB
Astuces & divers
- Mise à jour automatique de ses paquets
- Télécharger ses sous-titres en ligne de commande
- Gagner de la place en supprimant les locales inutiles
- Enlever les paquets « rc » sur dpkg
- Ajouter de la couleur à sa commande man
- Trouver les options de compilation du kernel
- Réinitialiser son mot de passe root
- Convertir des .bin en .iso
- Monter une image ISO : Linux, Windows et macOS
- Obtenir des informations sur vos PDF
- Installer Ruby
Autres distributions
Kubernetes
CLI & outillage
- Commandes utiles pour K8S
- Kubernetes : Commandes Avancées
- Mes meilleurs plugins Krew
- Manage son $KUBECONFIG
- Outils pour mieux gérer K8S
Déploiement
- Golang : Définir automatiquement son GOMEMLIMIT/GOMAXPROCS
- Spegel : Un OCI registry cache stateless
- ValidatingAdmissionPolicy : admission control sans webhook
- StatefulSet - podManagementPolicy : OrderedReady vs Parallel
ArgoCD
- Créer son service account ArgoCD
- ArgoCD ApplicationSet
- ArgoCD : Sync Waves & Hooks
- ArgoCD : Sync Options
Operators
Troubleshooting
Rancher & RKE
Bases de données
MySQL / MariaDB
- Créer son cluster Galera
- MySQL : Commandes avancées
- Debug d'une réplication primaire/réplica
- Gérer ses users MySQL
- Restaurer la DB système MySQL
- Générer des INSERT INTO depuis un SELECT
PostgreSQL
Redis
Memcached
Elasticsearch
MongoDB
Cloud
Google Cloud
- Suivre l'upgrade de son cluster GKE
- Commandes utiles pour la CLI Gcloud
- GKE Spot Nodes
- GKE Workload Identity
- GKE - Capacité réelle des nodes
AWS
Azure
Monitoring & observabilité
Stack LGTM
- Netdata, Prometheus et Grafana : une stack de monitoring simple et puissante
- Grafana Alloy - remplacer Promtail (et tout le reste)
- Thanos at scale : archi, perf et FinOps
- Générer des alertes depuis Loki
- Écrire une métrique custom pour node_exporter
- Quelques tips pour la stack LGTM
Autres outils
- Munin : l'outil de supervision sans fioritures
- Les outils eZ Server, des outils simple de supervision
- Configurer des notifications Slack pour check_mk
Automatisation
Terraform
Ansible
- Automatisation des taches avec ansible
- Ansible : Tips
- Réutilisation de variables ansible entre différentes tâches
Makefile
CI/CD
GitHub Actions
- Durcir une CI GitHub Actions : pins, permissions, injections
- CI GitHub Actions pour un projet Go
- GoReleaser : binaires multi-arch, images OCI et charts Helm
- Cocogitto, le couteau suisse du versioning multi-langages
GitLab
Containers
Docker
Kafka
Web & hébergement
NGINX & PHP
- Configurer nginx pour utiliser IPv6
- Forcer le SSL sous NGINX
- Installer son Serveur Web : NGINX, PHP-FPM et MariaDB
- Installer une version custom de PHP
- Être encore plus safe en customisant son header Server NGINX
- Obtenir les bonnes IP sur apache derrière un reverse proxy
HAProxy
- Reverse proxy: HAproxy
- HAproxy : exploitation au quotidien
- HAproxy : Comportement d'une limite mémoire
- HAproxy : Performance tuning
Varnish
DNS & FTP
WordPress
Benchmark
Troubleshooting
Networking
Général
- Tester la bande passante effective de son serveur avec des proofs files
- Les weathermaps
- Lister les préfixes annoncés par un AS
Cisco
- Commandes de base Cisco IOS
- Cisco : Créér son VLAN
- QOS Cisco
- Cisco : Désactiver la résolution DNS
- STP : Spanning Tree Protocol
- Serveur SSH
- Installer un serveur DHCP sur un routeur Cisco
- Switch Cisco : Accroître la sécurité
- Cisco : Routage Inter-VLAN
- Le Protocole CDP
- Le Protocole LLDP
- Désactiver la propagation du TTL en MPLS
- OSPF en IPv6
- Autoriser les transceiver no-name
pfSense
Hypervisors
Proxmox
- Ajouter une ISO depuis une URL
- Résoudre l'erreur « VM is locked »
- NAT pour les VMs Proxmox
- Gérer son cluster Proxmox
- Créer sa VM en CLI avec cloud-init
- Avoir un Proxmox clean
ESXi
- Accéder à la console de l'ESXi
- ESXi : commandes réseau en vrac
- Uploader ses ISO en ligne de commande
Services auto-hébergés
Applications
- Selfoss, son Reader RSS self-hosted
- NextCloud, son cloud personnel
- Sonerezh
- Sauvegarder ses vidéos avec YoutubeDL et sa GUI
- Gérer son serveur en ligne via Ajenti
- Streamer sa musique depuis Koel
- Partager ses fichiers avec H5ai
- Guacamole : l'outil idéal pour établir des sessions RDP, SSH et VNC
Torrent
Systèmes & desktop
macOS
- Brew, le package manager de MacOS
- Brew : L'installer sans XCode
- Enlever le premier caractère bizarre de iTerm
- Remap le Alt+Arrow de iTerm
Windows Server
- Setup de base d'un Windows 2012R2
- Monter un ISO directement via PowerShell
- Installer et configurer un serveur DHCP en PowerShell
- Manipuler les HDD en Powershell
- Autoriser l'ICMP sur un serveur Windows 2012R2 en PowerShell
- Importer des utilisateurs CSV dans un AD via PowerShell
- Windows : clés de registre utiles
- Exécuter un script PowerShell via une tâche planifiée
- Désactiver TLSv1 et TLSv1.1
- Connaitre le temps d'exécution d'une commande PowerShell
- Accéder au Firewall sans Icône ni raccourci
- PowerShell : variables built-in utiles
- Initier des connexions iSCSi en CLI
- Installer des drivers via PowerShell
- Définir PowerShell en temps que shell par défaut
Windows Desktop
- Ameliorer sa privacy sous Windows
- Hosts File
- Installer tous les logiciels de base via un simple installateur
IDE
Hardware
Serveurs HP
- Commandes HP Smart Array en CLI (Utilisable pour un ESX...)
- Lancer la console iLO depuis un Mac
- Lancer une ancienne console iLO
Cartes réseau
Disques & SAN
- Repérer un disque dur défaillant en le faisant clignoter
- WD Green HDD, Comment prémunir le old_age prématuré