Je ne peux résister à mentionner la sortie de l’épisode 100 du BigDataHebdo, podcast où j’ai le plaisir de contribuer. Pour ce numéro spécial (épisode 100 et 6 ans du podcast), nous avons fait appel aux membres de la communauté pour partager avec nous leur base de données favorite, la technologie qui les a le plus impressionée durant ces 6 dernières années et celle qu’ils voient comme majeure pour les 6 prochaines années. Allez l’écouter ! Cloud Announcing the Terraform Visual Studio Code Extension v2.0.0 : Hashicorp prend en main le support de l’extension Terraform pour VSCode, en sort une nouvelle version et apporte différentes améliorations comme un meilleur support de Terraform 0.12 et l’utilisation du Terraform Language Server. Container et orchestration Introducing the Telegraf Operator: Kubernetes Sidecars Made Simple : Présentation de l’operator kubernetes pour telegraf qui permet de déployer un agent telegraf sous la forme d’un sidecar dans un pod et de récupérer les métriques associés. Kubernetes 1.18.x officiellement disponible chez OVHCloud Longhorn Simplifies Distributed Block Storage in Kubernetes : Rancher vient de sortir la version 1.0 de Longhorn. C’est une solution de stockage pour Kubernetes que l’on peut utiliser avec ou sans Rancher. Il faut la voir comme une solution de stockage légère et simple à mettre en oeuvre. Un système de réplication permet d’éviter les pertes de données et d’amélioer la durabilité des données. Des fonctionnalités de backup/restore existent également. Elle semble plus simple à mettre en oeuvre que Rook/Ceph par ex mais sera moins complète que ce dernier. Understanding Kubernetes & Understanding Istio : Aurélie Vache réalise des sketchnotes pour vulgariser Kubernetes et Istio. Un joli travail de vulgarisation. IoT 8GB Raspberry Pi 4 on sale now at $75 : Le Raspberry Pi 4 arrive en version 8Go de RAM, Raspberry PI OS arrive en 64 bits, le support du boot sur usb arrive aussi (adieu la SDCard) et plein d’autres choses. Le tout au prix de 75$. Ops Sismology: Iguana Solutions’ Monitoring System : retour d’expérience sur une plateforme de monitoring initiée sur Prometheus et qui évolue vers VictoriaMetrics en prenant les aspects de stockage à long terme, le multi-tenant et la haute disponibilité de la plateforme. Time Series Release Announcement: InfluxDB 2.0.0 Beta 12 : une beta de plus avec l’ajout notamment d’influx stacks pour faire du CRUD sur des groupes de ressources InfluxDB (dashboard, labels, tasks, etc). Warp 10, The Most Advanced Time Series Platform, now provides multi-architecture docker images. : vous pouvez donc déployer des images docker warp10 sur des plateformes amd64/armv7/arm64. May 2020: Warp 10 release 2.6.0 : Pleins d’améliorations et de correctifs et notamment la capacité de dialoguer directement avec Warp10 via le protocole Protobuf ou via Arrow. Time series forecasts in WarpScript : Présentation de l’extension Warpscript permettant d’appliquer des algorithmes de prévisions (ARIMA, SARIMA, HOLTWINTERS, etc) sur des séries temporelles. Précision: il s’agit d’une extension propriétaire mais vous pouvez l’évaluer sur la sandbox Warp10 mise à disposition par SenX.
Code et Outillage 18 GitLab features are moving to open source : Gitlab va rendre disponible dans sa version Open Source 18 fonctionnalités de sa version payante. C’est un peu la lutte avec Github et ses Github Actions ou ses dernières évolutions tarifaires. Container & orchestration Announcing the Compose Specification : Docker Inc vient de lancer une spécificiation officielle autour de Compose (celle derrière les docker-compose.yml) pour la rendre plus “cloud native” et plus générique avec une extension au provider cloud d’une part et d’autre part à des solutions comme kubernetes ou Amazone ECS par ex. Announcing Traefik 2.2, ainsi que la version Entreprise TraefikEE 2.1 basée dessus : on notera le retour du support des annotations pour gérer les Ingress, le support de l’UDP (en plus de HTTP et TCP), le support d’Elastic APM, le support des stores KV (Consul, Etcd, Redis, etc) et le Dark Mode. Scaleway Kubernetes Kapsule : l’offre managée kubernetes de Scaleway est disponible. Dommage que les CPU des profils de machine DEV* soient surprovisionnés et qu’il faille envisager des profils GP* pour avoir des performances correctes. L’offre est du coup moins compétitive en termes de prix pour des petits clusters. Kubernetes 1.18 : Fit & Finish : une version de consolidation How to detect outdated Kubernetes APIs : présentation de Deprek8 et de Conftest pour vous permettre d’évaluer les ressources kubernetes pour lesquelles vous n’êtes pas à jour au niveau des API. Helm 3.2.0 avec un correctif de sécurité sur les versions 3.0.x et 3.1.x et d’autres améliorations (comme le retour de certaines fonctionnalités non encore migrées depuis la 2.x) Cortex v1.0 released: The highly scalable, fast Prometheus implementation is generally available for production use : la solution de monitoring distribuée et avec un stockage de long terme basée sur Prometheus arrive en version 1.0. C’est l’occasion de se repencher sur son architecture et son fonctionnement. Build your very own self-hosting platform with Raspberry Pi and Kubernetes : une série d’articles pour déployer un cluster kubernetes sur vos raspberrypi avec la distributions k3s et y déployer différentes applications. Rook v1.3: Storage Operator Improvements : si vous n’êtes pas dans un environnement cloud, il y a de fortes chances pour que vous utilisiez Rook. La version 1.3 vient de sortir et apporte son lot d’améliorations. Sidecar container lifecycle changes in Kubernetes 1.18 : dans la version 1.19, le cycle de vie des sidecars dans kubernetes sera améliorée. Ainsi, ils démarreront avant le conteneur principal et s’arrêteront après. Le billet revient sur les problèmes existant et comment ce nouveau cycle de vie va améliorer la situation. (Big) Data Confluent Raises $250M and Kicks Off Project Metamorphosis : Confluent, la soéciété éditrice de la Confluent Platform et d’Apache Kafka, vient de lever 250 millions de dollars et annonce le projet Metamorphosis et prévoit des annonces tous les mois sur Apache Kafka, Confluent Platform et ce projet à compter du mois de Mai. On en reparlera très certainement sur BigData Hebdo. Cassandra: The Definitive Guide, 3rd Edition : nouvelle édition de l’ouvrage de référence sur Cassandra, mis à jour notamment pour Cassandra 4.0 (version à venir) Announcing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pulsar : On en parle dans le prochain épisode de BigData Hebdo, mais Pulsar est une plateforme vraiment intéressante (Pulsar 101 en français ou en anglais) et les équipes d’OVHCloud viennent de publier un connecteur qui permet d’utliser l’API Kafka mais que les messages soient stockés dans Pulsar. Il existe aussi une vidéo sur Kafka on Pulsar et un article sur le blog d’OVHCloud. Time Series Release Announcement: Telegraf 1.14.0 : 9 nouveaux inputs, 3 nouveaux processors et 1 nouvel output warp10 sont au programme de cette version. Les versions 1.14.1 et 1.14.2 sont sorties également avec quelques corrections. Release Announcement: InfluxDB 1.8.0 with Long-Awaited Features : la branche 1.x d’InfluxDB se voit donc dotée d’une version récente de flux qui se veut “production ready” et les endpoints d’InfluxDB 2.x sont aussi disponibles. Ce qui permet d’utiliser les nouveaux clients officiels InfluxDB prévus pour la 2.x d’une part et de faire des requêtes en Flux d’autre part. Release Announcement: InfluxDB 2.0.0 Beta 9 : mise à jour de Flux, autocomplétion flux dans l’éditeur de requêtes et amélioration de la CLI. InfluxDB Templates: Easily Share Your Monitoring Expertise : le billet a pour intérêt de présenter des bonnes pratiques sur la réalisation de templates InfluxDB. Pour rappel, les templates InfluxDB sont des “ressources” que l’on peut déclarer, exporter et importer dans une instance InfluxDB 2.x. Cela concerne des variables, labels, tasks, dashboards, alertes, etc. April 2020: Warp 10 release 2.5.0 : La version 2.5 de Warp10 apporte notamment un Accelerator c’est à dire un cache en mémoire pour les versions standalones. D’autres corrections et améliorations font également partie de cette release. WarpScript ❤️ Kafka Streams : si vous utiliser Kafka Streams et que vous voulez utiliser Warpscript pour consommer, processer et envoyer des données vers Kafka, c’est possible. Forecasting : Microsoft publie des exemples et des bonnes pratiques autour de la prévision à base de séries temporelles. Il y a des exemples en Python / R et quelques exemples avec Azure-ML. TimescaleDB 1.7: fast continuous aggregates with real-time views, PostgreSQL 12 support, and more Community features : Nouvelle version de TimeScaleDB apportant la compatibilité avec Postgresql 12.x, des aggrégats en temps réel et des fonctionnalités de gestion de données (réordonnancement et rétention) de la version Entreprise sont maintenant disponibles dans la version Community. Web jQuery 3.5.0 Released! : une faille XSS a été identifiée sur jQuery.htmlFilter pour toutes les versions inférieures à 3.5.0 ; il est vivement encouragé de mettre à jour vos sites. Pour le reste, je vous renvoie à la lecture de l’article.
IaC Ansible Molecule 3.0 : l’outil de test des rôles Ansible est passé en version 3.0. Pas mal de changement avec l’externalisation des providers d’infrastructure sous la forme de module python et d’autres rationalisation. Une check list de migration est disponible Langages What Tens of Millions of VMs Reveal about the State of Java : NewRelic publie une synthèse des versions et configuration de Java déployées dans la nature. ~85% tourne encore sur Java 8 et 11% sur Java 11 et le tout principalement avec les versions fournies par Oracle. On se moquait des communautés PHP (pour PHP 5 à PHP 7) ou Python (2 vers 3) mais visiblement chaque langage d’un certain age rencontre les mêmes soucis. Time Series RedisTimeSeries Version 1.2 Is Here! : ce module qui apporte des fonctionnalités de séries temporelles à Redis (sans pour autant en faire une base de données orientée séries temporelles) passe en 1.2. On y trouve surtout des améliorations au niveau de la compression des données, des améliorations de performance et une rationnalisation de l’API. SenX publie un guide indiquant les propriétés d’une base de donnée timeseries et comment Warp10 se positionne sur les différents axes. Un joli travaille pédagogique. Warp10 a dépassé les 1000 fonctions InfluxDB 2.0 - beta 6 : améliorations de l’ensemble et l’apparition des premières fonctions géospatiales dans Flux. Le site du Paris Time Series Meetup est en ligne ; à défaut de meetup, vous pourrez y retrouver les vidéos et supports des précédentes éditions.
Container et orchestration Deprecations AKA KubePug - Pre UpGrade (Checker) : Pas encore testé mais un outil qui validerait les objets kubernettes déployés dans un cluster versus une version d’API donnée. Vous pourriez ainsi identifier et anticiper les dépréciations et évolutions d’API. Mirantis will continue to support and develop Docker Swarm : Mirantis, qui a racheté il y a peu Docker Entreprise et aussi l’orchestrateur de conteneurs Swarm, vient d’annonce qu’ils continuaient à développer Swarm sans limite de temps. Mirantis a récemment ajouter la notion de Swarm Jobs et travaille sur la gestion des volumes via les plugins CSI (Container Storage Interface) Sécurité It’s the Boot for TLS 1.0 and TLS 1.1 : Mozilla, Microsoft, Apple et Google se sont mis d’accord pour ne plus supporter les versions 1.0 et 1.1 de TLS pour des raisons évidentes de sécurité. Reste que cela risque de coincer un peu de part les configurations parfois un peu hasardeuses des serveurs et de l’irrégularité de leurs maintenances ou de la vieillesse de certains packages dans certaines distributions. Time Series Monitoring the Linky electricity meter : un exemple d’ingestion et de visualisation des données du compteur Linky avec InfluxDB et Grafana. Mais c’est aussi faisable avec warp10 Les vidéos du Meetup 4 du Paris Time Series Meetup sont en ligne : David McKay, developer advocate InfluxData nous a présenté InfluxDB 2.0 & Flux ainsi que les bonnes pratiques avec Telegraf. Vous pouvez retrouver des exemples sur le dépot git influxdb-examples ainsi que le projet bring your own telegraf. Les slides sont visibles sur son compte speakerdeck. [Interview] How AIM45 uses Warp 10 to analyze ocean races data? : Interview d’Olivier Douillard d’AIM45 qui utilise la solution Warp10 pour collecter les données des bateaux de course au large en vue d’améliorer leurs performances de navigation mais aussi avoir le suivi de nombreux indicateurs matériels, etc. C’est aussi très bien montré sur cette vidéo “Big Data aboard the Maxi Edmond de Rothschild” avec ses 500 points de mesure qui donnent 10 millions de points par heure et quelques gigas de données après une course à analyser.
Meilleurs voeux à tous pour cette nouvelle année ! Cloud OVHcloud Object Storage clusters support S3 API : pour ceux qui ne voulaient pas aller chez OVH car leur système de stockage objet est basé sur Openstack/Swift et ne voulaient pas modifier leurs appels d’API S3, une bonne nouvelle : le stockage objet d’OVH Cloud supporte l’API S3. Container & Orchestration Managing the TICK Stack with Docker App : cet article aurait pu être dans la section Time Series mais le focus étant sur Docker et Docker App, il sera dans la section Container. L’article montre comment déployer la stack TICK (Telegraf, InfluxDB, Chronograf et Kapacitor) tout d’abord via un fichier docker-compose.yml et ensuite il montre les apports de Docker App, qui permet d’avoir un niveau de personnalisation supplémentaire. Ainsi, on peut avoir un seul fichier docker-compose.yml de référence et auquel on rajoute un fichier avec des propriétés par environnement ou par client ou par instance par ex. Une combinaison intéressante pour améliorer l’industrialisation de vos containers. Kubernetes 1.17 disponible sur l’offre kubernetes managé d’OVHCloud DevOps/SRE The 3 Myths of Observability : l’observabilité ne va pas directement baisser votre nombre d’incidents, l’observabilité n’est pas qu’une suite d’outils et elle n’est pas gratuite. Outillage delta : pour améliorer le rendu de vos diff et certaines commandes git (diff, show, log, stash, reflog). L’outil est réalisé en rust. Cela donne un rendu à la github/gitlab dans votre console. Sympa ! Raspberry Pi faasd - lightweight Serverless for your Raspberry Pi : si vous jugez k3s encore trop gros pour vos raspberry pi pour faire tourner OpenFaaS ou que vous ne voulez pas déployer du kubernetes, vous pourriez trouver la solution du coté de faasd. Une implémentation du projet basée sur containerd (le runtime utilisée par Docker) HypriotOS v1.12.0 : la distribution optimisée pour Raspberry Pi et fournissant Docker arrive en version 1.12. Elle permet d’utiliser Docker sur tous les modèles de Raspberry (0, 1, 2, 3, 4) avec les dernières versions de docker, docker-compose et docker-machine. SQL Améliorez votre SQL : utilisez des index filtrés : Postgresql permet de définir des index filtrés : plutôt que de créer un index sur toutes les données d’une table, vous pouvez définir un index qui répond à un filtre et ne faire un index que sur ce sous-ensemble de données. Time Series Grafana v6.6 Released : nouvelle version de Grafana avec comme d’habitude plein d’améliorations à tous les étages (data source, panels, alerting, explore, etc) Release Announcement: Flux VSCode Support : InfluxData a publié une extension VSCode pour le langage flux. InfluxDB 2.0 Open Source Beta Released : InfluxData passe la version OSS d’iInfluxDB 2.0 en béta après une année de versions alpha. On y trouve notamment une approche Configuration As Code avec la possibilité de définir des Tasks, Dashboards, ainsi que de la configuration via des Manifest en YAML et un système de packages. Flux, le nouveau langage de requêtage continue à s’améliorer et enfin le transpiler InfluxQL vers Flux fait son entrée mais demande à s’améliorer au fil du temps. La beta 2 est sortie aussi. telegaf warp10 output : la prochaine version de Telegraf supportera nativement Warp10. Erlenmeyer: Time Series query translator : OVHCloud vient d’opensourcer le code de leur proxy en go qui leur permet de parser des requêtes de différentes bases de données time series (OpenTSDB, PromQL, Prometheus Remote Read, InfluxQL et Graphite) en Warpscript pour requêter les données stockées dans Warp10. Pour rappel, la solution OVHMetrics est basée sur Warp10. Le traitement et l’utilisation de la data dans l’industry 4.0 : SenX, la société éditrice de Warp10, a réalisé une vidéo intéressante sur le traitement et l’utilisation de la data dans l’industrie 4.0. On y voit notamment les 4 niveaux de maturité quant à la donnée et le rôle d’une base de données temporelles dans ce contexte. Un billet de blog (en anglais) est également disponible.
Rendez-vous le 21 janvier prochain à la troisième édition du Paris Time Series Meetup consacré à TSL (billet introductif à TSL : TSL: a developer-friendly Time Series query language for all our metrics) et le module RedisTimeSeries qui apporte des fonctionnalités et des structures Time Seriies à Redis. Le meetup était prévu initialement le mardi 17 décembre mais a été reporté du fait des grèves. Container et orchestration DockerSlim : le projet vise à réduire la taille de vos images et à améliorer leur sécurité en procédant à différentes optimisations. Cela peut être intéressant dans une stratégie d’améliorations de vos images docker mais à tester néanmoins. Les exemples données partent d’Ubuntu 14.04 dont l’image fait 60 / 65 Mo alors que l’image Ubuntu 16.04 fait moitié moins et Alpine fait 30 fois moins. Donc certains gains semblent faciles à obtenir, à creuser plus en détail. Kubernetes 1.17: Stability : après une version 1.16 marquée notamment par la dépréciation de certaines APIs, cette version se veut plus une consolidation autour des “Cloud Provider Labels” qui passent en GA, le snapshot de volumes qui passe en beta, ainsi que la couche de stockage CSI avec la poursuite de la migration des plugins “in-tree” vs “out-of-tree”. La fin de cette migration est prévue pour les versions 1.19 / 1.20 et le retrait complet des plugins “in-tree” pour les versions 1.21 / 1.22. A visual guide on troubleshooting Kubernetes deployments : un guide du troublehooting des déploiements sous kubernetes avec un joli diagramme des cas possibles et les explications associées en repartant d’un exemple simple. How to migrate from Helm v2 to Helm v3 : les opérations à mener pour migrer de Helm V2 à Helm V3. Traefik 2.1 : le provider Consul Catalog fait son retour (il était absent en 2.0.x) et diverses améliorations sur la CRD Kubernetes ont été apportées pour mieux gérer le mirroring du traffic, les déploiements canary et la gestion des sessions. La migration ne consistant pas seulement à changer le numéro de version et suite à une remarque de ma part, une note a été ajoutée pour la migration 2.0.x vers 2.1.x Dataviz Pro Tips: Dashboard Navigation Using Links : améliorer vos dashboards Grafana avec des liens à différents niveaux dans l’interface pour pointer vers des ressources utiles. NoSQL Cassandra Reaper 2.0 was released : la solution de réparation de vos clusters Cassandra passe en 2.0 ; elle apporte un déploiement en mode sidecar (reaper est lancé dans la même jvm que Cassandra), le support d’Apache Cassandra 4.0 (pas encore officiellement disponible), de nouveaux thèmes, une amélioration du support de Postgresql comme backend de déploiement et pleins d’autres choses. Time Series Release Announcement: InfluxDB 2.0.0 Alpha 21 : Cette version alpha apporte notamment le début de la transpilation des requêtes InfluxQL en Flux. C’est peut être un des plus gros enjeux pour la migration entre la version 1.x et 2.x d’InfluxDB et la gestion de l’écosystème associé. Warp 10™ release 2.3.0 : la plateforme Warp10 continue son chemin avec une fonctionnalité intéressante permettant de mieux définir les points que l’on veut récupérer pour une requête donnée (nombre de points, échantillonage, points du début et de fin, etc) Motion Split : Présentation d’une autre fonctionnalité intéressante de Warp10 2.3.0 si vous suivez des objets qui se déplacent et que vous voulez définir des groupes de points en fonction d’un délai, d’une distance, d’arrêts. New: Helm Charts for deploying TimescaleDB on Kubernetes : pour ceux qui utilisent TimescaleDB, des charts helm sont à votre disposition pour déployer une instance, avec gestion de la réplication des données. Time series features extraction using Fourier and Wavelet transforms on ECG data : Application de la théorie des signaux sur des séries temporelles dans le cadre d’analyse d’électrocardiogramme. Cela complète les articles du mois précédent. Je n’ai plus qu’à vous souhaiter des bonnes fêtes de fin d’année ; nous nous retrouvons l’année prochaine !
Ce mercredi, j’ai le plaisir d’organiser la première édition du Paris Time Series Meetup - il reste des places, vous pouvez encore vous inscrire et nous rejoindre ! Ce meetup est organisé conjointement avec InfluxData suite à ma nomination en tant qu’InfluxAce lors d’InfluxDays London 2019. J’ai alors cherché à organiser le meetup en mettant en avant la communauté et les acteurs français autour de la série temporelle, de ne pas me limiter à des présentations produits mais de les enrichir avec des retours clients et aussi à proposer des usages plus avancés que de stocker ses données et de faire deux à trois graphiques avec ces métriques. Je pense que cette première édition respecte ces critères.
Souveraineté numérique Big Data Hebdo - Episode 78 : Les jeunes prennent les commandes : Jérome et moi revenons largement sur ce sujet dans le cadre de cet épisode de Big Data Hebdo entre autres choses. Rapport Gauvain : le rapport stipule clairement que le Cloud Act obligera tout fournisseur de cloud américain de fournir les données de ses clients quelque soit la localisation de ses données sur simple présentation d’une requête judiciaire. Quand on voit que les américains utilisent le droit comme arme de guerre économique, on peut se poser la question de la migration de certaines entreprises sur les plateformes de cloud américain. Audition de Michel Paulain (PDG d’OVH) par la commission d’enquête Souveraineté numérique : la commission d’enquête sur la souveraineté numérique auditionne différentes personnes quant à la souveraineté numérique. Il est intéressant de voir la maitrise (ou pas) du sujet par les membres de cette commission et leur questionnement. Le numérique à l’Assemblée nationale : où en est-on ? : pour compléter la vision sur nos parlementaires et le numérique, cette étude montre qu’il y a 5% de l’Assemblée Nationale (soit 30 personnes) qui est experte du numérique. Ce taux est en progression. On monte jusqu’à 28% en prenant les niveaux amateurs à experts (163 personnes). La route est encore longue… Private Cloud en cours de qualification SecNumCloud : jusqu’à présent, seuls Outscale et Oodrive (pour leur offre collaborative) étaient certifiés SecNumCloud par l’ANSSI, c’est au tour d’OVH de rentrer dans cette démarche de qualification pour son offre Private Cloud dans un premier temps. SQL Fastest Way to Load Data Into PostgreSQL Using Python : le billet revoit différentes façons de faire ingérer des données dans Postgres via du code python. Cela va de 2 minutes à une demi seconde. De quoi piocher des idées pour la mise en place de votre prochaine ingestion de données. Quel avenir pour Postgresql? : Le mérite de l’article n’est pas tant de savoir si Postgres est une alternative crédible (spoiler: oui) mais de remettre en perspective l’histoire de Postgres jusqu’à nos jours. Retour d’utilisation de Mongodb et pourquoi nous migrons vers Postgresql : Retour d’expérience de l’équipe de développement de Malt.io sur leur utilisation de MongoDB, les limites et leur récente migration à Postgres pour un certain nombre de cas d’usages. Pour autant, ils n’abandonnent pas MongoDB. Time Series Warp 10™ version 2.1 : Sortie de la version 2.1 de Warp10 avec son lot de nouveautés. Warp 10™ Raspberry Pi 4 bench for industrial IoT : Warp10 2.1 parvient à ingérer jusqu’à 300.000 points par secondes sur un Raspberry Pi 4 (contre une valeur recommandée il y a 2 ans d’une à quelques dizaines de milliers de points par secondes). Preuve s’il en est de l’amélioration tant du Raspberry Pi que de la performance de Warp10.
On orchestre, on conçoit — et on code aussi. Parlons de votre plateforme, vos données ou votre projet IoT.
Contactez-nous →