Archives 2015

JM2L 2015

Tuesday, 10 November 2015
|
Écrit par
Grégory Soutadé

Logo JM2L

2015 est l'année du renouveau ! Si on peut déplorer l'annulation de la course pour le téléthon, il faut se réjouir du retour de celle des paroisses et ... des JM2L !

Les JM2L (Journées Méditerranéennes des Logiciels Libres), c'est LE rassemblement du logiciel libre en PACA. Cette année, une formule réduite est proposée (une journée plutôt que deux). Le samedi 28 novembre 2015, le campus de Polytech Nice-Sophia vous accueille pour une journée de découverte des logiciels libres au travers de conférences, stands, ateliers et discussions libres. La manifestation est ouverte à tous et à toute, aux amateurs, aux curieux jusqu'aux passionnés voulant aborder des points plus techniques. Profitez-en, l'entrée est libre et gratuite.

Il est possible d'amener son ordinateur personnel afin de tester et ou d'installer des systèmes libres (en parallèle ou en remplacement de ceux propriétaires).

Cette année est un peu spéciale pour moi, puisque je passe de l'autre côté de la barrière. En effet, je vais donner ma première conférence qui, pour le coup, sera vraiment très technique. Le programme complet est disponible ici.

Fermeture de Facebook 2 email

Thursday, 29 October 2015
|
Écrit par
Grégory Soutadé

Le service f2email était en place depuis un an et demi, mais cela fait environ 6 mois qu'il n'est plus fonctionnel. Je décide donc de le stopper.

Les sources restent disponibles sur ma forge.

Pourquoi ne pas le maintenir ? Parce que Facebook impose trop de restrictions. Le monde entier s'est déchaîné lors de la sortie de Graph API, comme quoi on allait pouvoir espionner automatiquement les personnes... Ce n'est pas complètement faux. Les premières API mises à disposition étaient relativement "large" au niveau des permissions. On assiste aujourd'hui au phénomène inverse : on ne peut plus rien faire !

Dorénavant, les applications (même si elles ne sont pas distribuées) ont besoin d'être approuvées par Facebook (qui ne vérifie même pas le code source...), ce qui nécessite de remplir tout un tas de contraintes. J'ai essayé deux ou trois fois de soumettre la mienne avec des explications sur le pourquoi des permissions et la façon de s'authentifier. J'ai toujours été rejeté...

Ensuite, la lecture des amis. Il n'est possible de découvrir ou de lire le flux de vos amis que si ceux-ci ont installé l'application. On ne peut même plus accéder au flux "public". Autant dire que personne n'a installé f2email (et ce n'était pas le but).

De plus, on ne peut plus (via la graph API) accéder aux profils que via leurs identifiant numérique. Adieu le /JeanDujardinOfficiel, bonjour le /247465978636124.

J'ai vaguement essayé de migrer vers l'API 2.4, sans succès (c'est la version qui tourne actuellement).

Graph API n'est désormais destinée qu'aux mini-jeux monétisables, plus aux réelles applications utiles, dommage...

20e course des paroisses (2015)

Thursday, 29 October 2015
|
Écrit par
Grégory Soutadé

Départ course des paroisses

La course des paroisses revient pour sa 20e édition bis. La précédente ayant été annulée pour cause de mauvais temps. Espérons qu'il sera plus clément cette année.

Le rendez-vous est pris pour le mercredi 11 novembre 2015 à 14h au col de la Belle Barbe (Agay). Plusieurs parcours :

  • 11,5km et 6km pour les adultes
  • 4km pour les minimes
  • 1,7km et 1km pour les plus petits.

Un certificat médical avec la mention "en compétition" est obligatoire (ou une licence).

Côté finance, ce sera 10€/12€ pour les adultes et 7€/8€ pour les enfants. À ce tarif, on peut ajouter (en option) 5€ au bénéfice de l’aumônerie des jeunes de Saint-Raphaël. Les dossards seront à retirer le jour même.

À noter que l'adresse du site web a changé (.com -> .fr).

La réplication quand on est auto hébergé

Tuesday, 20 October 2015
|
Écrit par
Grégory Soutadé

On ne le répétera jamais assez : avoir un serveur chez soi, c'est cool. On est réellement maître de ses données, de ce qu'on publie, de ce qu'on héberge, etc. Mais, parce qu'il y a toujours un mais, cela ne va pas sans contraintes. La première étant le débit montant. Avec une offre fibre, ce n'en est plus un (l'ADSL suffit si les fichiers ne sont pas trop gros). La seconde est l'administration. C'est une réalité, même s'il y a beaucoup de choses pour nous faciliter la vie (des paquets tout faits dans votre distribution préférée, voire une distribution dédiée). La dernière étant la disponibilité/réplication.

Disponibilité et réplication sont des notions inter dépendantes : pour avoir la première, il faut qu'en cas de panne, un autre serveur puisse prendre le relais. Donc, il y a nécessité de faire de la réplication (distante de préférence) et d'avoir un mécanisme qui permet de basculer automatiquement de l'un à l'autre. C'est le point que nous allons aborder aujourd'hui.

Pour faire de la réplication, il n'y a pas de miracles : il faut deux serveurs physiques avec (au moins) deux disques durs indépendants. Pour ma part, j'ai, d'un côté mon nouveau joujou "Déméter" (Cubox i2ex) en serveur principal (maître), et de l'autre, mon vieux Sheevaplug ("Cybelle"). Il faut ajouter à cela, un parent, un ami ou un collègue qui accepte d'héberger l'esclave.

Si la procédure est valable (et même cruciale pour un serveur), s'en est de même pour nos données personnelles en tant que particulier. Les inondations qui ont touchés la Côte d'Azur n'en sont que le triste exemple. J'habite au troisième étage ? Les canalisations du quatrième peuvent exploser, un incendie peut se déclarer, je peux être victime d'un vol. Donc dupliquez, dupliquez, dupliquez !

OpenVPN

La première étape est de configurer un tunnel OpenVPN entre les deux machines. Outre l'aspect sécurité d'un tunnel chiffré, OpenVPN est surtout très utile pour communiquer via une adresse (privée virtuelle) unique. On s'abstrait ainsi des problèmes de changement d'adresse IP, de résolution de nom.

Dans notre cas, on reporte la responsabilité de la création du tunnel sur l'esclave qui doit connaître l'IP publique du serveur maître.

Il faut ensuite mettre en place une configuration quasi similaire sur le maître et l'esclave, ce qui nécessite des petits réglages pas toujours évidents (surtout la gestion des différences).

Réplication

En ce qui concerne la réplication à proprement parler, il faudra appliquer différentes méthodes selon le service cible.

Pour un serveur web, des fichiers, des mails, on utilisera rsync.

rsync -auz root@cybelle:/var/mail /var

Pour une base de données, on s'appuiera sur le modèle maître-esclave de MySQL (dans mon cas)/PostgreSql/MariaDB...

Astuce : j'utilise une authentification SSH par clé pour l'utilisateur root sur l'esclave, valable uniquement à travers le tunnel OpenVPN.

On peut ainsi configurer un cron afin que tout soit automatique :

#!/bin/bash

HOST=soutade.fr

function cybelle_not_here()
{
    echo "Cybelle not here" | mail -s "Error" root@$HOST
    exit 0
}

# OpenVPN tunnel conectivity check
ping -c 1 cybelle >/dev/null || cybelle_not_here

# Get emails from Cybelle
rsync -auz root@cybelle:/var/mail /var
# Delete retrieved emails on Cybelle
ssh root@cybelle 'find /var/mail -name "*cybelle*" -delete'

# Push local data
rsync -auz /var/www root@cybelle:/var
rsync -auz /var/projects root@cybelle:/var
rsync -auz /home/soutade/www root@cybelle:/home/soutade

Cybelle est référencée dans /etc/hosts via son adresse privée OpenVPN.

Attention toutefois : même avec une sauvegarde distante, il est NÉCESSAIRE d'en faire une locale. Encore mieux, si elle est réalisée sur un disque chiffré. On notera que lors de la réplication (quotidienne), je lance une commande directement sur l'esclave (pour effacer les mails dans le cas présent).

DNS Failover

Maintenant que nous avons deux serveurs configurés sur deux sites distants, on peut commencer les choses sérieuses : la défaillance d'un des deux (surtout le maître). La solution proposée ici est une solution de pauvre et n'est pas recommandée pour un usage professionnel.

Nous allons discuter du DNS Failover (basculement DNS). L'idée est, qu'en cas de défaillance du serveur principal (maître), l'entrée DNS (NB: qui gère la correspondance nom de domaine/IP) soit mise à jour vers le serveur de secours (esclave). Cette solution (de pauvre) a deux inconvénients majeurs qui sont :

  • La mise à jour des serveurs DNS primaires est de l'ordre d'une demi-heure
  • Les entrées DNS peuvent être encore dans le cache du client (donc non rafraîchies)

Dans l'idéal, il aurait fallu avoir de l'IP failover, c'est-à-dire qu'un serveur frontal se charge de rediriger le trafic vers la bonne destination (celle qui est encore en vie). Mais cela nécessite des infrastructures beaucoup trop onéreuses pour les petits particuliers que nous sommes.

Pour la mise en pratique, j'ai modifié le script de mise à jour de DNS de Gandi afin qu'il retourne 34 quand une entrée vient d'être modifiée (détection d'un changement d'IP). Il affiche désormais sur la sortie standard l'ancienne et la nouvelle IP.

Sur l'esclave, un script est exécuté toutes les dix minutes. Il est chargé de vérifier que le maître est toujours vivant. Si ce n'est pas le cas, il change l'entrée DNS vers son IP actuelle (il réalise le basculement) :

#!/bin/bash

HOST=soutade.fr
MASTER_ADDRESS="10.8.0.1"

ping -c 4 checkip.dyndns.com 2>/dev/null || exit 0 # No internet connexion at all                                                          
ping -c 4 $MASTER_ADDRESS 2>/dev/null && exit 0 # Master is up, ouf !                                                                      
python /home/soutade/gandi.py || exit 0
echo `date` | mail -s "Fallback server (cybelle) activated" root@$HOST

Sur le maître, un autre script est exécuté toutes les dix minutes également :

#!/bin/bash

HOST=soutade.fr

vals=`python /home/soutade/gandi.py`
if [ $? -eq 34 ] ; then
    old_ip=`echo $vals | cut -d' ' -f9`
    new_ip=`echo $vals | cut -d' ' -f5`
    ssh -oStrictHostKeyChecking=no root@${old_ip} "sed -i -e 's/^remote .*$/remote ${new_ip}/g' /etc/openvpn/cybelle.conf ; service openvp\
n restart"
    echo `date` | mail -s "Master server (demeter) activated" root@$HOST
fi

Si le changement d'IP est effectif (changement d'IP au niveau FAI ou redémarrage du serveur), on va modifier la configuration OpenVPN de l'esclave avec notre nouvelle IP et relancer le service.

Un petit dessin pour bien visualiser les différentes situations :

Infrastructure dans le cas normal

Et en cas de défaillance du maître :

Basculement en cas de défaillance du maître

Un petit bout d'Amsterdam

Tuesday, 20 October 2015
|
Écrit par
Grégory Soutadé

Un canal

Amsterdam

Amsterdam, la Venise du nord est une ville-capitale incroyable. Belle et cosmopolite, elle a su préserver son âme tout en évoluant dans la modernité. Ce n'est, hélas, pas le cas des constructions modernes en périphérie, d'une laideur effrayante. À contrario, les maisons du XVIIe de style baroque longeant les berges d'innombrables canaux sont magnifiques avec leurs grandes fenêtres et leurs plafonds immenses, le calme paisible de certains quartiers et la foule de la rue adjacente.

Une rue

Un pontUn autre canal

Qu'est ce qu'il y a à voir ? Simplement tout ! Il suffit de prendre la carte et de se balader dans les rues d'Amsterdam. Chaque quartier a ses spécificités. Tout est atteignable à pied (< 25 minutes) qui permet, contrairement au vélo, de mieux s'immerger.

Il faut dire que le vélo est une institution. La quasi totalité de la population l'utilise pour ses déplacements, même quand il pleut (ce qui n'est pas rare). Et pour cela, il existe de réelles infrastructures. Les pistes cyclables ne sont pas ces espèces de bandes discontinues coincées entre la route et le caniveau, où un vélo a du mal à circuler seul (quand elles sont praticables) et où l'on risque de se faire renverser tous les 100 mètres.

Vélo pour 12 personnesVélos rempli de canard en plastique

Non ! Aux Pays-Bas, les pistes sont de vrais voies séparées à double sens où quatre vélos peuvent circuler de front. Elles ont souvent la priorité sur les voitures. Les infrastructures sont pensées avec cette contrainte et non rajoutée à posteriori. Chose amusante (ou pas) : Il est rare de trouver un mur sans vélo stationné à proximité. Sans parler des immenses garages à vélo ça et là. Il existe également des panneaux "Interdit de stationner son vélo", plutôt amusant.

Un parc à vélos !

Néanmoins, pensez à bien vous couvrir ! S'il ne fait pas forcément froid en soit, le vent peut être glacial. Après quelques heures de marche, on prendra donc une pause dans un des nombreux bars pour déguster une bière ou un café/thé en compagnie d'un waffel (gaufre) ou (plus typique encore), d'un stroopwaffel : gaufrette fourrée au miel. Côté bière, ce sera une Amstel ou une Heineken.

Centraal Station et la basilique van de H. Nicolaas

Froid oblige, la nourriture est riche. Il y a beaucoup de steak house (argentins) et pas mal de "all you can eat" (à volonté), de frites, de burgers... De la street food quoi. Pour le reste, les Français seront agréablement surpris de voir beaucoup de références culinaires, voir de menus complets, en français ! De manière générale, les Néerlandais ont l'air d'apprécier notre culture. Autre spécialité locale : le fromage, Gouda en tête.

Rijskmuseum

Deux jours suffisent pour tout voir, plus une demie journée par vrai musée. Les principaux étant : le musée national (Rijksmuseum), le musée d'art contemporain (Stedelijk museum), le musée de cire (Madame Tussauds), et surtout le musée Van Gogh. Très prisé des touristes, la circulation y devient difficile passé 10h30. On pourra découvrir la vie et l’œuvre de ce peintre de génie qui s'est suicidé à 37 ans. Le musée propose un parallèle intéressant avec le Norvégien Edvard Munch et montre comment Vincent a été influencé par ses contemporains (notamment français) avant de développer son style unique.

TulipmuseumDans le KattenKabinet

Mais Amsterdam abrite plein de mini musées de quelques pièces seulement, qui font parfois office de façades commerciale. Pêle-mêle, il y a : le musée du fromage, de la tulipe, des sacs, du diamant, de l'art félin (KattenKabinet), de la torture, de l'érotisme, du sex, de la prostitution. L'entrée est généralement de 7/8€.

Magasin cheese & more

Ce sera l'occasion de rentrer dans ces demeures aux plafonds immenses, comme les vitres, par lesquelles on peut voler un peu d'intimité aux locaux.

Une maison de nuit

Autre curiosité : le Néerlandais est grand. Ce ne sont pas des escaliers qu'ils ont, mais des échelles ! Ce qui ne les empêche pas de courir dedans !

Marché aux fleurs (de dos)Vondelpark

Parmi les attractions touristiques, on peut compter sur : le marché aux fleurs (qui vend principalement des tulipes), les coffee shop où l'on peut fumer du cannabis légalement (ils vendent des graines au marché aux fleurs), le quartier rouge (la nuit), Centraal station, les maisons d'Anne Franck et de Rembrandt, le zoo, les parcs, les galeries marchandes, les bars, les boîtes (Amsterdam ne dort jamais), l'usine Heinekein et tous les autres musées que je n'ai pas cité.

Un café au bord du canal

De plus, les Amsterdamers sont vraiment très sympa et n'hésitent pas à venir vers vous quand vous semblez perdus. Pour la langue, pas de panique, ils sont quasiment tous bilingues Neerlandais/Anglais. De plus, tout est systématiquement traduit en Anglais.

Tout ceci fait d'Amsterdam une ville très agréable, si ce n'est à vivre, en tout cas à visiter !

Une péniche habitéeUne péniche

Quelques bonnes adresses à Amsterdam :

  • The pantry près de Liedsplein. Un des rares restaurants typique
  • El Vino sur Liedsplein. Un excellent Mexicain. Je recommande fortement le burrito !
  • Le Starbucks sur Rembrandtplein pour un bon café/thé/chocolat chaud

Bordeaux

Place du parlement

Très grosse déception pour la deuxième étape des vacances. Il faut dire que le contraste avec Amsterdam a été trop fort pour réellement apprécier cette ville. Les conditions d'arrivées n'ont en rien aidé : levé à 6h pour se rendre à l'aéroport, 1h30 de voyage inconfortable dans un siège étroit et trop droit (devant la sortie de secours), pas de place pour les jambes (avec un billet à 23€ il ne faut pas s'attendre à mieux...), arrivée à Mérignac, la banlieue Bordelaise, dans un terminal ressemblant plus à des toilettes publiques, quelques averses aléatoires...

Sur les berges

J'avais placé trop d'espoirs (et peut-être de fantasmes) dans cette ville, surtout après avoir été enchanté par Lyon. Bordeaux a 2000 ans, et 2000 ans que les façades n'ont pas été ravalées. Bordeaux est bruyante, polluée, les trottoirs y sont de mauvaise qualité. Bordeaux n'est qu'un amas d'habitations sans charme, Bordeaux n'a pas d'âme.

Porte Cailhau

Voilà, il fallait le dire, et c'est la prime impression qui s'en dégage. Les deux jours suivants ont permis de nuancer un peu ce désastre.

Des façades ravalées, c'est mieux !

Tout d'abord, les habitations : un ou deux étages maximum, et ceci sur l'ensemble de la ville. Il s'agit d'anciennes maisons bourgeoises de négociants avec des façades très travaillées, mais qui sont construites à partir de pierres calcaires, donc qui pompent la pollution (surtout lorsque les Bordelais se chauffaient au charbon). Résultat, on déambule dans des quartiers "sales". Le pire étant le quartier Saint Michel où tout semble à l'abandon.

Basilique Saint Michel Mais que vient-faire ce panier de basket à côté de la Basilique et de son clocher ?

Comme la plupart des grandes villes, les voitures (ou autre beaucoup plus bruyant) font la loi. Résultat : bruit et pollution dans des rues qui font caisse de résonance. Ajouter à cela le fait qu'il faille parler d'agglomération Bordelaise, donc qu'il y a beaucoup de personnes immigrant le matin pour émigrer le soir.

Bordeaux n'a pas d'âme. Très peu de caves à vin, très peu de vente de spécialités. Les cartes des restaurants sont uniformes et orientées brasserie du midi, sans les spécialités locales. Pas d'huîtres (le bassin d'Arcachon est à moins d'une heure de route). On est dans le sud-ouest, en pleine Gascogne, bordel ! Pas de vie de quartier non plus (juste des habitations).

Tour Pay BerlandMonument des Girondins sur la place des Quinconces

Pourtant Bordeaux possède d'immenses richesses. Le quartier des Quinconces, par exemple, est tout simplement splendide. Plusieurs chefs étoilés ont des établissements. La jeunesse Bordelaise est très présente et ingénieuse (voir la réhabilitation des entrepôts "Darwin" sur l'autre rive).

Entrepôts Darwin

Bordeaux possède un système de déplacement (bus et tram) performant et peu onéreux (à condition de rester dans l'enceinte de la ville).

Le tramLe grand hôtel

Le jour où elle arrivera à se débarrasser du carcan des voitures, à rénover et faire vivre ses quartiers, elle sera un petit paradis.

Mais ne soyons pas complètement pessimiste, des travaux sont en cours comme la rénovation du quartier de l'hôtel de ville (forcément le maire y pose ses fesses), la rénovation des berges, l'ouverture d'une (future) quatrième ligne de métro. Il reste encore beaucoup de travail (on part de loin...) et il faudra une vraie volonté politique pour que dans 10 ou 15 ans elle atteigne des critères d'excellence. Pour le moment, Bordeaux est belle la nuit, quand la pénombre fait disparaître tous ses défauts pour ne laisser qu'un flot de lumière.

Les berges rénovéesLe pont Chamband Delmas

En attendant, il ne faut pas trop s'y attarder, mais prendre du temps pour visiter le Bordelais, qui offre (sûrement) plus de richesses.

Bordeaux depuis l'autre rive

Quelques bonnes adresses sur Bordeaux :

  • Le restaurant de l'hôtel quatre étoiles De Sèze derrière la place des Quinconces : cuisine gastronomique pour tarifs très abordables.
  • Le Japonais près de la place de la victoire (rue Sainte Catherine) : prenez-y un bol de ramens !