Premiers retours sur la nouvelle infra alban.montaigu.io

Comme j’ai un peu de temps ce soir, il est temps pour moi de considérer un petit feedback sur mes aventures autour de la mouture 2020 de l’architecture de mes services notamment ce blog personnel désormais sur https://alban.montaigu.io.

Le moins qu’on puisse dire c’est que l’aventure commence à être longue. Depuis déjà longtemps je sais que mon ancienne infra vivihome.net tournant sur rancher 1.x et de simple nodes scaleway avec un docker engine antédiluvien mérite d’être refaite. Le moins que l’on puisse dire d’ailleurs c’est que je manie l’euphémisme avec bonheur en disant cela comme ça. En vrai même wordpress commençait à me dire qu’il est temps de mettre à jour l’infra :).

Le plan de départ était donc de refaire quelque chose dans l’air du temps avec en plus un nouveau domaine. Comme j’étais déjà orienté docker sur l’ancienne infrastructure, la suite logique en cette époque de mai 2020 était bien entendu kubernetes.

Kubernetes, c’est une infra très complexe et un peu pénible à déployer / gérer. Donc scaleway (mon hébergeur), comme de nombreux autres, l’a bien compris et a décidé de proposer quelque chose à la mode : un service de kubernetes managé baptisé « kapsule ». La promesse : toute la puissance de kubernetes sans la complexité de sa gestion.

Je reviendrai peut être la dessus plus en détail plus tard (car ce n’est pas mon point de ce jour) mais en résumé kapsule, c’est sympa et ca marche pas mal. On a un cluster kubernetes rapidement sans se compliquer la vie. De même les indispensables (pour moi) sont aussi là et pas trop mal intégrés : le stockage bloc et le loadbalancer.

Maintenant j’en viens à l’essentiel. Alors cette expérience kubernetes ça donne quoi pour le néophyte que je suis ? Hey bien, heu, le moins qu’on puisse dire c’est que c’est mitigé.

Ce qui est sûr de mon point de vue très subjectif, c’est que la courbe d’apprentissage est assez raide et longue. On ne va pas se le cacher, il y a vraiment de nombreuses choses à apprendre et dans tous les domaines : réseau, stockage, traitement, termes et pratiques kubernetes… Pour une application qui fonctionne on doit maitriser une quantité énorme de paramètres…

Et bien que depuis quelques temps, la complexité commence à s’arranger (en vrai se dissimuler) grâce a helm et ses nombreux « packages » préparés à l’avance dans des catalogues, une application en production et la maintenir reste (de mon point de vue) un vrai challenge surtout pour le néophyte.

En vrai les fonctions et les possibilités sont infinies. Il faut l’admettre. On peut faire quasi tout ce que l’on veut et de manière automatisée. Ceci étant dit, lorsqu’on raisonne avec des besoins simples comme « déployer un wordpress » le chemin pour y arriver est loin d’être simple… Du moins quand on aime s ce que l’on fait et maitriser un minimum.

Des exemples en vrac passés sous silence sur de trop nombreux sites :

  • l’ip réelle du client de votre site sur votre wordpress (externalTrafficPolicy Cluster vs Local, L7 vs L3 balancer, la différences des noms d’options selon votre version d’ingress nginx, les incompatibilités de chacune des solutions avec votre install wordpress et les choix cornéliens que vous devriez faire)
  • La difficulté de gérer votre stockage bloc et faire en sorte qu’il soit conservé correctement lors de reboot / d’upgrade
  • La difficulté de corriger vos déploiements / pods lorsque tout se met a redémarrer / crasher dans tous les sens
  • L’impact parfois irrémédiable qu’un simple paramètre helm ou kubernetes manquant ou erroné peut
  • Le nombre de fois incalculable ou vous conclurez que la seule solution de corriger votre souci est de tout effacer et tout recommencer.
  • Le moment ou vous pensez que tout est en place, que vous voyez un upgrade à faire sur votre déploiement helm et que tout saute en essayant de l’appliquer
  • Les choses aussi bêtes que « comment redémarrer mon pod ? » qui trouve une réponse improbable comme « ca n’existe pas, il faut scale down / up » ou au mieux redémarrer votre déploiement.
  • La grande problématique des stack helm qui vous déploient par défaut des loadblancers à 10 euros le mois au lieu d’en mettre un seul et de compléter ses règles.

HOLD ON !

A cette heure du jour ou j’écris ces lignes, somme toute assez tardive, je me dis que je pourrais continuer encore longtemps la liste des problématiques rencontrées ayant mené à au moins 2 semaines de galères et de réinstallations. Néanmoins l’essentiel n’est pas là.

Ma pensée profonde est en fait plus métaphysique. Kubernetes et tout le reste. C’est puissant c’est indéniable. Néanmoins à ce jour je trouve que c’est surtout une extraordinaire usine à gaz. Il y a de quoi se planter mauvaisement à tous les endroits et ils sont nombreux…

Alors en allant toujours plus loin dans le domaine métaphysique, cela m’amène a me poser la question suivante : ai-je ce sentiment parce que je suis trop vieux ? Ai-je atteint la date de péremption ? Pourquoi est-ce que je ne peux m’empêcher de me dire qu’avec un serveur simple sans kubernetes j’aurai installé et déployé mon wordpress seulement en quelques heures et de manière bien mieux maitrisée ? Ou alors est-ce que dans le fond Kubernetes c’est beau mais surtout une usine à gaz…

Affaire à méditer pour moi, la suite dans le prochain épisode :).

Rancher Labs | Software for building a Private Container Service

Rancher Labs builds open source software for building a private container service. Rancher makes running Docker on any infrastructure simple and scalable.

Source : Rancher Labs | Software for building a Private Container Service
Depuis quelques semaines je suis en train de tester rancher. Et le moins qu’on puisse dire c’est que c’est devenu un système très abouti.
L’installation est simple, le déploiement aussi. L’interface est bien faite et permet de faire des tas de chose depuis l’accès au log, jusqu’à la gestion des conteneurs en passant par le monitoring et un système d’upgrade / rollback très bien foutu.
Franchement rancher est vraiment très bon, j’ai même redéployé toute on infrastructure personnelle avec.
Désormais avec un scaleway + rancher j’ai une infra qui commence vraiment à être intéressante et peu onéreuse.

C'était moi on peut activer la sauvegarde des images sur wallabag :)

Merci à Nicolas Loeuillet de m’avoir répondu 🙂 après ce post.
En fait c’est bien moi qui n’avait pas vu, visiblement c’est pas ressorti sur ma recherche google avec mes mots clés. Notez que j’aurais pu fouiller sur le site wallabag et la doc en direct mais la flemme m’a perdu on dirait. Bref, on peut sauvegarder les images sur wallabag sauf que ça n’est pas activé par défaut. Visiblement pour des raisons de performances. Voir la documentation.
Option activée, testée et approuvée.
Pour ma part je vous conseillerai bien d’activer systématiquement cette option, car pour certains articles les schémas sont importants. Or si on utilise wallabag c’est bien pour garder une copie au cas ou donc mieux vaut avoir les images aussi. Tant pis pour la performance moindre lorsqu’on ajoute le contenu je pense que le jeu en vaut la chandelle sur le cas d’utilisation. Et puis entre nous (à part peut être sur des tonnes d’images) je n’ai pas vu tant de baisse de perf que ça en activant cette option.
Bref, ça devient tip top wallabag, je pense que ça va rentrer définitivement dans mes outils 🙂

C'est moi ou wallabag ne sauvegarde pas les images ?

Après quelques tests, j’aime beaucoup l’outil mais quand je regarde les outils sauvegardés je vois que les images pointent toujours sur le site d’origine.
Je n’ai pas trouvé trop d’info ni dans la configuration ni sur le net.
La seule chose c’est que le site précise que les images sont sauvegardées. Moi ce que je constate c’est qu’en lisant sur mon wallabag, je vois dans le HTML de la page que les images pointent sur le site d’origine…
Si quelqu’un a une précision je suis preneur…
Edit : merci Nicolas pour la réponse. C’est donc possible mais il faut l’activer.

FreshRSS en test sur vivihome

A free, self-hostable aggregator… probably the best! (in my opinion)

via FreshRSS, a free, self-hostable aggregator….
Bien, ça fait un moment que je tournais avec Krissfeed qui fait bien le job est est simple mais n’est plus vraiment maintenu. De plus j’avais des soucis de lenteur de mise à jour et sur certains sites les post me faisaient sauter la mise en forme sur tout mon krissfeed.
Alors j’ai eu envie de prendre des rolls genre newsblur ou feedbin qui proposent tous deux des version à installer chez soi en autohébergement. Newblur semble particulièrement sympa avec possibilité de voir le contenu dans le site d’origine et d’avoir une approche intelligente de sélection automatique des articles (bien que je me méfie de ce genre de système).
Sauf que voilà l’un comme l’autre, ce sont juste des usines à gaz à installer…
Bref, je reste sur une solution simple en php : FreshRSS qui me semble finalement un bon compromis. A tester donc !