To content | To menu | To search


Friday 1 November 2024

Let's do the time warp...again (2)

Je ne vais pas parler ni du changement d'heure, ni du thème Dotclear ni du Rocky Horror Picture Show, mais d'un authentique saut dans le temps qui bien que temporaire a laissé des traces visibles pendant plusieurs semaines.

Tout a commencé par un certificat OpenVPN expiré, pour éviter ce genre de déconvenue (je ne m'en étais pas rendu compte, et j'ai cherché longtemps avant de trouver qu'il s'agissait d'une expiration), j'ai décidé de mettre des sondes de supervision sur ces certificats de façon à être prévenu la prochaine fois.

Je commence par scripter ça, sur le serveur contenant lesdits certificats, pour pouvoir travailler avec des exemples. Calcul de dates, classique, j'utilise la commande date. Sauf que 1) cette commande n'a pas la même syntaxe ni le même comportement sous FreeBSD où je fais mes essais que sous Linux 2) j'ai lu le man en diagonal.

Résultat, au lieu de faire un calcul de date, j'ai utilisé la fonction première de cette commande... qui est de mettre une machine à l'heure.

Comme j'ai fait une boucle sur l'expiration des certificats, le serveur a voyagé de date en date, aussi loin que 2030, voir 2120 (oui j'utilise parfois des dates d'expiration particulièrement lointaines, c'est mon côté punk)

Le pire, c'est que je ne m'en suis pas rendu compte tout de suite (j'ai tiqué quand le 2FA de mes sites ne fonctionnait plus...).

La machine n'a pas tant souffert que ça (MariaDB a planté, c'est tout), mais c'est au niveau de la supervision, ironiquement, que les dégâts ont été les plus importants, avec des métriques enregistrées aux dates citées plus haut.

À ce moment-là, j'ai raboté les tables de la base PostgreSQL utilisées par Zabbix avec une requête bien sentie, ce fut galère, mais l'affaire était close.

... Jusqu'à ce matin où je me suis rendu compte que toute la métrologie sous Grafana était également en vrac (j'y vais souvent hein), depuis cette fameuse date. Retour au SQL (cette fois sur InfluxDB...) pour refaire un peu de nettoyage.

La morale de cette histoire, c'est que quand on joue avec la commande date pour autre chose qu'une mise à l'heure, il est fortement conseillé de le faire avec un utilisateur non-privilégié (c'est-à-dire, pas en root), sous peine de souffrir beaucoup par la suite.

Friday 11 October 2024

proso-dis-moi-tout ! (3)

J'ai fini par fermer le service XMPPS/Jabber après un peu plus de dix ans d'agonie (je ne l'aurai même pas utilisé, et vu l'état du protocole, il est peu probable que j'y revienne à l'avenir). De plus cela fait déjà plusieurs années que je n'ai pas utilisé Pidgin.

So long Prosody, tu aura été cool (quoique bien inutile dans mon cas)

Billets connexes

Friday 13 September 2024

C'est en forgeant qu'on fait des trucs (3)

Après avoir lu quelques nouvelles un peu flippantes, puis vu ceci dans mes flux RSS, et approfondi rapidement avec cela, je n'ai pas hésité une seconde et j'ai migré à l'arrache en une soirée la forge de Gitea vers Forgejo. Bien que non garantie, la migration s'est au final très bien passé (pas comme la dernière fois).

Bon par contre le thème par défaut c'était pas trop possible, je suis retourné sur le bleu marin de Gitea, cela restera le thème par défaut (au choix en "dark" ou en "light")

Cela sonne, déjà, la fin de six ans de règne de Gitea. Pas beaucoup de changements, moins de thé, mais un peu plus de liberté !

Billets connexes

Wednesday 21 August 2024

All your base are belong to us

Ça faisait longtemps que j'avais envie d'écrire un article en mode semi-troll sur « pourquoi MariaDB c'est mieux que PostgreSQL ». Semi-troll parce qu'il faut bien un peu de mauvaise foi, mais en même temps je trouve qu'on casse un peu trop de sucre sur MySQL/MariaDB, et qu'on se gargarise un peu trop du côté "sérieux" de PostgreSQL. Et pour les vrais trolls (voir mensonges purs et simples) sur MariaDB/MySQL, je laisse ça à d'autres.

C'est parti, sans ordre particulier.

Réplication

Quand MySQL et MariaDB font du multi-master en réplication asynchrone à l'aise depuis des années, voir du vrai cluster avec Galera, PostgreSQL n'en est capable — en théorie — que depuis sa toute dernière version. Avant, sans solution externe c'était uniquement du primaire/secondaire. Avec un secondaire en lecture seule.

Sous PostgreSQL, la réplication entre deux versions majeures différentes n'est pas possible. Pire, même une mise à jour vers une version mineure du secondaire suffit à péter la réplication (ça m'est encore arrivé pas plus tard que toute à l'heure). Pas de soucis dans le camp d'en face, il est même possible de se servir de la réplication pour faire une upgrade sans interruption de service.

La réplication PostgreSQL est tellement fragile que j'ai fini par faire un script pour la remettre en place. Sous MariaDB, hormis un sordide problème de binaires, mes derniers souvenirs de conflits de clés dupliquées remontent à de nombreuses années.

Mise à jour

Il n'est pas possible de conserver sa base de données entre deux versions majeures de PostgreSQL : il faut soit faire un dump puis restaurer la base de données entière, soit passer par les commandes d'upgrade qui nécessitent d'avoir les binaires des deux versions installées (#pratique). Sous FreeBSD, c'est un bordel sans nom.

Pour MySQL ou MariaDB, il suffit de mettre à jour les paquets, relancer le service, et éventuellement lancer mysql_upgrade ou mariadb-upgrade (dans le cas de MySQL, depuis la version 8.0.16 ça ne sert même plus à rien)

Clients en ligne de commande

Je connais par cœur les commandes SQL de base, je peux sélectionner une base, vérifier les requêtes ou l'état de la réplication les yeux fermés avec MariaDB. Sous PostgreSQL, je n'arrive toujours pas retenir les \c, \dn et autres \dt servant respectivement à se connecter à une base, à lister les schémas et les tables...

Gestion des droits

Sous PostgreSQL, il faut jongler entre les utilisateurs, les rôles, l'héritage, les droits définis par le fichier pg_hba.conf, et ça se complique encore plus si on utilise un connection pooler.

Sous MariaDB, c'est une entrée avec login:mdp@ip_source et des droits sur une ou des bases et une ou des tables. Simple, basique.

Backups

Rien qu'avec l'outil de backup fourni par PostgreSQL, la restauration dépend de la façon dont les dumps ont été faits (SQL, custom...) qu'il faut donc connaître. Avec MariaDB, de base, une seule manière de faire des dumps, et une restauration en rejouant les requêtes. Simple, basique.

Merci pour le poisson

Voila, sans rancune aucune. Je continue d'utiliser les deux produits, aussi bien en pro qu'en perso. Tout est loin d'être rose du côté de MariaDB et Oracle MySQL non plus, il y aurait aussi beaucoup à en dire. Juste...ça marche pas si mal que ça. Et c'est souvent beaucoup, beaucoup plus simple qu'avec Postgres.

Billets connexes

Sunday 7 July 2024

Il est libre, FM (2)

Il y a près de dix ans, ça sentait un peu le sapin du côté de Last.fm, et j'avais par précaution installé son équivalent libre, à savoir GNU FM.

Si depuis lors Last.fm est toujours plus ou moins vivant (peu d"évolutions, mais une maintenance en conditions opérationnelle impeccable), on ne peut pas en dire autant de GNU FM : le projet est en officiellement mort depuis 2022 (et officieusement depuis bien plus longtemps).

Et surtout, c'est la dernière des applis m'obligeant à maintenir une instance de PHP 7.4, la tentative de portage vers PHP 8 s'étant avéré un échec cuisant.

Pendant ce temps la fameuse Hacienda censée remplacer tout ça n'en finit pas de commencer à ce construire, j'étais donc coincé.

Et puis au détour d'un des tickets de cette dernière je découvre l'existence de Maloja, bien vivant, en Python moderne et avec une base SQLite. Go !

Au passage j'ai avantageusement remplacé le bricolage qui me servait de script d'import/export entre last.fm et gnu.fm par Multi Scrobbler, une poubelle en NodeJS mais qui reste heureusement confinée dans un conteneur Docker blindé.

Le résultat est à la même adresse qu'avant, à savoir fm.tourmentine.com (en espérant que mon petit NAS tienne la charge, sinon il faudra trouver une autre solution)

Une bonne chose de faite, reste à nettoyer les restes de GNU FM (et, surtout, enfin débrancher PHP 7 \o/)

Billets connexes

Thursday 22 February 2024

Google, je t'aime moi non plus (3)

Plus de 10 ans après le début de ma Dégooglisation où je parlais déjà de téléphone, je viens enfin d'installer /e/OS et j'avoue que se passer d'entrer un identifiant Google au premier démarrage fait quand même bien plaisir. Et en parlant de premier démarrage, ça fait longtemps que j'en ai pas eu un aussi rapide.

Tout fonctionne nickel sur mon dinophone, ça aussi c'est agréable. Je rétrograde de deux versions d'Android (j’utilisais jusqu’à maintenant un LineageOS tombé du camion en Android 13), ça pique un peu mais ça passe.

Par contre j'ai un peu l'impression que Murena souffre du même syndrome que Canonical, à savoir le choix d'un lanceur à l'interface...discutable, imposé par défaut. Ici on a droit à Bliss Launcher qui rappelle les heures les plus sombres d'iOS. Les fanboys apprécieront, moi c'est pas trop mon truc... Trebuchet, le lanceur de LineageOS est présent mais pas sélectionnable et pire, pas installable séparément...puisqu'il est déjà installé. Les forks de Launcher3 (le vénérable lanceur Android) ne sont pas légion, je me suis donc rabattu, faute de mieux, sur Nova Launcher (après Lanceur Simple qui comme son nom l'indique faisait simplement le taf... mais perdait ses widgets, dommage)

L'Advanced Privacy (seul titre non traduit en français, bizarre), la killer-feature d'/e/OS (découvert il y a quelques mois lors d'une conférence de Gaël himself) fait bien plaisir aussi, même si ça fait un peu outil de paranoïaque (en même temps, on l'est jamais assez)

Pour l'instant je joue le jeu, je n'ai installé aucune appli Google (même pas GBoard), on va voir si je peux survivre sans (Google Maps me manque déjà...)

Note: ceci est le 300ème billet \o/ 🎂

Billets connexes

Tuesday 20 February 2024

Accroche-toi au sudo, j'enlève l'accès root

En matière de bonnes pratiques de sécurité, il est fortement conseillé de ne pas abuser des droits root (car "avec un grand pouvoir vient une grande responsabilité"). Si c'est une pratique que j'ai adopté depuis tellement longtemps que s'en est devenu naturel, la puissance du legacy a fait que ce n'est arrivé que progressivement sur l'ensemble de mes machines.

Il y a quelques années QNAP a eu le bon goût d'interdire l'accès admin non-nominatif de porcos par défaut, il a donc fallu créer un nouvel utilisateur et tout adapter, j'en ai également profité pour faire de même pour le conteneur LXD qui me sert à contourner les limitations de mon NAS. Tout mon réseau local était rootless, c'était le bonheur, mais les serveurs de la Tourmentine sont restés tels quels parce que la flemme, avec toutes les opérations lancées en root (y compris via Ansible) et quelques comptes systèmes dédiés aux applis.

Je me suis donc fait violence et après trois jours de taf (la faute à une preprod toujours lente et bancale, bref) j'ai enfin pu activer le fatidique:

PermitRootLogin no

Pas mal de scripts à adapter, en particulier les transferts par rsync, toujours un peu acrobatiques sans accès root, mais c'est à peu près tout. Dans certains cas ça simplifie même les choses.

Et non, la récente sortie de Sudo pour Windows n'a rien à voir avec cette décision 😅

Saturday 20 January 2024

FTP not dead

J'ai enfin réparé le mode passif du serveur FTP, le protocole dont même Mozilla ne veut plus tellement il date. Ce n'était pas vraiment un problème vu que tout le contenu était de toute façon, comme la plupart des miroirs, accessible en HTTPS.

J'en ai profité également pour ajouter le support du TLS pour un accès en toute confidentialité (merci, une fois encore, à Let's Encrypt)

Toujours pas d"accès SFTP par contre, un peu trop compliqué à mettre en place sur ma petite infra, à moins de changer de port, mais c'est pas trop l'idée.

Ça reste encore de l'artisanal mais je n'exclus pas de regarder du côté de SFTPGo pour remplacer cette "pile" un peu vieillissante.

Sunday 17 December 2023

C'est qui le plus fort ? le raton laveur ou le cygne ?

Adieu, petite tortue.

Le cygne évidement, car c'est un Cygne fort.

Un tunnel IPsec relie les deux serveurs de la Tourmentine afin que ceux-ci échangent en toute confidentialité. Pour ce faire j'utilisais jusqu'à maintenant le démon racoon, issu du très vénérable projet KAME. En me mettant à la recherche d'une sonde de supervision un peu plus complète je me suis rendu compte que racoon n'était non seulement plus développé depuis près de dix ans, mais qu'en plus son utilisation était déconseillée par les auteurs eux-mêmes (en même temps, avec un site chez SourceForge, bon...)

Je suis donc passé sans trop de difficulté à strongSwan, qui outre le support d'IKEv2 (modernité), a le bon goût de disposer d'une sonde Zabbix correspondant parfaitement à mon besoin. Impossible de le faire fonctionner avec la nouvelle interface vici mais bon, de ce que j'en ai vu, tout le monde utilise encore l'ancienne.

J'aurai pu passer à racoon2 à la place (découvert le jour même de la migration) mais j'avoue que la sonde Zabbix a bien penché dans la balance, j'avais un peu la flemme d'en écrire une from scratch. Et puis strongSwan a l'air beaucoup plus complet, et plus abouti (un seul service à lancer au lieu de deux, par exemple). Il est aussi plus aisé de trouver de la doc et des exemples de configuration.

La migration a été sans embûches, merci l'infra-as-code:

  1. Arrêter l'ancien service
  2. Lancer le playbook Ansible créé préalablement et testé sur ma super preprod
  3. Profiter ;)

Prochaine étape: monter un autre tunnel...mais vers ma box internet, pour me débarrasser des multiples tunnels OpenVPN qui encombrent mon réseau local \o/

Ah oui, et, mettre le wiki à jour aussi.

Sunday 19 November 2023

Ravalement de façade (3)

Suite à la mise à jour de Dotclear en 2.28.1 (et les quelques sueurs froides qui vont avec), le thème Fallseason fonctionne de nouveau. Comme c'est le "moins pire", je l'ai repassé en mode par défaut.

Pourvu que ça dure.

Billets connexes

Friday 22 September 2023

Doing bank's work...

"Doing bank's work", c'est la description que j'ai donné à un projet qui, comme son nom l'indique, fait ce que devrait faire ma banque: permettre de récupérer les soldes de mes comptes pour faire des jolis graphes, indiquer une tendance, et me prévenir si le montant d'un ou plusieurs comptes passe sous un seuil critique.

J'ai lancé ce projet il y a 5 ans. À l'époque et encore aujourd'hui, il n'y avait pas beaucoup de produits qui permettaient de faire ça, il n'y en avait même qu'un: weboob (qui est devenu woob depuis)

J'ai donc mis en place un petit wrapper autour de woob pour récupérer les soldes, et les envoyer ensuite dans une base InfluxDB pour pouvoir les grapher avec Grafana. Une boucle infinie, une interrogation toutes les heures avec des paramètres d'authentification stockés dans un password-store. Simple. Basique.

Tout a fonctionné à peu près toutes ces années, au gré des changements de site et d’authentification de ma banque (passage à la double authentification via SMS, puis via l'appli mobile). C'est cette dernière qui a posé de plus en plus de problème, avec un recours au 2FA beaucoup trop régulier pour être automatisable.

Malgré un énième problème j'ai réussi je ne sais pas trop comment à passer entre les gouttes, en réduisant à un appel toutes les 5 minutes j'arrivais à garder une "session" active et à ne revalider le 2FA qu'environ une fois par semaine (jusque là, il était valide 3 mois).

Malheureusement après plusieurs demandes de renouvellement journalières j'ai été faible ("dans le doute, reboot") et j'ai lancé une mise à jour de woob. Grossière erreur: le 2FA ne tient désormais pas plus de 5 minutes.

Pour palier à ça et éviter, pour l'instant, de fermer également ce service (qui ne sera pas le premier...) j'ai changé de fonctionnement: le script n'est plus lancé par une boucle infinie mais par ma nouvelle marotte, à savoir les minuteurs systemd. Après avoir sabré dans le code source de woob pour permettre la demande de validation 2FA même en mode non-interactif (un truc qu'il va falloir pérenniser), le script est lancé maintenant 4 fois par jour, en journée uniquement (la nuit, j'ai autre chose à faire que d'allumer mon tel pour valider une transaction).

On verra à la longue si c'est trop intrusif, une fois par jour devrait suffire pour mon usage, qui est d'avoir un graphe sur le long terme, soit plusieurs années.

En tout cas si vous connaissez une banque proposant une API permettant de faire ce genre de choses (j'ai regardé du côté de l'Open Banking mais ça n'a pas l'air trop ouvert aux particuliers), n'hésitez pas à me le dire, je signe chez eux tout de suite !

Sunday 13 August 2023

Ravalement de façade (2)

Le thème par défaut du site, Fallseason, est tout pété depuis la mise à jour de Dotclear en 2.27. L'occasion de passer sur un thème différent, pour l'instant Wellington. Si cela ne vous convient pas il reste encore tout un tas de thèmes au choix dans la barre ci-contre.

Billets connexes

Tuesday 20 June 2023

Twitter, j'en ai plein les bots

Lassé des décisions arbitraires d'un multi-milliardaire mégalo, j'ai fini par faire une croix sur Twitter, ma source principale de veille. L'ambiance toxique qui règne là-bas commençait de toute façon à me peser, il était temps.

Mais contrairement à Facebook il y a quelques années, je n'ai pas fermé mon compte. Enfin...pas encore. En effet Twitter est difficilement remplaçable en terme d'info, grâce à tous les media et autres journalistes qui ont un compte dessus. Et puis il y a tous ces petits comptes qui fournissent du contenu original, voir exclusif à la plateforme... Tous ceux-là vont me manquer si je coupe totalement Twitter.

Ça tombe bien, car quelques comptes ont des bots répliquant le contenu d'un compte Twitter sur le fédiverse. @cquest par exemple en fournit quelques-uns, par le biais de son service @tootbot. Mais il m'en manquait toujours.

C'est pourquoi il y a quelques mois j'ai mis en place un petit service de ce genre, en me reposant sur Stork (a.k.a. pleroma-bot). Et, jusqu'à la semaine dernière, ça a fonctionné presque sans problème.

Et d'un seul coup d'un seul, la clé d'API, liée à mon compte Twitter et utilisée par pleroma-bot, a arrêté de fonctionner. Il semblerait que la menace de fermer l'accès aux comptes gratuits, annoncée il y a quelques mois, a fini par être mise à exécution. Et tout ça dans le silence le plus total, aucun tweet ni aucun message dans l'interface web n'ayant prévenu ce jour là (pour dire, je ne me suis aperçu de l'arrêt que quelques jours plus tard)

Après avoir hésité à supprimer le service, j'ai fini par trouver une solution de rechange en utilisant les flux RSS fournis par RSS-Bridge et en les donnant à manger à l'excellent Feed2toot. Le résultat est un peu moins bon (l’aperçu des media ne fonctionne pas, peut-être un paramètre que j'ai loupé), mais à l'énorme avantage de ne plus dépendre de ma clé d'API, et donc, de mon compte Twitter. Compte que je vais donc pouvoir fermer sans beaucoup de regrets \o/

Je vous remet la liste des bots disponibles, c'est cadeau: https://kiwi.tourmentine.com/public/twi2fedi. Offre valable dans la limite des stocks disponibles, et surtout dans la limite de la patience de ce cher Elon 😉

Update 27/07: J'ai fini par supprimer le service, c'était plus possible (en attendant de fermer également mon compte là-bas)

Update 23/09: J'ai fini par supprimer mon compte, c'était vraiment plus possible.

Sunday 30 April 2023

La Caste des Méta-Blogs, tome 1: PIP le Trisaïeul

Les sources de la toute première version de ce blog, basé sur un micro-framework perso codé durant mon passage chez feu l'hébergeur i(France) et utilisées entre 2002 et 2009, ont été archivées sur la forge, pour la postérité.

C'était la dernière tâche qui traînait dans ma todo-list, je suis enfin liiiibre \o/

Wednesday 22 March 2023

Si même les claviers sans fil...

Kenitec keyboard from 1992

Après à peine plus de trente ans, je me suis enfin résigné à changer de clavier. Exit donc mon fidèle clavier <del>102</del> 101 touches (il y en a une qui ne fonctionne plus depuis très longtemps), branché pour la première fois sur un PC dit "AT", c'est dire si ça date (ne cherchez pas les jeunes, c'est un terme qui avait seulement cours au siècle dernier). Mais depuis longtemps l'ancêtre donnait des signes de fatigue (appui démultiplié, touches qui se blo, voir dans certains cas tout le clavier si il y avait un peu de tension sur le hub USB). Ça ne devenait plus trop possible, surtout pour un périphérique utilisé toute la journée. Et la nuit aussi.

Bref la question s'est posé de par quoi le remplacer. On m'a conseillé un TypeMatrix malheureusement peu de modèles, et pas celui que je voulais, n'était dispo sur le grand méchant Amazon (on y reviendra), ce qui ne m'arrangeait pas trop car je comptais payer l'engin avec mon solde de cartes cadeaux. On m'a également conseillé un Logitech MX Keys, marque dont je suis très content pour posséder leurs modèles de souris depuis de nombreuses années. J'ai été tout d'abord dubitatif sur l'utilité d'un clavier sans fil, qui au contraire d'une souris, ne bouge pas, et ne souffre donc pas vraiment d'avoir un fil à la patte (du caméléon). Et puis je me suis renseigné et c'est vrai que le fait de pouvoir l'appairer avec jusqu'à trois périphériques - dont le téléphone - s'annonçait au final plutôt pratique. Par contre les touches "façon laptop" du MX Keys ne me branchaient carrément pas, je souhaitais conserver le toucher confortable d'un vrai clavier mécanique.

Sur le plan des claviers mécaniques donc, deux modèles se détachaient du lot: le Keychron K4, impossible à trouver en AZERTY (ça aussi, on y reviendra) sur Amazon, et... la version mécanique du Logitech MX Keys, le MX Mechanical (notez que les liens ne sont pas affiliés, je suis pas un influenceur lol)

Le choix s'est donc fait naturellement, j'ai opté pour le MX Mechanical. Reçu aujourd'hui, j'en suis super content, il est TRÈS confortable, même si il est cher (principal reproche fait par les testeurs), et que je paye un rétro-éclairage de Jacky que je n'utiliserai sans doute jamais (je suis pas un fan de tuning non plus, re-lol). J'ai aussi gagné pas mal de place sur mon bureau (il doit bien être 25% plus petit que l'ancien)

Acheté sur Amazon avec des cartes cadeau donc, le monstre ne m'a de toute façon rien coûté. Un #petittip au passage, la plupart du temps Amazon vous proposera un abonnement à Prime (voir ne vous laissera pas le choix...) pour avoir des frais de port gratuits, sachez que vous pouvez résilier dans la foulée de votre commande sans attendre: la résiliation n'est pas immédiate mais se produit à la fin de la période d'essai, soit un mois plus tard. Donc il vaut mieux résilier de suite plutôt que d'oublier et de se retrouver avec un abonnement à la con.

J'ai longtemps hésité à en profiter pour changer complètement de disposition de clavier (c'est pour ça que j'ai considéré sérieusement le TypeMatrix), voir de troquer l'AZERTY pour un QWERTY tout de même plus répandu et qui est parait-il plus adapté à la programmation, le BEPO étant de toute façon hors de question (trop disruptif). Au final l'habitude - et la flemme, soyons honnêtes - a parlé, et je suis resté sur du bon vieux AZERTY. De toute façon ça fait belle lurette que je ne regarde plus mon clavier, donc passer en QWERTY ne sera qu'une question de changement logiciel... quand j'aurai vraiment l'envie de m'y mettre.

Saturday 4 March 2023

Bon à Tiret

Je vous ai déjà parlé de mon amour immodéré pour Grafana. Ce matin une alerte de sécu tombe, je met à jour aussitôt, d'abord sur mon serveur secondaire avant de le faire sur le primaire.

Suite à la mise à jour, je relance le service, et là c'est le drame:

root@web  ~  service grafana start
Starting grafana.
root@web  ~  service grafana status
grafana is not running.

L'appli fonctionne pourtant bien, l'interface web répond et il n'y a rien de suspect dans les logs.

Autre chose étrange, la sonde Zabbix m'indique que le process Grafana ne tourne plus.

Bref, c'est l'appli de Schrödinger ce truc.

Et c'est là que je commence à tiquer: là où avant on avait

root@web  ~  ps aufxw | grep grafana
grafana 83067  1,0  1,7 785228  52484  -  SJ   03:17   0:00,25 /usr/local/bin/grafana-server -config=/usr/local/etc/grafana/grafana.ini -homepath=/usr/local/share/grafana
grafana 82291  0,0  0,1  12848   1900  -  SsJ  03:17   0:00,00 daemon: grafana[83067] (daemon)

on a maintenant:

root@web  ~  ps aufxw | grep grafana
grafana 63104  0,0  0,0   12848   1880  -  IsJ  21:40        0:00,00 daemon: grafana[63323] (daemon)
grafana 63323  0,0  0,8  838124 130296  -  IJ   21:40        0:05,98 grafana server -config=/usr/local/etc/grafana/grafana.ini -homepath=/usr/local/share/grafana

Les plus observateurs auront remarqué (à part le chemin qui a sauté, ce qui n'est pas très grave) une différence subtile: le tiret de grafana-server a disparu.

Bien sûr la sonde vérifiait l'existence de l'exécutable nommé grafana-server, alors que maintenant il s'agit de grafana avec server en "paramètre"...

Le changement a semble-t-il été introduit par le commit réparant la faille de sécurité, je n'ai rien vu dans le changelog de Grafana une quelconque allusion à un changement d'exécutable.

J'ai donc légèrement modifié la sonde pour surveiller le nouveau nom du process, et le script d'init pour qu'il retrouve son petit pid:

--- /var/ports/basejail/usr/ports/www/grafana9/work/stage/usr/local/etc/rc.d/grafana      2023-03-04 11:25:12.604480000 +0100
+++ /usr/local/etc/rc.d/grafana 2023-03-04 12:26:53.625385000 +0100
@@ -57,10 +57,10 @@
 pidfile="/var/run/${name}/${name}.pid"
 required_files="${grafana_config}"

-procname="/usr/local/bin/grafana-server"
+procname="/usr/local/bin/grafana"
 command="/usr/sbin/daemon"
 command_args="-f ${grafana_syslog_output_flags} -p ${pidfile} -t ${name} \
-       /usr/bin/env ${grafana_env} ${procname} \
+       /usr/bin/env ${grafana_env} ${procname}-server \
        -config=${grafana_config} \
        -homepath=${grafana_homepath} \
        ${grafana_args}"

Je suppose que la mise à jour est incomplète et que le script sera corrigé prochainement. Si j'ai pas trop la flemme j’essaierai d'ouvrir un ticket.

Saturday 28 January 2023

Vite, hein

Plus d'un an après sa sortie, mise à jour des services de la Tourmentine en PHP 8.1. Cette mise à jour n'a pas été aussi smooth que prévue, avec des petits pièges comme des modules refusant de s'installer, un cache qui traînait, et certaines extensions PECL ne faisant pas partie du port www/php81-extensions (comme graphics/pecl-imagick et databases/pecl-redis) à installer à part. Bref, encore des trucs à ansibiliser....

Passage à la 8.2 dès que Nextcloud (encore lui...) sera compatible !

Note 01/02/2023: Sur le front du "legacy", je garde un vieux PHP 7 pour le dernier truc qui le nécessite, (feu) gnu.fm, que je me tâte à faire sauter. De toute façon la base est complètement pourrie, il faudra que je fasse un réimport complet quand son remplaçant sera prêt...si il l'est un jour.

Saturday 31 December 2022

Mail not dead (2)

Comme promis il y a une paire d'année, voici la liste du nombre d'e-mails reçus annuellement depuis maintenant vingt ans que je possède mes propres domaines et mon propre serveur de mail. Cela représente — tout de même —10192 messages au total, pas mal (peut mieux faire, je suis pas quelqu'un qui socialise beaucoup)

Billets connexes

Friday 30 December 2022

Dans le fédiverse personne ne vous entend crier

Bon, dans un moment d'inconscience il y a quelques jours j'ai fait la mise à jour de Pleroma en 2.5.0, nouvelle version "majeure" depuis longtemps.

J'aurais pas dû.

Le passage à la 2.0.0 s'était terminée en vitrification de mon compte, j'avais dû repartir de zéro. Cette fois mon compte fonctionne toujours, mais je ne reçois plus qu'une part infime des messages des personnes que je suis, les (rares) personnes qui me suivent ne voient plus les miens, et impossible de suivre de nouveaux comptes. Bref, c'est inutilisable.

Ça fait quand même deux belles catastrophes en moins de deux ans, j'ai beau être patient je me demande si je ne vais pas aller voir ailleurs, enfin ailleurs toujours en auto-hébergé entendons-nous bien. Mastodon-le-bien-nommé toujours trop lourd apparemment, j'aurais bien tenté Misskey mais c'est une poubelle en NodeJS. Il y a également un fork de Pleroma mais honnêtement, Elixir commence à me gaver un peu. Reste...GNU Social ? Au moins c'est du bon vieux PHP. L'idéal serait en tout cas de pouvoir, cette fois, récupérer mon compte et ses données...

J'ai ouvert un ticket, mais vu que l'instance est quasi-inutilisable, je me demande si je vais pas commencer par tenter un rollback vers la 2.4.5 (soyons fous...)

Edit 18:33: Après un redémarrage plus ou moins accidentel du service, tout fonctionne de nouveau o_0. Quelle frayeur pendant deux jours, doublée d'un grand moment de solitude (au sens propre...), c'est terrible. Et pas du tout inquiétant pour la suite. Reste à faire mes excuses et fermer le ticket ouvert dans la douleur chez Pleroma.

Billets connexes

Sunday 25 December 2022

Sport de Noël

La version 2.24 de Dotclear a débarqué hier au pied du sapin, dont la mise à jour était qualifiée par l'équipe elle-même de "sportive".

Et c'est le moins qu'on puisse dire, page blanche, mode de secours, vidage des cookies navigation privée, j'ai eu droit à tout, avec quelques suppléments: le thème FallSeason a du également être mis à jour, et re-customisé, et pas mal de plugins ne sont pas encore compatibles (j'ai du me débarrasser des plugins de traduction Posts Translations et Translater, qui ne sont de toute façon pas très utilisés, parce que la flemme de traduire depuis longtemps). Un peu plus gênant, mais pas la mort non plus, le plugin Related entries a du également être désactivé, car il fait planter une partie de l'interface d'admin.

La mise à jour a été du coup beaucoup plus longue que d'habitude, et pas mal de trucs sont sans doute encore cassés (en particulier le menu de droite, principalement à cause des plugins de traduction manquants). Si vous êtes passés à ce moment là la navigation a du être un peu chaotique, car j'ai fait les modifs en live sur la prod (oh ça va hein, j'ai pas fait ça un vendredi non plus...)

Peut être un jour je passerai à quelque chose de plus facile à maintenir, qui sait, si j'ai le temps.

Billets connexes

- page 1 of 30