CérénIT

Le blog tech de Nicolas Steinmetz (Time Series, IoT, Web, Ops, Data)

Web, Ops & Data - Aout 2017

cloud docker microsoft aws cncf lambda serverless kubernetes linux windows elasticsearch kibana index search fullstack rethinkdb flash openweb api sécurité checklist certificat hpkp revocation performance tiers publicité

Cloud

Container & Orchestration

Documentation

  • Read & Write The Doc : les slides d’un talk donnant de bonnes pratiques sur la manière et les pratiques à adopter/éviter en matière de documentation.

Elasticsearch

  • Installing the Elastic Stack on Windows : Dans le cadre de la sortie de Elasticsearch 5.5, le support de l’installateur Windows est officiel. Ce billet montre comment installer Elasticsearch, Kibana et Filebeat sous un environnement Windows.
  • Taking A Look At Kibana’s Time Series Visual Builder : la future version 6 de Kibana va se doter d’un visualisateur orienté données temporelles (time series). L’auteur du billet rappelle que c’était un point faible de Kibana jusqu’à présent (vis à vis de Grafana notamment), que les essais avec Timelion ne répondaient que partiellement à ce besoin mais que là, Elastic semble être sur le point de rattraper son retard. A évaluer même si une plateforme TICK+Grafana (Telegraf, InfluxDB, Chronograf, Kapacitor) demandera moins de ressources qu’une stack Elastic/Kibana avec certes des capacités d’indexation moins forte mais le besoin n’est pas forcément là…
  • Elasticsearch: la grande migration : retour d’expérience des équipes Tech de M6 Web sur la migration de leur cluster Elasticsearch de la version 1.7 vers 5.2.
  • Small, Medium, or Large - Scaling Elasticsearch and Evolving the Elastic Stack to Fit : Elastic publie un billet intéressant donnant différents types de configuration & architectures pour des besoins autour d’ELK allant de simple à très complexe et fournir des pointeurs vers différentes ressources utiles.
  • Starting Down the Path of APM for the Elastic Stack : les prémices de la fonctionnalité APM (Application Performance Monitoring) d’Elastic suite au rachat d’Opbeat. Pour le moment, il s’agit de la pré-sortie des version serveurs et des clients ; pour la nouvelle UI, il va falloir attendre encore un peu mais des dashboards sont déjà accessibles via Kibana.
  • Introducing Index Sorting in Elasticsearch 6.0 : Dans sa version 6.0 à venir, il sera possible de définir des index triés dans Elasticsearch. Cette définition du tri se fera lors de la création de l’index. Si cela doit permettre de sortir des résultats plus rapidement, dans certains cas, cela peut pénaliser sérieusement la performance d’Elasticsearch. A utiliser à bon escient !

Full Stack

  • Développeur full stack ? Oui… mais… : enfin un bon article démystifiant le concept parfois fumeux de “full-stack” : “Quand nous parlons de profil full stack, cela signifie que le développeur est spécialisé dans certains domaines, tout en ayant des connaissances sur d’autres sujets. En général, nous considérons un développeur full stack comme maîtrisant au moins 3-4 sujets. Mais cela ne couvre pas l’ensemble des besoins.”

NoSQL

Open Web

Sécurité

  • API Security Checklist : une check-list pour les aspects sécurité d’une API qui reprend les principaux points: authentification, traitement des entrée/sorties, infrastructure, etc.
  • CSP Cheat Sheet : Une page de présentation rapide et consise des options de configuraiton liée à CSP (Content Security Policy)
  • Revocation is broken : excellent billet sur les problèmes liés à la révocation de certificats et les nouvelles pistes à venir pour mieux traiter ce sujet.
  • I’m giving up on HPKP : l’auteur explique en quoi HPKP (HTTP Public Key Pinning) est compliqué et dangereux à mettre en place ; à la fin, le jeu n’en vaut pas la chandelle et qu’il vaudrait mieux ne pas tenir compte de cette pratique pour donner une bonne note aux configurations de sécurité des sites web. Il indique aussi les alternatives à venir et leurs avantages sur la solution actuelle.

Web Performance

Web, Ops & Data - Semaine 39

docker log logstatsh rsyslog syslog-ng elasticsearch firebase hpkp filebeat fluentd

Docker

  • Lessons learned from using Docker Swarm mode in production : ce retour d’expérience confirme mon ressenti (pas encore mis à l’épreuve des faits) sur Docker et l’intégration de Swarm depuis la version 0.12. A la fois il est très simple de créer et opérer un cluster Docker Swarm mais il reste quelques défauts de jeunesse. A voir comment les prochaines version de docker vont consolider/maturer tout cela.
  • ARM Fixes for Docker Machine 1.8.0 : Si comme moi vous souhaitez utiliser docker-machine depuis un PC 64 bits vers un cluster de machines ARM (Raspberry, etc) utilisant HypriotOS ou Raspbian.

Logs

  • 5 Logstash Alternatives : Le billet compare Logstash avec Filebeat, rsyslog, syslogng, logagent et fluentd. Il donne les forces/faiblesses de chaque solution et les cas d’usage les plus adaptés pour chaque solution. Cela reste très orienté dans un contexte Elasticsearch, on pourrait par ex songer à Telegraf et à la plateforme TICK

Sécurité

  • Is HTTP Public Key Pinning Dead? : dans l’édition précédente, j’ai parlé du Mozilla Observatory qui évalue notamment cette fonctionnalité qui est HPKP. Ce billet montre les limites et les risques de l’implémentation actuelle. Le risque le plus grand étant que le propriétaire du site perde les clés requises au bon fonctionnement d’HPKP et se retrouve à la porte de son site…

Elasticsearch

Base de données temps réel

  • Firebase, le nouveau Parse ? : historiquement une base de données temps réel, Firebase est devenue une plateforme pour développer et déployer des applications mobiles avec bon nombre de services pratiques/utiles (Remote storage, Cross platform, Push, Remote Config, Test Lab, etc). Le billet fait un état des lieux mais insiste en fin de billet sur les limites qui sont la consolidation de données chez Google et les tarifs si vous avez une utilisation intensive. Si c’est surtout le coté base de données temps réel qui vous intéresse, il vaut peut être mieux regarder du côté de RethinkDB et leur service Horizon qui package RethinkDB avec Node.JS pour avoir des API et des services complémentaires (authentification, etc)

Web, Ops & Data - Semaine 37

kafka postgres kubernetes cluster replication influxdb tick sécurité angularjs https hsts cors csp sri hpkp telegraf kapacitor cqrs event sourcing

Containers

  • Security Best Practices for Kubernetes Deployment : les points ne sont pas propres à Kubernetes : segmentation applicative via les namespaces, segmentation réseau, quota de ressources, utilisation d’images approuvées, maintient des images à jour, etc.
  • Docker + Golang : le billet présente des astuces pour compiler un programme Go au travers de containers pour illustrer différents besoins (cross-compilation, etc)
  • 12 fractured apps : une revue des bonnes pratiques à adopter pour gérer les fichiers de configurations, les connections à des bases de données dans un monde orientée micro-services.

AngularJS

  • AngularJS 2.0 : la version 2 du framework Javascript AngularJS de Google est (enfin) sorti et se dote d’un nouveau site angular.io. Etrangement, j’ai l’impression que c’est un non événement ? Cette version mainte fois discutée, tant attendue et au final ? Ou peut être que React est passé par là et à occuper le trou laissé par cette réécriture d’Angular ?

Kafka

TICK (Telegraf, InfluxDB, Chronograf et Kapacitor)

  • La plateforme TICK atteint le palier de la version 1.0 ; InfluxDB, Telegraf et Kapacitor. Pas de grosses nouveautés dans ces releases, juste une stabilisation et le tampon 1.0 ; Chronograf est aussi estampillé 1.0 même s’il s’est fait discret depuis la version 0.13. A voir s’il rattrape son retard sur Grafana…

Sécurité

Postgres