.virt

Printemps dernier, j’avais exposé la configuration système pour résoudre ses conteneurs sous le domaine .docker. C’est pratique, et on voudrait bien ça pour ses conteneurs LXC et ses VM ! L’astuce à la base de la configuration, c’est que dnsmasq sait résoudre les machines auxquelles il distribue une IP. C’est un vrai couteau suisse ! Il suffit de donner un domaine à dnsmasq et de configurer le hostname des conteneurs ou des VM. Cet article détaille les étapes pour mettre ça en place. ...

9 octobre 2018 · 3 min · Étienne BERSAC

.docker

Isoler l’environnement de développement apporte deux avantages critiques : jeter et recréer l’environnement sans toucher à sa station de developpement ; lancer plusieurs environnement de developpement / test en parallèle. Docker Compose est ma technologie d’isolation d’env de dév préférée. J’entends l’arrivée de Kubernetes. Pour 2018, je reste sur Docker Compose en natif sur ma station. Docker Compose est bien plus efficace que Vagrant. La configuration YAML est simple, bien plus que pour Kubernetes. Les performances sont meilleures. L’immutabilité rends les environnements réellement jetables. Monter le code édité directement dans le conteneur, c’est parfait. Malgré les efforts d’HashiCorp, connaître Vagrant ne sert pas beaucoup en production. Tandis que connaître les contraintes de Docker est un vrai plus. ...

27 avril 2018 · 5 min · Étienne BERSAC

Configurer la résolution DNS dans Docker

Dans l’article précédent sur l’aiguillage DNS nous avons demandé la résolution DNS au serveur dnsmasq écoutant sur 127.0.0.1. Problème, les conteneurs Docker ont basculé sur le serveur DNS 8.8.8.8 au lieu d’utiliser la résolution DNS du réseau interne. Les conteneurs envoient leurs requêtes DNS à Google. Pourquoi ?? Lorsque le moteur Docker cherche un serveur DNS pour ses conteneurs, impossible d’utiliser l’adresse 127.0.0.1 puisque les conteneurs sont dans un réseau isolé. L’adresse 127.0.0.1 est ignorée. Le moteur Docker ne trouvant pas de serveur résolvable, il bascule sur Google DNS. ...

22 mars 2018 · 3 min · Étienne BERSAC

Performances du FTS Postgres

Dans cet article, je vous propose une première astuce pour avoir de meilleures performances FTS avec Postgres. Contrairement à ElasticSearch, Postgres n’optimise pas automatiquement votre schéma. La philosophie est que l’optimisation dépend de l’utilisation de la base : fréquence d’écriture, prédicats dans les requêtes, jointures, etc. À vous d’anticiper l’utilisation de votre base pour concevoir le schéma le plus performant. Comme vu dans mon introduction à FTS dans Postgres, il faut lemmatiser un texte dans un tsvector pour la recherche plein texte. Lemmatiser est coûteux en cycles CPU, on doit pouvoir optimiser ça. ...

15 février 2018 · 3 min · Étienne BERSAC

Aiguillage DNS

Pour notre travail connecté, une bonne configuration réseau est importante. La mobilité croissante nous rends plus sensibles aux bricolages qui ne marchent qu’une fois. Un point particulier est la résolution des noms de domaines. C’est courant d’avoir un domaine privé pour nommer les services internes d’une entreprise, pourr ceux qui ne sont pas dans le cloud. On se contente souvent d’utiliser le serveur DNS fourni par l’entreprise pour toutes les requêtes DNS : web publique et services internes. Ça devient lourd quand on est en VPN et qu’on dépends de la qualité du VPN pour résoudre un simple gitlab.com. Et comment gérer d’autres domaines comme .docker ou .lxc ? ...

3 février 2018 · 4 min · Étienne BERSAC

Recherche plein texte avec Postgres

Découvrir le FTS avec Postgres Le champ de recherche unique, voilà le graal du formulaire de recherche d’une application. Pour l’utilisateur, c’est avoir la recherche accessible à toutes les pages, s’épargner le temps de comprendre dans quel champs rentrer un terme recherché, c’est passer de la recherche d’un simple mot à la requête complexe sans changer d’interface. Pour le développeur, c’est la simplification de l’évolution de l’interface à mesure que les données de l’application s’enrichissent et tout un tas de fonctionnalités avancées : surlignage des résultats, calcul de pertinence, performances, etc. ...

22 novembre 2017 · 4 min · Étienne BERSAC

Inauguration

Qui n’a pas senti l’envie d’ouvrir un blog pour finalement se dire : il y a tant sur internet, je n’ai rien à dire de plus ? C’est mon cas, et pourtant voici mon blog ! En rejoignant Dalibo en mars 2017, j’ai rejoins une entreprise dont l’ADN est d’être membre actif de la communauté, et même un entraîneur de communauté. J’en retiens que tout le monde peut apporter quelque chose, pas seulement du code. On peut être des milliers à programmer, ça ne suffira pas. ...

20 novembre 2017 · 2 min · Étienne BERSAC