
Notre bien-aimé serveur commence à se faire un peu vieux et surtout particulièrement bordélique



Du coup, je vais entamer des travaux de migrations vers un nouveau serveur avec plein de conteneurs dedans parce que c'est la mode et parce que c'est rigolo

La BÉÉÉÉÉTE
Le nouveau serveur recyclera mon PC de bureau actuel :
- CPU : Intel(R) Core(TM) i5-3350P CPU @ 3.10GHz
- RAM : 16Gio
- 2 SSD petits (pour le système)
- 2 SSD plus grands (pour les données)
- potentiellement une petite CG (parce que la mienne, je vais la mettre dans mon nouveau PC et parce que ma carte mère démarre pas sans
)
Rézo
Je vais également séparer plus strictement les réseaux entre mon réseau domestique et le réseau serveur. L'idée est de faire une sorte de pseudo DMZ mais en un peu plus ouverte : tout accès autorisé depuis Internet sera autorisé également depuis mon réseau domestique.
L'idée est donc de permettre à ces deux bouts de réseau de sortir comme ils l'entendent vers Internet, mais d'autoriser les connexions entrantes que sur des ports standard bien précis que ce soit depuis internet ou depuis mon réseau domestique.
Système
Comme j'héberge beaucoup de trucs et pour beaucoup de monde au final, il va falloir que je m'organise un peu mieux. Notamment pour pouvoir donner la possibilité à certaines personnes de se connecter avec des privilèges très élevés sur certains services.
C'est aujourd'hui pas possible avec un serveur complètement monolithique. Les VMs, c'est bien, mais c'est trop consommateur de ressources (RAM, CPU, etc…). Je vais donc opter pour une troisième voix : LXC/LXD. C'est du conteneur léger qui permet du coup d'avoir de la virtualisation mais sans vraiment virtualiser

Plus léger mais pas dénué de possibilité : on peut mettre du docker dans du LXC, ça va donc être possible aussi de faire tourner des applis plus complexes et de tester des trucs beaucoup plus poilus

Pour le moment, iso-périmètre, je serais à 12 conteneurs (environ) :
- mail : postfix, dovecot, spamassassin, opendkim
- mailman : mailman, postfix
- bt : transmission, sonarr, radarr, jackett
- haproxy (pour l'aiguillage en frontal)
- dojo : nginx, php-fpm, mariadb
- trucs perso : nginx php-fpm mariadb
- zpush : nginx, php-fpm
- xmpp : prosody
- mastodon : docker + postgresql + nginx
- teamspeak : ts3 + mariadb
- voix : mumble + icecast2
LXD/LXC me permet aussi d'avoir une adresse IPv6 publique sur chaque conteneur : tout sera donc accédé le plus directement possible.
Pour pouvoir gérer tout ça de manière plus souple, je vais également avoir un contenur SaltStack. Si j'ai pas le courage, je vais ptet aussi foutre dans des conteneurs Docker les applis qui s'y prêtent bien (je pense notamment à mon conteneur BT).
Quand est-ce qu'on commence ?
En fait, c'est déjà commencé

Après, pour le reste, il va falloir que je me débarasse de mon ancien PC et ça risque donc de prendre du temps

Mon objectif est d'arriver à tout migrer proprement d'ici la fin de l'année (ambitieux mais jouable).
Est-ce que je vais le subir

L'impact va être absolument minimal quoiqu'il arrive : temps de réponse, etc…, rien ne devrait vraiment bouger. Par contre, ça va permettre d'expérimenter plus de trucs et d'accélérer éventuellement les migrations vers des versions plus avancées de PHP notamment mais aussi de NginX. Au final, ça va forcément améliorer les choses

Est-ce que je peux aider

Tu peux généreusement faire donation de SSD neuf

Si tu possèdes un datacenter, tu peux aussi nous loger gracieusement

Plus sérieusement, tu peux donner ton avis sur ce que tu veux, faire des suggestions, poser des questions, demander des trucs, ça aidera déjà beaucoup

C'est quand même très « arrière-cuisine » comme migration, donc ça m'étonnerait pas que ça intéresse grand-monde

Par contre, ça pourrait être intéressant pour les membres de l'équipe : des accès root dans des conteneurs GRATOS avec du DOCKER dispo, ça va forcément faire du
