Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
linux:infrastructure [21/02/2024 20:55] – update backup Codimplinux:infrastructure [07/09/2024 13:41] (Version actuelle) – modification externe 127.0.0.1
Ligne 13: Ligne 13:
 - Au singulier : par convention car sinon vous allez vous emmeler - Au singulier : par convention car sinon vous allez vous emmeler
   - Exemple : j'ai déjà eu des infra avec des serveurs nommés `database1`, `databases02`, etc. Un enfer.   - Exemple : j'ai déjà eu des infra avec des serveurs nommés `database1`, `databases02`, etc. Un enfer.
-- Jamais avec le nom d'une technologie dedans mais plutôt un rôle : le jour où vous en changerai ça sera pas pratique sinon+- Jamais avec le nom d'une technologie dedans mais plutôt un rôle : le jour où vous en changerai de technologie ça ne sera pas pratique sinon
   - Exemple : nommer un serveur `cache1` plutôt que `varnish1`   - Exemple : nommer un serveur `cache1` plutôt que `varnish1`
 - Ne jamais mettre de zero supplémentaires : vous ignorer ce que sera le futur - Ne jamais mettre de zero supplémentaires : vous ignorer ce que sera le futur
Ligne 43: Ligne 43:
   - Bien sur cela ne s'applique pas à l'apex de la zone   - Bien sur cela ne s'applique pas à l'apex de la zone
 - Pour faire communiquer vos serveurs entre eux, utilisez les noms de domaines plutôt que les IP - Pour faire communiquer vos serveurs entre eux, utilisez les noms de domaines plutôt que les IP
-  - Vous serez content le jour de la grosse migration (celle qui arrive environ tous les 5 ans et dont vous ne savez encore rien)+  - Vous serez content·e le jour de la grosse migration (celle qui arrive environ tous les 5 ans et dont vous ne savez encore rien)
  
 Cela vous permettra de ne pas avoir plusieurs fois les mêmes infos (adresses IP, etc) dans votre zone DNS et donc d'éviter les erreurs lors de changements, migrations, etc. Cela vous permettra de ne pas avoir plusieurs fois les mêmes infos (adresses IP, etc) dans votre zone DNS et donc d'éviter les erreurs lors de changements, migrations, etc.
Ligne 58: Ligne 58:
 Non, pas dans 6 mois, pas quand ça sera « la priorité », pas « quand tout sera bien en place », pas « après la release », pas « après tel truc important », … Maintenant ! Non, pas dans 6 mois, pas quand ça sera « la priorité », pas « quand tout sera bien en place », pas « après la release », pas « après tel truc important », … Maintenant !
  
-Pensez aussi à backup ce que vous envoyez à des services tiers, par exemple votre zone DNS si vous ne l'hébergez pas vous-même, ça vou sera utile en cas de panne ou de perte de données (oui même les professionnelles du secteur peuvent perdre des données).+Pensez aussi à backup ce que vous envoyez à des services tiers, par exemple votre zone DNS si vous ne l'hébergez pas vous-même (avoir un fichier de zone à plat dans un git que vous modifiez quand vous modifiez la zone chez votre fournisseur), ça vous sera utile en cas de panne ou de perte de données (oui même les professionnelles du secteur peuvent perdre des données).
  
 À titre personnel sur mes infra j'ai tendance à utiliser [[https://www.borgbackup.org/|Borg]] avec [[https://torsion.org/borgmatic/|Borgmatic]] déployés avec [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/borgmatic|un rôle Ansible]]. À titre personnel sur mes infra j'ai tendance à utiliser [[https://www.borgbackup.org/|Borg]] avec [[https://torsion.org/borgmatic/|Borgmatic]] déployés avec [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/borgmatic|un rôle Ansible]].
Ligne 68: Ligne 68:
 Mettez-la en place tôt (juste après les [[#sauvegardes|sauvegardes]] logiquement), pour surveiller tout ce qui est important. Mettez-la en place tôt (juste après les [[#sauvegardes|sauvegardes]] logiquement), pour surveiller tout ce qui est important.
  
-Faites-le aussi au fur et à mesure. N'attendez pas la fin du projet, la release ou que sais-je. Ne vous attendez pas non plus à avoir un case `Monitoring` à cocher dans votre liste : le monitoring se fait régulièrement au fur et à mesure que vous ajouter/modifier votre infra.+Faites-le aussi au fur et à mesure. N'attendez pas la fin du projet, la release ou que sais-je. Ne vous attendez pas non plus à avoir un case `Monitoring` à cocher dans votre liste : le monitoring se met en place en continu au fur et à mesure que vous ajouter/modifier votre infra.
  
-Ayez le réflexe à chaque fois que vous ajouter quelque chose dans votre infra de l'ajouter aussi à votre monitoring en même temps, pas après car sinon vous ne le ferait jamais.+Ayez le réflexe à chaque fois que vous ajouter quelque chose dans votre infra de l'ajouter aussi à votre monitoring en même temps, pas après car sinon vous ne le ferait jamais. Chaque ajout de composant à votre infra doit comporter une case « Ajouter le monitoring ».
  
 Pour une petite infra de quelques serveurs j'ai tendance à bien aimer [[https://munin-monitoring.org/|Munin]], déployé avec 3 rôles Ansible : [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-server|un serveur]], [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-node|un nœud]] et [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-fastcgi|un fastcgi]]. Pour une petite infra de quelques serveurs j'ai tendance à bien aimer [[https://munin-monitoring.org/|Munin]], déployé avec 3 rôles Ansible : [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-server|un serveur]], [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-node|un nœud]] et [[https://git.home.lithio.fr/doctor/ansible/src/branch/master/roles/munin-fastcgi|un fastcgi]].
Ligne 78: Ligne 78:
 Automatisez votre infra tant qu'il est encore temps ! Automatisez votre infra tant qu'il est encore temps !
  
-Par la suite à chaque ajout d'un composant vous pourrez l'automatiser. Pensez à bien documenter votre automatisation et à vous y retrouver.+Par la suite à chaque ajout d'un composant vous pourrez l'automatiser (d'ailleurs vous devriez déployer sur votre infra que via l'outil d'automatisation). Pensez à bien documenter votre automatisation et à vous y retrouver.
  
 J'ai tendance à aimer [[https://docs.ansible.com/ansible/latest/|Ansible]] mais il en existe d'autres. J'ai tendance à aimer [[https://docs.ansible.com/ansible/latest/|Ansible]] mais il en existe d'autres.
Ligne 87: Ligne 87:
  
 Que ça soit avec des fichiers textes, un wiki, sur git, etc. Documentez votre infra pour savoir où vous en êtes. Aussi pour aider d'éventuelles personnes qui pourraient vous rejoindre. Que ça soit avec des fichiers textes, un wiki, sur git, etc. Documentez votre infra pour savoir où vous en êtes. Aussi pour aider d'éventuelles personnes qui pourraient vous rejoindre.
 +
 +Vous pouvez avoir un index des serveurs avec leurs infos techniques, leur emplacement géographique, etc.
 +
 +Vous pouvez aussi documenter la vie de votre infra :
 +
 +- Décommissionnement de serveurs
 +- Incidents
 +- Maintenances
 +- Post-mortem avec des détails
 +- Base de connaissances
  
 Faites des schemas si besoin. Faites des schemas si besoin.