Table des matières
Bonjour à tous,
En mai, fais ce qu’il te plait. Pour respecter cet adage, l’article du mois sera donc le 2ème article de la série Pêle-mêle.
Migration du serveur
Je suis en train de migrer petit à petit mon serveur vers un autre serveur. Normalement, vous ne voyez aucune différence si ce n’est d’éventuelles petites coupures et des changements DNS sur certains services.
Petite histoire
J’ai commencé à gérer un serveur à distance début 2016 environ. À l’époque, j’étais sur un petit VPS chez OVH et c’était principalement pour m’amuser avec. Petit à petit, j’ai installé de nombreux services, démarré ce site et commencé à héberger des outils pour d’autres personnes. Je suis ensuite passé sur un KS-1 de Kimsufi (donc toujours chez OVH finalement) puis sur un KS-8 pour plus de patate et un disque plus gros. Il y a à peine plus d’un mois, j’ai commandé un autre KS-8 pour migrer de l’ancien vers le nouveau avec une stratégie dont nous allons parler plus tard dans l’article.
À ce propos, les serveurs Kimsufi étant quasiment toujours “en cours de réapprovisionnement”, je vous renvoie vers un script Python que j’ai forké en juin 2016 pour mon passage sur le KS-1. Depuis, un changement d’API a entrainé une nouvelle version du script, mais ce dernier fonctionne toujours (le mois dernier tout du moins) et m’a permis d’obtenir rapidement mon deuxième KS-8 en me notifiant à chaque disponibilité de serveur.
La stratégie adoptée
Pour faire simple, avant, j’installais tout à la main directement sur le serveur. Je n’avais pas de soucis de dépendances non compatibles, tout était sauvegardé quotidiennement sur disque externe et tout se passait très bien. Sauf que voilà, mieux vaut prévenir que guérir. En cas de pépin sur mon serveur (ce que je n’espère pas bien sûr), les services les plus simples seront réinstallés avec un simple scp (une copie des fichiers pour les non connaisseurs). D’autres services nécessiteront que je passe un peu de temps pour installer les dépendances pour tout remettre en place. En gros, le principal serait réinstallé en 1 ou 2 heures, et il me faudrait 4-5 heures pour réinstaller le reste (peut-être plus pour Nextcloud parce qu’il y a plus de 200 Go sur l’instance et que tout copier prends du temps, même sur un serveur fibré).
Bref, j’adore maintenir mon serveur, ça me prend du temps mais c’est comme un loisir ou une passion pour moi. Sauf qu’au bout d’un moment, il est temps de passer à des solutions plus simples et pérennes. C’est là que je fais intervenir Docker. D’ailleurs, il semblerait que j’ai toujours quelques wagons de retard. On est en 2020, je passe à la conteneurisation là où tout le monde parlait d’orchestration de conteneurs il y a quelques années déjà et maintenant de solutions serverless. Chaque chose en son temps, je préfère des technologies stables et qui ont fait leurs preuves.
À l’époque Docker souffrait de problèmes de sécurité, et mon côté non-conformiste m’entrainait à ne pas toucher à ce genre de choses (je n’aime pas faire comme tout le monde !). À l’heure actuelle, j’ai plus de 30 conteneurs qui tournent sur le nouveau serveur, et j’en suis content. Tout est configuré via des fichiers docker-compose.yml, tout est carré (je suis assez pointilleux, j’aime les choses bien faites et je dispose du temps que je veux pour le faire (les longs week-ends confinés de mai aidant pas mal, il faut le souligner !)). Si ce nouveau serveur tombe, j’en prends un autre, je fais une post-install que j’ai documenté (quasiment que des copiés-collés à lancer sans trop réfléchir) je fais un scp et je lance un script (une sorte d’orchestrateur, même si c’est un grand mot pour un script bash à 2 balles) qui va démarrer tous mes services et basta (aux changements DNS près).
Bon, j’ai quand même 2 machines virtuelles de test sur lesquelles je fais tourner mes services, une fois que c’est OK, je mets en production sur le serveur. Je fais ça à mon rythme, je prends un service sur l’ancien serveur, je testouille sur machine virtuelle, quand c’est OK, ça passe en production et je change des entrées DNS si nécessaire. Sur mon serveur de production, là où avant je faisais directement mes tests, maintenant, c’est propre, c’est carré, ça me convient. Il ne faut pas oublier que ce n’est pas mon métier, mais simplement un loisir sur mon temps personnel !
Petite publicité pour CommitStrip, allez les suivre !!
Dans un prochain article (vraisembablement le prochain), je parlerai plus en détail de mon expérience sur Docker. Pour l’instant, toutes les migrations se sont bien passées, les unes après les autres. J’ai pas mal galéré forcément au début, mais ça se passe de mieux en mieux. D’où l’envie d’en faire un futur article, une sorte de retour d’expérience qui pourra resservir à certains j’espère !
Toujours des interrogations
Je suis sur un serveur distant KS-8, ça coûte tout de même 20 euros par mois … J’ai longtemps cherché chez la concurrence, mais rien trouvé correspondant mieux à mes besoins. Je me suis également penché sur l’auto-hébergement (avec une solution dans l’esprit de celle-ci) mais je n’y connais pas grand-chose en Hardware, je ne sais pas vraiment choisir des composants qui vont bien ensemble … Et je n’ai pas non plus trouvé de serveur clé en main qui me corresponde.
En gros, j’ai besoin de 16Go de RAM, d’un CPU qui tienne la route (et pas de l’ARM), et d’au moins 1To de disque dur ainsi qu’une bonne carte réseau. Si faisable, la possibilité de hot swap serait un plus pour une sorte de NAS avec disques en RAID. Et en parlant de NAS, les solutions clé en main sont bien trop chères à mes yeux si on veut monter sur 16Go de RAM et un processeur qui tienne la route.
Si vous avez des configurations ou des serveurs distants qui respectent ces besoins, n’hésitez pas à m’en faire part !!
L’avantage de tout conteneuriser est que les migrations sont ultra simples désormais, je n’ai pas de soucis à rechanger dans un mois !
Un nouveau site !
Le site actuel est un site statique généré avec Hugo. Cependant, j’ai créé un nouveau site sous Wordpress.
Plusieurs raisons à cela:
- Pour mes besoins, cela convenait parfaitement, un site statique n’était pas pertinent.
- Wordpress est un outil avec des défauts certes, mais il reste néanmoins très pratique et fonctionnel !
- J’héberge déjà 3 autres sites sous Wordpress sur mon serveur, aucun n’était à moi, pour tout ce qui est mises à jour et compagnie, je préfère faire le crash test avec mon propre site.
Sans plus attendre, voici son adresse: cooking.pofilo.fr.
Comme son nom l’indique, c’est un site de cuisine. À la base, j’en avais marre de la question “qu’est-ce qu’on mange ?” alors j’ai voulu faire un tableur pour lister des recettes et pouvoir lister rapidement des recettes que l’on connait et maitrise en fonction d’ingrédients ou d’envies ! Et bon, un tableur n’aurait pas été facile à mettre en place, et il vaut mieux une solution accessible via smartphone (pour suivre la recette dans la cuisine). J’ai donc trouvé un thème très sympa pour Wordpress: Recipe.
Pour l’instant, je n’ai fait que très peu de modifications sur ce thème: ajout de la langue française, et mis en place de la même couleur verte qu’ici. De plus, j’ai également adapté le logo pour rentrer dans le thème de la cuisine ! Si vous êtes sur un écran assez gros, vous pouvez retrouver le site via le logo dans le menu à gauche (le lien est tout en bas sur mobile).
Pour l’instant, depuis la création du site le 1er mars (déjà 3 mois !!), j’ai réussi à sortir une recette tous les dimanches à 20 heures, à voir jusqu’à quand je pourrai tenir à ce rythme ! :)
Comme ici, le but n’est pas la quantité, juste avoir une base de recettes intéressantes pour les jours sans inspiration !
PeerTube a besoin d’argent !
PeerTube, dont j’héberge une instance est:
l’alternative libre et décentralisée aux plateformes vidéos, qui vous donne accès à plus de 200 000 vidéos proposées par 30 000 utilisateur⋅ices et visionnées plus de 10 millions de fois.
J’avais déjà participé au financement de la V1 car je trouve vraiment intéressant de voir ce genre de logiciels voir le jour. Je ne suis pas particulièrement fan des réseaux dits “fédérés”, ici c’est le partage de vidéos en pair-à-pair qui m’a intrigué. Cela permet de diffuser les vidéos sans utiliser toute la bande passante du serveur mais un peu de bande passante de tout le monde (enfin, il faut que la vidéo soit vue par plusieurs personnes simultanément forcément).
Si vous voulez en savoir plus sur ce logiciel, je vous renvoie ici. Pour les nouveautés à venir (et la demande de contribution), ça sera par ici.
Le défaut majeur qui va empêcher un “Youtubeur” de passer sur “PeerTube” est que les vidéos ne sont pas monétisées. Il faudra trouver un moyen pour y remédier pour que PeerTube ait une chance de se généraliser selon moi. Les solutions de financement telles que tipeee ou équivalents ne répondront pas aux besoins de tous.
Coup de gueule
Paragraphe supprimé à la relecture, ça n’était pas assez constructif … J’en ferai peut-être un article complet un jour !
NextINpact
Si vous êtes fidèles sur ce site, vous savez sans doute que je suis un lecteur de NextINpact car on le retrouve souvent dans mes sources. Ils ont récemment lancé (avec succès) un financement participatif auquel j’ai participé.
J’ai donc un code d’un mois d’abonnement à vous donner et ce sera au premier qui le demandera dans les commentaires ! Il faudra poster votre commentaire en indiquant votre adresse e-mail (dans le champ dédié, pas dans le commentaire directement) à laquelle je pourrai vous envoyer le code. Et si vous êtes déjà abonné, jouez le jeu et laissez la possibilité aux autres de découvrir ce média libre et indépendant ! ;)
Conclusion
Je vous laisse donc ici pour cet article, n’hésitez pas à me faire un retour si vous connaissez des serveurs (à acheter ou louer) qui sembleraient convenir à mes besoins, j’ai du mal à trouver … J’espère que cet article vous aura plu, … et vous donne rendez-vous dans quelques minutes sur mon site de cuisine pour une nouvelle recette (teaser, c’est une pizza !).