Blog de dada

DevOps, bidouilleur et routard plein de logiciels libres

Cloud

Sonerezh 1.0.0 et Nativefier

Rédigé par dada / 23 février 2016 / 10 commentaires


Je vous parlais déjà avec grand bien de Sonerezh en mars dernier. Depuis, plus grand chose. Pourtant, la version 1.0.0 de cette application est sortie ce 16 janvier. Avec les copains de diaspora*, on préparait notre balade en Belgique pour le FOSDEM 2016, d’où l'absence de billet sur cette release : j'me rattrape !

Au programme de cette première vraie version stable, peu de nouveautés. Il faut dire qu'elle était déjà bien fichue. Personnellement, je trouvais l'interface déjà impeccable. Les développeurs ont quand même trouvé la bonne idée d'afficher la liste des 6 derniers albums ajoutés à la collection. C'est un détail, mais un détail agréable. Pour le reste, c'est de la stabilisation à gogo.



Pour certains, il manque toujours la possibilité de téléverser directement sa musique via l'application. C'est pas faux, m'enfin, je transfère mes albums à travers un point de montage SSH directement depuis Nautilus (ou Fichier). Y'a toujours moyen de se débrouiller.

Sonerezh, c'est donc bien. Je ne me sers plus que de lui pour écouter ma musique et pouvoir l’écouter absolument partout, y compris depuis mon Flame, même si l'interface mobile pourrait être un peu améliorée.

En bon fanboy, j'ai décidé de proposer à mon frère de s'en servir. Lui, le windowsien classique, cherchait un bon moyen d’écouter du bon son sans trop se prendre la tête. On n'a pas vraiment les mêmes goûts musicaux, mais ça passe, comme on dit.
Pour lui faire passer la pilule extrêmement facilement, je suis passé par Nativefier. Voici le résultat :



Ce logiciel permet d'encapsuler un site web et de le transformer en application. Je schématise beaucoup en disant ça, mais l’idée est là.
Ci-dessus, c'est mon instance Sonerezh, un site web donc, qui est affiché comme si c’était un logiciel de bureau classique. Chouette, non ? Peu importe le système d'exploitation que vous utilisez, Nativefier permet de pondre une application pour GNU/Linux, Windows et MacOS.
J'ai donc exécuté la commande qui va bien et j'ai envoyé le .exe (via un partage ownCloud) à mon frangin. Mis à par le fait que je passe encore plus pour une sorte de magicien à ses yeux, j'ai offert à mon double une belle façon d’écouter de la musique sans s'emmerder à utiliser des trucs pleins de pubs, chers et qui n'ont pas forcément les albums qu'on aime.

Le seul gros truc qui coince, c'est que la couche technique qui permet ça est basée sur Chrome. Grosse tristitude. Si vous avez des infos sur un système équivalent mais basé sur Firefox, faites tourner !

diaspote in backstage

Rédigé par dada / 27 janvier 2016 / 10 commentaires





Le FOSDEM, c'est à la fin de la semaine, déjà ! C'est pour moi l'occasion de vous partager le fonctionnement de diaspote.org, notre pod diaspora avec Augier. Parce que oui, même si les utilisateurs s'en cognent royalement la plupart du temps, j'ose espérer que ceux de diaspora* seront un peu plus curieux. Les autres, vous pouvez venir flooder avec nous, c'est open bar !

Ce billet est un peu technique mais je vais essayer de faire simple, promis.

Debian powered

Diaspote.org tourne sur une Debian Jessie 8.3. Ceux qui me lisent depuis un moment savent que c'est mon système d'exploitation libre de prédilection, c'est donc un choix classique.
Ce serveur est automatiquement mis à jour via ce qu'on appelle les unattended-upgrades. C'est une configuration que je croyais classique mais je peux vous certifier que ce n'est pas toujours le cas dans le milieu professionnel.
Ça permet de ne plus se soucier des mises à jour de sécurité, les plus critiques : elles se font toutes seules la nuit, quand les utilisateurs dorment, et moi aussi. Un mail me prévient quand c'est fait, histoire de me rassurer, mais je n’hésite jamais à accélérer le processus quand c'est une faille sévère, autant dire rarement.

Scaleway to heaven

Déjà dit mais voici la configuration matériel du serveur :
  • 2 Go de RAM
  • 60 Go d'espace disque
  • ARMv7 4 cores
C'est peu mais ça passe ! On ne fait tourner, nativement, qu'un serveur MySQL (pas de MariaDB encore) et un serveur Apache. Le reste, c'est pour diaspote.

À votre service

C'est un truc assez récent, il date de cette semaine. Avant, nous avions un screen dans lequel le processus diaspora tournait, mais ça, c’était avant. Maintenant, nous avons un script qui nous simplifie la vie. Plus besoin de lutter avec un screen encombrant : nous voici capables de faire un start et stop proprement, en passant par systemd.
Juste après cette configuration, pour des raisons de gestion des faibles ressources dont nous disposons et à cause de la consommation mémoire de diaspora*, nous avons une tache planifiée, un cron dans le jargon, qui relance diaspote toutes les nuits à 4h20 du matin. Ça vide la mémoire, ça soulage et ça n'affecte en rien l'utilisation du pod.
Pour les curieux, il existe un système d'auto-protection dans les OS libres : l'OOMKiller. Ce petit nom est plus clair quand on dit Out Of Memory Killer, je ne sais pas trop comment le traduire en français, mais c'est assez clair, non ? Quand un processus, genre diaspora, se met à consommer assez de mémoire vive pour mettre en danger le fonctionnement du serveur en entier, l'OOMK dézingue ce qu'il peut autour pour essayer de sauver la situation. En général, ça finit mal.

Statistiques à Facette

C'est toujours chouette de voir, réellement, ce qu'il se passe sur son serveur avec des graphiques. Un mail de temps en temps, c'est mignon mais loin d’être sexy. Facette s'occupe de ça pour nous. Il s'occupe d'organiser toutes les informations sur l’état du réseau, de la charge serveur, du CPU et de la RAM en superbes graphiques. C'est beau, c'est efficace et ça permet de connaître exactement l'heure d'un incident et de donner les premières indications, comme un souci de mémoire. Au hasard.

En parlant d'incidents, je suis en train de mettre en place un Cachet. C'est un outil de suivi. Il va nous permettre d'annoncer les futures opérations et de garder une trace de tout ce qui a pu se passer. Une mémoire des crashs, en gros. Il sera rapidement disponible à l'adresse suivante : status.diaspote.org.


Le reste des opérations consiste à mettre à jour le pod avec les dernières améliorations tirées du dépôt Github. Avec ce que nous avons là, l'installation est bien stable et ne plante plus. Ça reste à confirmer, on n'est jamais 100% couvert et il suffit d'en parler pour se prendre une mauvaise blague en pleine figure.

En quelques chiffres

C'est dans cette partie du billet qu'on redescend sur Terre. J'en parle souvent ici, diaspora* n'est pas un outil inconnu, mais il souffre d'un manque cruel : des utilisateurs. Si on se penche sur les statistiques de diaspote, on parle de 39 utilisateurs inscrits pour 22 actifs. C'est pas mal, on dépasse les 55% d'utilisateurs actifs, qui se sont connectés ces 4 dernières semaines. Sauf que ce ne sont que des statistiques et que 90% de ces comptes ne sont pas du tout actifs. Tant pis. On ne se compare pas vraiment aux autres réseaux, mais c'est dommage. D'ailleurs, on a déjà assez de photos de chats comme ça ;-)

Le problème du logiciel libre dans le cloud

Rédigé par dada / 10 janvier 2016 / 5 commentaires


En matière d'informatique dans les nuages, les logiciels libres et open source sont souvent des pointures. Qu'on parle d'ownCloud, de FreshRSS, du futur de Sonerezh pour ne parler que de ceux que j'utilise au quotidien, on se rend compte de leurs potentiels et de leurs intérêts : on se débarrasse de toutes contraintes pour ne faire que ce que l'on veut.

Pourtant, leur utilisation se heurte toujours à un problème : il faut avoir un nom de domaine et un serveur. Le nom de domaine est presque un souci négligeable quand on le compare à la gestion d'un serveur. Quelle distribution GNU/Linux ? Quel fournisseur ? Une fois qu'il est là, j'en fais quoi ? J'installe quoi ? Si on arrive à installer un petit quoi que ce soit, la question qui suit est la pérennité du serveur, sa stabilité, sa sécurité. Autant de choses qui font peurs et qui empêchent les Michus de se lancer dans l'aventure.

Je suis personnellement convaincu que ces services peuvent trouver leur place dans la vie numérique d'un grand nombre de personne une fois l'obstacle du serveur dépassé. Framasoft et sa campagne de Dégooglelisons internet montre qu'il existe un beau paquet d'utilisateurs qui aimerait se servir de la puissance du logiciel libre mais qui ne peuvent pas passer outre l'obstacle serveur.

Il existe des solutions pourtant : passer par des associations, comme Framasoft, passer par des fournisseurs de serveurs déjà configurés comme ceux de Scaleway ou se servir de Yunohost qui surcouche les traces de l'utilisation d'un serveur.
La première se veut être un POC, un Proof of Concept, une façon de montrer que les logiciels libres sont capables. La deuxième offre des outils intéressants mais ne dédouane pas l'utilisateur de savoir gérer un serveur. La dernière surcouche un fonctionnement complexe qui, sans prévenir, peut disjoncter et laisser l'utilisateur complètement perdu,

J'ai une idée en tête, je ne veux pas encore m'avancer sur sa définition, tellement elle me parait au choix trop simpliste ou trop tordue.

Fin d’année, fin des certificats, coucou LetsEncrypt !

Rédigé par dada / 31 décembre 2015 / 8 commentaires


Quand j’écris ce genre de titre, je me demande toujours comment je vais faire pour pondre un billet convenable. Pas grave, essayons :

Alors, ce serveur et celui de diaspote.org (vous savez, le pod diaspora* ) traînaient deux types de certificats : celui offert par Gandi pour dadall.info et un StartSSL pour diaspote. Rien de très reluisant, ni très fiable, alors cette fin d’année et leurs dates d'expirations m'ont motivé pour me lancer dans l'utilisation de LetsEncrypt .

Une fois en place, voici ce qu'on peut maintenant admirer :




Pas mal, non ?

L'utilisation est passablement simple pour ceux qui ont l'habitude de jouer avec des certificats. Le script est à exécuter avec comme paramètre le nom de domaine et les sous domaines qui nous intéressent. Les certificats apparaissent tout seuls et y'a plus qu'à configurer Apache/Nginx. Un restart et c'est terminé.

La seule chose un peu contraignante, c'est qu'il ne faut pas oublier que ces certificats ne sont valables que pour une durée de 90 jours. Certains râleront mais les raisons sont multiples : forcer le renouvellement de certificats entretient le niveau de sécurité et force l'utilisation des dernières configurations efficaces. Ajouter un rappel à son agenda est donc un bon réflexe !

diaspora* entre dans les dépôts unstable

Rédigé par dada / 30 décembre 2015 / Aucun commentaire





C'est en train de devenir une réalité : diaspora* s'installe dans Debian ! Bon, ce n'est qu'un début. On n'est pas encore au niveau d'un paquet disponible dans les dépôts stable, mais c'est déjà ça.

Cette nouvelle me donne l’opportunité de revenir sur la grande nouveauté de cette année 2015 : la mise en place d'un pod diaspora* en tandem avec l'ami Augier.

On va commencer par les choses qui fâchent : oui, à l’époque, j'ai insisté pour que nous restions chez mon ancien hébergeur pour mettre en place le pod. Choix malheureux puisque lors de son lancement, Pulseheberg s'est retrouvé incapable de fournir un service stable, la faute à des attaquants et, sans doute, de mauvais choix. Diaspote en a souffert. Voilà, c'est dit.

En chiffre, ce n'est pas la gloire, loin de là. Ceci-dit, c’était prévisible : des inconnus se lancent dans l’hébergement d'un morceau de réseau social qui personne ne connaît, ou a oublié. Personne ne connaît ? Les attentifs se souviendront de la promotion faite par la presse lorsque des idiots se sont mis à utiliser diaspora* pour répandre leurs idées dites terroristes.
Enfin, peu de monde chez nous : 30 utilisateurs et 14 actifs. On pourrait quand même dire que ce n'est pas si mal pour un pod tournant sur une version instable de diaspora*

Nous utilisons une version instable à des fins de tests. Rares sont les pods avec des caractéristiques techniques (4 cores ARM/2Gb de RAM) aussi faibles et tournant avec le couple MySQL/Apache. N’empêche que ça marche pas trop mal !

Cela nous permet aussi de tester les compétences en expérience utilisateur d'Augier puisqu'il nous gratifie d'un design perso :



Notez aussi le joli panneau latéral dévoilant le superbe système de discussion instantanée ! Ça aussi, c'est un privilège de pod en version instable.

Une année pleine d’expérience, il faut bien le dire. On se lance dans l'aventure sans trop savoir comment ça va se passer. Pour le coup, je dirais que c'est franchement chouette. Tout n'est pas rose mais je peux me servir de mon propre pod pour parler à mes amis blablatant depuis d'autres pods : j'adore.

Dans les points négatifs, même si ça s'arrange avec le temps : la connexion avec les autres pods déraille parfois. On rate des commentaires ou des posts, mais ça fait partie du jeu et ce n’est pas si grave : on a toujours quelqu'un pour reposter ce qui nous échappe, et râler.

Bref, si vous avez du temps à perdre et/ou que vous êtes curieux, je vous invite à venir vous faire un compte chez nous : c'est ouvert !