CérénIT - terraformLe blog tech de Nicolas Steinmetz (Time Series, IoT, Web, Ops, Data)Zola2021-08-25T09:30:00+02:00https://cerenit.fr/tags/terraform/atom.xmlWeb, Ops, Data et Time Series - Aout 20212021-08-25T09:30:00+02:002021-08-25T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-data-timeseries-aout-2021/<h3 id="conteneurs-et-orchestration">Conteneurs et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.docker.com/blog/engineering-update-buildkit-0-9-and-docker-buildx-0-6-releases/">Engineering Update: BuildKit 0.9 and Docker Buildx 0.6 Releases</a> : diverses améliorations au niveau du format Dockerfile, de buildtkit et de docker-buildx. Le changement le plus visible et apprécié sera surement le support de la syntaxe <a rel="noopener" target="_blank" href="https://github.com/moby/buildkit/blob/dockerfile/1.3.0-labs/frontend/dockerfile/docs/syntax.md#here-documents">"Here-Documents"</a></li>
<li><a rel="noopener" target="_blank" href="https://blog.rook.io/rook-v1-7-storage-enhancements-6ae647aa5d97">Rook v1.7 Storage Enhancements</a> : Possibilité d'installer un cluster Ceph via un chart Helm (plutôt que via les manifests), des options d'amélioration de la résilience d'un cluster (file mirroring, resource protection from delettion, "stretch cluster" passe en stable) et d'autres améliorations diverses (mise à jour des CRD, etc). A noter que le driver flex va disparaitre en 1.8 au profit du driver CSI.</li>
<li><a rel="noopener" target="_blank" href="https://traefik.io/blog/announcing-traefik-proxy-2-5/">Announcing Traefik Proxy 2.5</a> : Support de Kubernetes 1.22 (et mise à jour des CRD associées, ainsi que des API dépréciées), support de Consul Connect (le service mesh fourni par consul), gestion des plugins locaux et possibilité de créer ses propres providers (dans la même veine que Docker, Kubernetes, etc), support expérimental d'HTTP/3 et enfin ajout des middleware au niveau TCP (et pas uniquement HTTP)</li>
<li><a rel="noopener" target="_blank" href="https://traefik.io/blog/integrating-consul-connect-service-mesh-with-traefik-2-5/">Integrating Consul Connect Service Mesh with Traefik 2.5</a> : ex d'intégration Traefik 2.5 avec Consul Connect.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/beta-support-for-crds-in-the-terraform-provider-for-kubernetes">Beta Support for CRDs in the Terraform Provider for Kubernetes</a> : la resource <code>kubernetes_manifest</code> permet de définir ses propres manifests et donc permet d'utiliser des CRD non disponibles dans le provider officiel. Plus pratique que de générer les manifests via des templates et de faire du <code>kubectl apply</code> par dessus.</li>
</ul>
<h3 id="go">Go</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://dev.to/aurelievache/series/13751">Learning Go by examples</a> : Les parties 4 à 7 sont arrivées avec du CLI, du Bot, du jeu, des app Desktop/GUI, etc.</li>
</ul>
<h3 id="monitoring-observabilite">Monitoring & Observabilité</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.bloomberg.com/news/articles/2021-08-24/grafana-labs-raises-220-million-round-at-3-billion-valuation">Grafana Labs Raises $220 Million Round at $3 Billion Valuation</a> : Grafana Labs continue sur sa lancée avec une 3ème levée de fonds de 220 M$ quasiment un an jour pour jour après leur série B. Soit un total de 295 M$ et une valorisation de 3 Mds $. Ils avaient annoncé il y a quelques années vouloir batir une solution à 360° de l'observabilité, c'est en train de se réaliser. Avec l'intelligence de pouvoir utiliser tout ou partie de leurs produits en fonction de nos besoins.</li>
<li><a rel="noopener" target="_blank" href="https://vector.dev/releases/0.16.0/">Vector v0.16.0 release notes</a> : Ajout d'une source nats, support des proxys HTTP, amélioration du rate limiting des sinks faisant des appels HTTP, chart helm en beta et d'autres améliorations.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-influxdb-oss-enterprise-1-8-9/">Release Announcement: InfluxDB OSS & Enterprise 1.8.9</a> : version de maintenance de la branche 1.8 OSS & Entreprise - les versions les plus récentes en 0SS étant 2.0.8 et en Entreprise 1.9.3</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-influxdb-oss-2-0-8/">Release Announcement: InfluxDB OSS 2.0.8</a> : passage à Go 1.16, mise à jour de Flux, d'Influx-UI et de flux-lsb-browser. Il est également possible de ne plus lancer l'UI Web. Cette version est la dernière qui aura le client influx fourni avec le binaire du serveur. A compter la version 2.1.0, il faudra télécharger le client indépendamment. Il faudra le récupérer depuis le projet github <a rel="noopener" target="_blank" href="https://github.com/influxdata/influx-cli/releases">influx-cli</a> ou <a rel="noopener" target="_blank" href="https://portal.influxdata.com/downloads/">la page de téléchargement InfluxData</a></li>
<li><a rel="noopener" target="_blank" href="https://blog.timescale.com/blog/move-fast-but-dont-break-things-introducing-the-experimental-schema-with-new-experimental-features-in-timescaledb-2-4/">Move fast, but don’t break things: Introducing the experimental schema (with new experimental features) in TimescaleDB 2.4</a>, <a rel="noopener" target="_blank" href="https://github.com/timescale/timescaledb/releases/tag/2.4.0">TimescaleDB 2.4.0</a> et <a rel="noopener" target="_blank" href="https://github.com/timescale/timescaledb/releases/tag/2.4.1">TimescaleDB 2.4.1</a> : Comme annoncé précédemment, Postgresql 11 n'est plus supporté pour pouvoir apporter certaines nouvelles fonctionnalités. Cette version apporte le "schéma experimental" qui permet de tester des fonctionnalités en avance de phase, sans impacter ceux qui n'en ont pas besoin. Cela apporte aussi des fonctions comme <code>time_bucket_ng</code> qui permet de faire de nouvelles aggrégations et d'avoir prochainement un support des timezones. La seconde fonctionnalité expérimentale porte sur la capacité à bouger de la donnée entre plusieurs nodes en mode cluster.</li>
</ul>
Web, Ops, Data et Time Series - Juin 20212021-06-30T09:30:00+02:002021-06-30T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-data-timeseries-juin-2021/<h3 id="automatisation">Automatisation</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/announcing-hashicorp-terraform-1-0-general-availability">Announcing HashiCorp Terraform 1.0 General Availability</a> : Terraform 1.0 est (enfin) GA.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/announcing-consul-1-10">Announcing Consul 1.10 GA</a> : des améliorations surtout sur la partie "Service Mesh" aka Consul Connect, ainsi que coté UI.</li>
</ul>
<h3 id="conteneurs-et-orchestration">Conteneurs et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://medium.com/k8slens/lens-5-released-f7e58e8842cf">Lens 5 Released</a> - <a rel="noopener" target="_blank" href="https://github.com/lensapp/lens/releases/tag/v5.0.0">Release Notes</a> : le "Kubernetes IDE" passe en version 5 avec diverses améliorations dont notamment du collaboratif avec du partage de contexte kubernetes.</li>
<li><a rel="noopener" target="_blank" href="https://tferdinand.net/traefik-2-5-quoi-de-neuf/">Traefik 2.5, quoi de neuf ?</a> : actuellement en RC2, la version 2.5.0 de Traefik devrait apporter un support expérimental d'HTTP/3, le support des plugins privés, la mise à jour des CRD Kubernetes et les métriques par routeur (désactivé par défaut)</li>
</ul>
<h3 id="monitoring-observabilite">Monitoring & Observabilité</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2021/06/08/grafana-8.0-unified-grafana-and-prometheus-alerts-live-streaming-new-visualizations-and-more/">Grafana 8.0: Unified Grafana and Prometheus alerts, live streaming, new visualizations, and more!</a> : Grafana dans sa version 8.0 avec son lots d'amélioration.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2021/06/08/grafanaconline-2021-your-guide-to-the-newest-announcements-from-grafana-labs">GrafanaCONline 2021: Your guide to the newest announcements from Grafana Labs</a> : Résumé de la 1ère journée de GrafanaCon avec Grafan 8, Tempo 1.0, etc.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/docs/grafana/latest/whatsnew/whats-new-in-v8-0/">What’s new in Grafana v8.0</a> : une version plus détaillée des apports de la version 8.0 de Grafana</li>
<li><a rel="noopener" target="_blank" href="https://vector.dev/releases/0.14.0/">Vector v0.14.0 Release Notes</a> : Vector permet maintenant d'exécuter des scripts externes via la source <code>exec</code>.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-telegraf-1-19-0/">Release Announcement: Telegraf 1.19.0</a> : version incrémentale avec son lot d'améliorations et de corrections.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/about/press/2021-06-17-grafana-labs-brings-modern-open-source-load-testing-to-observability-with-acquisition-of-k6/"> Grafana Labs Brings Modern Open Source Load Testing to Observability with Acquisition of k6</a> : Grafana Labs étend son offre d'observabilité avec l'acquisition de <a rel="noopener" target="_blank" href="https://k6.io/">k6</a>, un outil de test de charge et de performance.</li>
</ul>
<h3 id="postgresql">Postgresql</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://tapoueh.org/blog/2021/06/postgresql-as-a-microservice/">PostgreSQL as a Microservice</a> : on pense souvent qu'une base de données permet la persistence des données. Ce n'est pas le principal enjeu d'une base de données mais la gestion de la concurrence.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-influxdb-oss-2-0-7/">Release Announcement: InfluxDB OSS 2.0.7</a> : version de maintenance avec des correctifs et la mise à jour de Flux.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-chronograf-1-9-0/">Release Announcement: Chronograf 1.9.0</a> : Version 1.9 de Chronograf, l'outil de dasboard et exploration des données d'InfluxData pour InfluxDB 1.x et 2.x. Cette version apporte un meilleur support de Flux (template variable, etc), le support au niveau UI du support TickScript & Flux de Kapacitor 1.6 (release à venir), un mode HA et pleins d'autres améliorations. Une version qui peut être utile dans le cadre d'une migration progressive d'InfluxDB 1.x vers 2.x</li>
<li><a rel="noopener" target="_blank" href="https://github.com/influxdata/influxdb-stack-manager">influxdata/influxdb-stack-manager</a> : pour gérer plus efficacement vos "stacks" InfluxdB (dashboard, tasks, etc). Requiert la cli influx.</li>
<li><a rel="noopener" target="_blank" href="https://www.timeseries.fr/edition/timeseriesfr-11/">TSFR Edition #11 - Récapitulatif InfluxDays EMEA 2021</a> : Edition un peu particulière du meetup - n'ayant pas pu l'organiser dans les temps mais l'ayant préparé, voici sous forme vidéo le résumé des annonces produits d'InfluxData dans le cadre des InfluxDays EMEA 2021.</li>
<li><a rel="noopener" target="_blank" href="https://www.timeseries.fr/edition/timeseriesfr-12/">TSFR Edition #12 - Le Bateau Qui Vole - Exploiter des données de navigation pour remporter les courses au large</a> : un retour pragmatique et assez complet sur la mise en place d'un process de collecte / traitement / analyse des données d'un trimaran et des problématiques rencontrées.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/interacting_git_repositories_warp10/">Interacting with Git repositories from Warp 10</a> : dans le cadre de la version 2.8 de Warp 10, des nouvelles capacités autour de l'interaction avec des dépots git sont disponibles. L'article présente des interactions de base mais j'ai encore du mal à voir les cas d'usage auxquels cela semble vouloire répondre.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/protecting-macros-and-functions-with-capabilities/">Protecting your Macros and Functions with Capabilities</a> : Avec Warp 10 2.8, il est désormais possible de définir des "capacités" et de contrôler plus finement les actions des utilisateurs au travers de ces capacités.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/warpstudio-v2-whats-new-in-our-web-ide/">WarpStudio v2: What’s new in our Web IDE?</a> : nouvelle version du WarpStudio de SenX, l'IDE Web prévue pour Warp 10 : support de FLoWS, documentation intégrée, intégration git, support de Disocvery (Dashboard as code), snippets, etc.</li>
<li><a rel="noopener" target="_blank" href="https://www.cerenit.fr/blog/ma-compta-une-serie-temporelle-comme-les-autres-partie-5/">Ma comptabilité, une série temporelle comme les autres - partie 5 - Les FEC et le compte 512</a> : si vous l'avez raté, nouvelle partie sur la comptaiblité, une série temporelle comme les autres avec cette fois-ci l'ingestion des fichiers d'écritures comptables (FEC) et l'analyse du compte 512 (banque)</li>
<li><a rel="noopener" target="_blank" href="https://blog.quasardb.net/dont-write-your-own-persistence-layer-why-we-chose-rocksdb">Don’t write your own persistence layer: why we chose RocksDB</a> : retour d'exéprience de QuasarDB sur le choix de la couche de persistence entre batir sa propre solution (spoiler : mauvaise isée), utiliser LevelDB (comme Warp 10) ou faire le choix de RocksDB.</li>
<li><a rel="noopener" target="_blank" href="https://engineering.fb.com/2021/06/21/open-source/kats/">Meet Kats — a one-stop shop for time series analysis</a> - <a rel="noopener" target="_blank" href="https://github.com/facebookresearch/Kats">facebookresearch/Kats</a> - <a rel="noopener" target="_blank" href="https://facebookresearch.github.io/Kats/">Kats - One stop shop for time series analysis in Python</a> : Facebook vient de sortir une librairie en python qui veut fournir un "tout en un" de la manipulation de séries temporelles. On y retrouve notamment <a rel="noopener" target="_blank" href="https://facebook.github.io/prophet/">Prophet</a> pur la partie prédiction.</li>
</ul>
Web, Ops, Data et Time Series - Avril 20212021-04-28T09:30:00+02:002021-04-28T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-data-timeseries-avril-2021/<h3 id="code">Code</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.engineering.publicissapient.fr/2021/04/08/docteur-jai-commite-8-go-dans-mon-git-cest-grave/">Docteur, j’ai commité 8 Go dans mon Git. C’est grave ?</a> : un petit exemple de l'utilisation de <a rel="noopener" target="_blank" href="https://github.com/newren/git-filter-repo">git-filter-repo</a> pour nettoyer son historique git de fichiers inutiles.</li>
<li><a rel="noopener" target="_blank" href="https://blog.stephane-robert.info/post/gitlab-trigger/">Les pipelines parent-enfant de gitlab-ci</a> : article sur la modularisation de gitlab-ci avec les pipelines parent/enfant au sein d'un même dépôt de code ou entre plusieurs dépot avec passage de variables entre eux.</li>
<li><a rel="noopener" target="_blank" href="https://news.ycombinator.com/item?id=26919510">Minio Changes License to AGPL</a> : Minio passe (aussi) son code en AGPL, l'annonce officielle n'est pas encore arrivée.</li>
</ul>
<h3 id="conteneur-et-orchestration">Conteneur et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://podcast.electro-monkeys.fr/926791/5088215-docker-compose-avec-nicolas-de-loof">Electro Monkeys - Docker Compose avec Nicolas de Loof</a> : Retour sur la Developper Experience autour de Docker, l'historique et le futur de docker-compose, la création de la spécification Compose, les intégrations AWS/ECS et Azure/ACI, l'intégration Kubernetes, etc.</li>
<li><a rel="noopener" target="_blank" href="https://medium.com/nttlabs/nerdctl-359311b32d0e">nerdctl: Docker-compatible CLI for contaiNERD</a> : une CLI qui imite la CLI Docker mais en interagissant directement avec containerd. Elle permet aussi de bénéficier de certaines fonctionnalités de containerd qui ne sont pas prévues pour tout de suite dans Docker apparemment.</li>
<li><a rel="noopener" target="_blank" href="https://kubernetes.io/blog/2021/04/08/kubernetes-1-21-release-announcement/">Blog: Kubernetes 1.21: Power to the Community</a> : au programme de cette nouvelle version : Cronjobs GA, Immutable Secrets and ConfigMaps GA, IPv4/IPv6 dual-stack support, Graceful Node Shutdown, PersistentVolume Health Monitor mais aussi PodSecurityPolicy Deprecation et TopologyKeys Deprecation</li>
<li><a rel="noopener" target="_blank" href="https://kubernetes.io/blog/2021/04/06/podsecuritypolicy-deprecation-past-present-and-future/">PodSecurityPolicy Deprecation: Past, Present, and Future</a>: article plus détaillé sur la dépréciation des PSP.</li>
<li><a rel="noopener" target="_blank" href="https://podman.io/releases/2021/04/02/podman-release-v3.1.0.html">Podman v3.1.0 Released</a> : ajout de la gestion des secrets, améliorations des commandes kube avec notamment la génération des PersistentVolumeClaim ou encore la gestion des propriétaires des volumes.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/vmware-tanzu/velero/releases/tag/v1.6.0">Velero 1.6.0</a> : améliorations diverses comme le support des identifiants par buckets (et non globaux uniquement), mise à jour de restic vers 0.12.0, etc.</li>
<li><a rel="noopener" target="_blank" href="https://docs.docker.com/compose/cli-command/">Compose CLI Tech Preview</a> : <code>compose</code> devrait devenir une sous-commande officiel de la CLI Docker ; on pourra alors faire <code>docker compose up -d</code></li>
<li><a rel="noopener" target="_blank" href="https://docs.docker.com/engine/release-notes/#20106">Docker 20.10.6</a> : version de maintenance avec le support des puces Apple Silicon M1.</li>
<li><a rel="noopener" target="_blank" href="https://twitter.com/stephenaugustus/status/1385622149776519168">Kubernetes : vers 3 releases par an au lieu de 4</a> : de quoi courrir un peu moins derrière les versions et à relier avec le support de chaque version étendue à 1 an depuis la 1.19.</li>
</ul>
<h3 id="data">Data</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://sq.io/">sq: swiss-army knife for data</a> : le <code>jq</code> pour les données relationelles. Du SQL ou des fichiers Excel/CSV/JOSN/XML en entrée et les mêmes formats en sortie (et un peu plus).</li>
<li><a rel="noopener" target="_blank" href="https://antonz.org/sqlite-is-not-a-toy-database/">SQLite is not a toy database</a> : On a souvent une fausse image de sqlite - l’article permet de se mettre à jour...</li>
</ul>
<h3 id="iac">IaC</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://codeinthehole.com/tips/conditional-nested-blocks-in-terraform/">Conditional nested blocks in Terraform</a> : si les <a rel="noopener" target="_blank" href="https://www.terraform.io/docs/language/expressions/dynamic-blocks.html">dynamic blocks</a> avec terraform sont utiles pour peupler dynamiquement des structures à partir de tableaux/listes/objets, il peut aussi être utiliser pour gérer la présence conditionnelle de blocs.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/announcing-hashicorp-terraform-0-15-general-availability">Announcing HashiCorp Terraform 0.15 General Availability</a> : la plus grosse annonce étant que la 0.15 initie les travaux en vue de la release 1.0 ; pour ceux qui sont à jour, la mise à jour ne devait pas poser de problèmes (cf <a rel="noopener" target="_blank" href="https://www.terraform.io/upgrade-guides/0-15.html">guide</a>). Pour plus d'informations, cf <a rel="noopener" target="_blank" href="https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md">CHANGELOG</a>.</li>
<li><a rel="noopener" target="_blank" href="https://www.bleepingcomputer.com/news/security/hashicorp-is-the-latest-victim-of-codecov-supply-chain-attack/">HashiCorp is the latest victim of Codecov supply-chain attack</a> : victime de la <a rel="noopener" target="_blank" href="https://about.codecov.io/security-update/">supply chain attach de codecov</a>, Hashicorp vient de publier les versions patchées de Terraform des versions 0.11 à 0.15. Faites la mise à jour rapidement même si la clé volée n'a a priori pas été utilisée frauduleusement.</li>
</ul>
<h3 id="iot">IoT</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.tindie.com/products/redrobotics/pico-2-pi-adapter-board/">Pico 2 Pi Adapter Board</a> : un petit adapteur sympathique pour Raspeberry Pi Pico et vous permettre de brancher facilement vos composants sans soudure et mener ainsi vos expériences.</li>
<li><a rel="noopener" target="_blank" href="https://make.playpiper.com/">Piper Make</a> : Pour programmer facilement votre Raspberry Pi Pico en MicroPython mais avec une logique de blocs à la Scratch.</li>
<li><a rel="noopener" target="_blank" href="https://www.framboise314.fr/utilisation-des-bme680-et-rv3028-avec-raspberry-pi-pico/">Utilisation des BME680 et RV3028 avec Raspberry Pi Pico</a> : le composant BME680 permet d'évaluer la qualité de l'air - le projet permet donc de capturer et d'afficher cette information avec un Raspberry Pi. Son successeur, le BME688 dispose d'une pincée d'IA.</li>
<li><a rel="noopener" target="_blank" href="https://projetco2.fr/">Projet CO2</a> et <a rel="noopener" target="_blank" href="http://nousaerons.fr/makersco2/">Makers CO2</a> : pour mieux comprendre les enjeux autour de l'aération des pièces et comment faire vos capteurs.</li>
</ul>
<h3 id="observabilite-monitoring">Observabilité & Monitoring</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://bpetit.nce.re/fr/2021/03/coder-ses-dashboards-grafana-avec-grafonnet/">Coder ses dashboards Grafana avec Grafonnet</a> : Grafonnet est une extension de jsonnet ; il permet de déclarer ses dashboards Grafana via un lanage formalisé plutôt que de copier/coller des dashboards en JSON. Cela permet ainsi d'avoir une approche un peu plus "Dashboard as code".</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2021/03/25/grafana-7.5-released-loki-alerting-and-label-browser-for-logs-next-generation-pie-chart-and-more/">Grafana 7.5 released: Loki alerting and label browser for logs, next-generation pie chart, and more!</a> : un nouveau panel pour les "camembers" ("pie charts"), des améliorations pour les autres produits grafana (loki, tempo), ainsi qu'Elasticsearch, Postgresql et Cloudwatch et sur la version Entreprise.</li>
<li><a rel="noopener" target="_blank" href="https://vector.dev/releases/0.12.0/">Vector v0.12.0 Release Notes</a>, <a rel="noopener" target="_blank" href="https://vector.dev/releases/0.12.1">0.12.1</a>, <a rel="noopener" target="_blank" href="https://vector.dev/releases/0.12.2">0.12.2</a> : Comme indiqué en février, la release de Vector apportant leur nouveau langage de traitement "<a rel="noopener" target="_blank" href="https://vector.dev/docs/reference/vrl/">Vector Remap Language</a> est disponible, ainsi que des améliorations sur <code>vector top</code>, la source <code>internal_logs</code> et l'API GraphQL. Un guide de mise à jour vers la nouvelle syntaxe est disponible.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-telegraf-1-18-1/">Release Announcement: Telegraf 1.18.1</a> : version de maintenance</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2021/04/20/grafana-loki-tempo-relicensing-to-agplv3/">Grafana, Loki, and Tempo will be relicensed to AGPLv3</a> & <a rel="noopener" target="_blank" href="https://grafana.com/blog/2021/04/20/qa-with-our-ceo-on-relicensing/">Q&A with Grafana Labs CEO Raj Dutt about our licensing changes</a> : les produits phares de Grafana Labs passent d'une licence <a rel="noopener" target="_blank" href="https://tldrlegal.com/license/apache-license-2.0-(apache-2.0)">Apache 2</a> à <a rel="noopener" target="_blank" href="https://tldrlegal.com/license/gnu-affero-general-public-license-v3-(agpl-3.0)">AGPLv3</a>. Les autres produits pourront rester sous licence ASL 2.0. L'AGPL étant contaminante, cela pourrait interdire l'usage de ces produits dans certains contextes, y compris à la CNCF. Vu l'implication de Grafana Labs dans le monde Prometheus, il va falloir suivre comment cela va se passer.</li>
</ul>
<h3 id="reseau">Réseau</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.kentik.com/blog/the-mystery-of-as8003/">The Mystery of AS8003</a> : Une entité inconnue jusque là mais liée à l'administration américaine a annoncé la gestion d'une très grande plage réseau. Les implications et les motivations sont encore à éclaircir. Le billet émet différents hypothèses. Le <a rel="noopener" target="_blank" href="https://twitter.com/d_feldman/status/1386042506022772738">thread twitter</a> associé est intéressant aussi.</li>
</ul>
<h3 id="securite">Sécurité</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://podcast.electro-monkeys.fr/926791/4996415-la-securite-dans-tous-ses-etats-detection-de-comportements-indesirables-grace-a-falco-avec-thomas-labarussias">Electro Monkeys - La sécurité dans tous ses états – détection de comportements indésirables grâce à Falco avec Thomas Labarussias</a> : Présentation des projets <a rel="noopener" target="_blank" href="https://github.com/falcosecurity/falco">falco</a> et <a rel="noopener" target="_blank" href="https://github.com/draios/sysdig">sysdig</a> qui permettent d'analyser les comportements de vos applications (conteneurisées ou pas) en se basant sur les syscalls.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/vault-1-7">Announcing HashiCorp Vault 1.7</a> : version mineure avec des améliorations internes au produit, sur la version entreprise et un peu au niveau UI.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.influxdays.com/emea-2021-virtual-experience/">InfluxDays EMEA 2021 Virtual Experience</a> : InfluxData organise la session européenne de sa conférence avec le point sur les différents produits et les développements à venir. Des nouvelles de l'écosystème (Grafana, etc) sont attendues aussi, ainsi que des retours clients. Des formations Flux et Telegraf sont aussi prévues respectivement les 10/11 mai et le 17 Mai.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/influxdata-releases-influxdb-notebooks-to-enhance-collaboration-for-teams-working-with-time-series-data/">InfluxData releases InfluxDB Notebooks to enhance collaboration for teams working with time series data</a> & <a rel="noopener" target="_blank" href="https://docs.influxdata.com/influxdb/cloud/notebooks/">Build notebooks in InfluxDB Cloud | InfluxDB Cloud Documentation</a> : InfluxData lance son offre de notebook intégré à sa plareforme InfluxDB (version cloud uniquement pour le moment)</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/complete-application-warp-10-tcp-stream-dashboard/">Build a Complete Application with Warp 10, from TCP Stream to Dashboard</a> : exemple complet de l'utilisation de la plateforme Warp 10 depuis l'ingestion des messages AIS des bateaux via un client TCP jusqu'à la visualisation des données après un passage par les étapes de stockage et nettoyage des données. Très intéressant même si je vais devoir relire tranquillement le billet pour bien comprendre certaines astuces et certains "raccourcis" au niveau du code.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/working-with-geoshapes/">Working with GEOSHAPEs</a> & <a rel="noopener" target="_blank" href="https://blog.senx.io/working-with-geoshapes-code-contest/">Working with GEOSHAPEs: code contest!</a> : un billet (et un concours) pour exploiter la dimension géospatiale de Warp 10.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/timescale/timescaledb/releases/tag/2.2.0">TimescaleDB 2.2.0</a> : diverses améliorations mais surtout une annonce sur la fin de support de Postgresql 11 à compter de mi-juin et de la prochaine version de TimescaleDB. C'est justifié par l'absence d'une fonctionnalité dans Postgresql 11.x et requise pour la prochaine version de TimescaleDB.</li>
</ul>
Web, Ops & Data - Septembre 20202020-09-30T09:30:00+02:002020-09-30T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-septembre-2020/<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://github.com/accurics/terrascan">terrascan</a> : terrascan va scanner vos fichiers terraform et les valider contre 500+ règles de sécurité (au format Open Policy Agent) afin d'identifier les éventuels problèmes de sécurité. L'outil supporte AWS, GCP et Azure.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/infracost/infracost">infracost</a> : estimez le coût de vos projets terraform à l'heure ou au mois. Il est même possible de faire apparaitre les évolutions de vos coûts d'infra lors d'une MR/PR. A défaut d'être forcément précis, cela pourra au moins donner une idée et permettra peut être de sensibiliser les développeurs et/ou les clients aux évolutions de couts de leurs projets.</li>
</ul>
<h3 id="code">Code</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://devguide.python.org/#status-of-python-branches">All Python versions before 3.6 are now totally unsupported</a> : Python 2 n'est plus supporté depuis le début de l'année - c'est au tour de Python 3.5 de ne plus l'être depuis le 13 sept. Pour Python 3.6, ce sera décembre 2021.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/nackjicholson/aiosql">nackjicholson/aiosql</a> : juste milieu (?) entre du SQL brut et un ORM, aiosql semble permettre d'associer une requête SQL à une fonction pour une manipulation assez simple ensuite dans le code par la suite.</li>
</ul>
<h3 id="container-et-orchestration">Container et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.redhat.com/sysadmin/tick-tock-container-time">Tick-tock. Does your container know what time it is?</a> : le fichier <code>/etc/localtime</code> est en général défini dans votre image de base et peut ne pas convenir à votre fuseau horaire. Podman permet de surcharger cela en précisant à l'exécution ou via un point de configuration le fuseau horaire à utiliser. Pratique plutôt que de modifier le fichier via votre Dockerfile.</li>
<li><a rel="noopener" target="_blank" href="https://medium.com/volterra-io/kubernetes-storage-performance-comparison-v2-2020-updated-1c0b69f0dcf4">Kubernetes Storage Performance Comparison v2 (2020 Updated)</a> : une comparaison des solutions de stockage rook/Ceph, Azure PVC, Azure hosyPath, GlusterFS, Portworx, OpenEBS MayaStor et Rancher Longhorn. La conclusion se termine par un trio de tête emmené par Portworx, OpenEBS et Longhorn. Ce dernier étant plus adapté pour des besoins légers de stockage.</li>
<li><a rel="noopener" target="_blank" href="https://cloud.google.com/blog/products/containers-kubernetes/bringing-ebpf-and-cilium-to-google-kubernetes-engine">New GKE Dataplane V2 increases security and visibility for containers</a> & <a rel="noopener" target="_blank" href="https://cilium.io/blog/2020/08/19/google-chooses-cilium-for-gke-networking/">Google announces Cilium & eBPF as the new networking dataplane for GKE</a> : GKE va utilise Cilium comme CNI pour son data plane v2 (il utilise actuellement Calico comme CNI si les network policy sont activées lors de la création de votre cluster)</li>
<li><a rel="noopener" target="_blank" href="https://itnext.io/benchmark-results-of-kubernetes-network-plugins-cni-over-10gbit-s-network-updated-august-2020-6e1b757b9e49">Benchmark results of Kubernetes network plugins (CNI) over 10Gbit/s network (Updated: August 2020)</a> : pour des petits clusters, la solution la plus performante serait/resterait Calico et Cilium ne serait efficace que pour des gros clusters.</li>
</ul>
<h3 id="big-data">(Big) data</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.spreaker.com/user/guignol/ep19-lucien-fregosi-dessine-moi-un-data-engineer">#19. Lucien Fregosi - Hugo Larcher - Erika Gelinard - Dessine moi un data engineer</a> : Pour cette saison 2 de DataBuzzWord, des réflexions intéressantes autour du Data Engineer / Data Scientists, le Data Engineer qui fait du Build/Run, les pipelines & job as a service et de l'importance de simplifier / déporter le run pour que le Data Engineer et a fortiori le Data Scientist se concentrent sur leurs pipelines ou leur exploitation et gérer moins d'infrastructure.</li>
</ul>
<h3 id="hardware">Hardware</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://nvidianews.nvidia.com/news/nvidia-to-acquire-arm-for-40-billion-creating-worlds-premier-computing-company-for-the-age-of-ai">NVIDIA to Acquire Arm for $40 Billion, Creating World’s Premier Computing Company for the Age of AI</a> : Nvidia sur le point d'acheter ARM pour en faire un leader des processeurs (CPU/GPU) et de l'IA. On voit que le sujet est politique dans le soin qui est apporté au site ARM de Cambridge et de son développement à venir.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://community.influxdata.com/t/influxdb-oss-2-0-general-availability-roadmap/15573">InfluxDB OSS 2.0 General Availability Roadmap</a> : un bon résumé sur les avancées d'Influx 2.0 OSS et la transition 1.x vers 2.x ; Début septembre, j'étais sceptique quand même avec le retour du stockage et du requêtage da la V1 dans la branche v2 (cf <a rel="noopener" target="_blank" href="https://github.com/influxdata/influxdb/pull/19446">la PR "Port TSM1 storage engine"</a>) et ce à un mois de la date de release prévue annoncés aux Influxdays de Londres (ie fin septembre). Au final, la version 2.0 OSS et Entreprise auront les feautres "frontend" de la V2 (Tasks, Dashobards, etc) mais <em>uniquement</em> le moteur de stockage de la V1. Si je comprends le besoin pour ne pas perdre leurs clients dans la migration, c'est un écart de plus entre les version OSS/Entreprise et la version Cloud. Les couches hautes (API, UI, fonctionnalités type Task/Dashboards/...) seront commmunes mais sous le capot (stockage, ingestion), cela diffère. On peut raisonnablement se demander si c'est une phase intermédiaire avant une migration ultérieure sur le moteur de stockage de la 2.0 quand InfluxData aura plus de recul sur le sujet ou bien si les projets Cloud et OSS/Entreprise ne vont pas diverger significativement à moyen terme. Ceux qui ont commencé à alimenter leur base InfluxDB 2.0 sur la base des versions beta devront repartir de zéro du fait de cette incompatibilité de version de moteur de stockage.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2020/08/26/popular-community-plugins-that-can-improve-your-grafana-dashboards/">Popular community plugins that can improve your Grafana dashboards</a> : une collection de plugins Grafana pour améliorer vos dashboards.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/warp-10-release-2-7-0-flows/">September 2020: Warp 10 release 2.7.0, ready for FLoWS</a> : la version 2.7 de Warp 10 est disponible et est la première version qui va supporter FLoWS, la syntaxe fonctionnelle alternative à WarpScript. Pour en savoir plus sur FLoWS, je vous renvoie à <a rel="noopener" target="_blank" href="https://www.ptsm.io/#ptsm-5">l'édition 5 du Paris Time Series Meetup avec la présentation de FLoWS</a>. D'autres améliorations font partie de cette release, tant d'un point de vue fonctionnalités que performances.</li>
</ul>
Web, Ops & Data - Août 20202020-08-26T09:30:00+02:002020-08-26T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-aout-2020/<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/cdk-for-terraform-enabling-python-and-typescript-support/">CDK for Terraform: Enabling Python & TypeScript Support</a> : <a rel="noopener" target="_blank" href="https://aws.amazon.com/cdk/">cdk</a> est le Cloud Development Kit édité par AWS, Hashicorp annonce donc son support dans terraform. Si la démo semble fonctionner (faut aimer typescript...), à voir ce que cela peut donner sur des projets de plus grande ampleur et ce que donne l'empilement d'abstractions (Code > CDK > Terraform > Provider) lors des erreurs et bugs.</li>
</ul>
<h3 id="code">Code</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://devblogs.microsoft.com/python/announcing-pylance-fast-feature-rich-language-support-for-python-in-visual-studio-code/">Announcing Pylance: Fast, feature-rich language support for Python in Visual Studio Code</a> : Microsoft annonce une nouvelle extension pour python qui se veut plus performance et apporte des fonctionnalités comme les auto-imports, des informations sur les types et du type checking.</li>
<li><a rel="noopener" target="_blank" href="https://blog.engineering.publicissapient.fr/2020/06/04/packaging-python-setup-py-et-setuptools/">Packaging Python : setup.py et setuptools</a> : un petit retour aux bases sur le packaging python et la distribution des sources.</li>
<li><a rel="noopener" target="_blank" href="https://julien.danjou.info/properly-managing-your-gitignore/">Properly managing your .gitignore file</a> : Vous pouvez utiliser <code>~/.config/git/ignore</code> pour y mettre votre configuration personnelle (IDE, OS, etc) et limiter le <code>.gitignore</code> de vos projets aux éléments de build & co.</li>
</ul>
<h3 id="container-et-orchestration">Container et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://thenewstack.io/the-road-to-kata-containers-2-0/">The Road to Kata Containers 2.0</a> : Retour et perspectives à venir sur le projet Kata Containers qui a pour objectif de proposer une meilleure isolation des containers en utilisant des VMs</li>
<li><a rel="noopener" target="_blank" href="https://www.grottedubarbu.fr/traefik-2-3-http-provider/">Traefik 2.3 : HTTP Provider</a> : Traefik dans la version 2.3 (actuellement en RC) se dote d'<a rel="noopener" target="_blank" href="https://docs.traefik.io/v2.3/providers/http/">un nouveau provider http</a>. On peut ainsi demander à Traefik de se connecter régulièrement à une url qui en retour lui donnera des configurations à appliquer de façon dynamique.</li>
<li><a rel="noopener" target="_blank" href="https://tferdinand.net/en/traefik-2-3-towards-plugins-and-beyond/">Traefik 2.3 : Towards plugins and beyond!</a> : petite introduction à l'utilisation des plugins dans Traefik 2.3.</li>
<li>Docker lance des initiatives intéressantes avec une meilleure intégration <a rel="noopener" target="_blank" href="https://www.docker.com/blog/from-docker-straight-to-aws/">AWS</a> (voir aussi le <a rel="noopener" target="_blank" href="https://aws.amazon.com/fr/blogs/containers/aws-docker-collaborate-simplify-developer-experience/">blog AWS</a>) et <a rel="noopener" target="_blank" href="https://www.docker.com/blog/how-to-deploy-containers-to-azure-aci-using-docker-cli-and-compose/">Azure</a>.</li>
<li><a rel="noopener" target="_blank" href="https://blog.rook.io/rook-v1-4-ceph-operator-enhancements-3ca45bfa40a6">Rook v1.4: Storage Enhancements and Ceph Features</a> : de nombreuses améliorations coté Ceph (Ceph-CSI 3.0, Object Store Multisite, Admission controller, Support du chiffrement au niveau des OSD, etc)</li>
</ul>
<h3 id="no-sql">(No)SQL</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://cassandra.apache.org/blog/2020/07/20/apache-cassandra-4-0-beta1.html">Introducing Apache Cassandra 4.0 Beta: Battle Tested From Day One</a> : Première beta pour la tant attendue Cassandra 4.0 - version GA espérée pour la fin d'année. On notera le passage à Java 11 et le nouveau ZGC, des gains de performance sur les tâches d'opération, un audit logging, et bien d'autres choses encore. A noter que l'écosystème semble prêt déjà à supporter la 4.0 comme avec Repair, Medusa, etc.</li>
<li><a rel="noopener" target="_blank" href="https://www.percona.com/blog/2020/07/17/mariadb-s3-engine-implementation-and-benchmarking/">MariaDB S3 Engine: Implementation and Benchmarking</a> : MariaDB dispose d'un plugin S3 en version alpha. Il permet de déporter des tables dans S3 et de les requêter. Pour des cas en lecture et suivant vos requêtes cela peut avoir du sens apparemment. D'autres billets sur le sujet devraient suivre prochainement.</li>
</ul>
<h3 id="os">OS</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://chrisdown.name/2018/01/02/in-defence-of-swap.html">In defence of swap: common misconceptions</a> (<a rel="noopener" target="_blank" href="https://www.clever-cloud.com/fr/podcast/episode11/">via</a>) : à l'heure des kernels 4+, des SSDs, de cgroup v2, il est temps de revoir notre compréhension et l'intérêt de la swap.</li>
</ul>
Web, Ops & Data - Juillet 20202020-07-29T09:30:00+02:002020-07-29T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-juillet-2020/<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.ippon.fr/2020/06/29/gestion-automatisee-de-certificats-tls-avec-lets-encrypt-via-terraform-et-ansible-sur-aws/">Gestion automatisée de certificats TLS avec Let’s Encrypt via Terraform et Ansible sur AWS</a> : exemple d'utilisation du provider <code>acme</code> avec terraform pour la génération et le déploiement d'un certificat Let's Encrypt dans un contexte AWS.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/custom-variable-validation-in-terraform-0-13/">Custom Variable Validation in Terraform 0.13</a> : introduite en version expérimentale en 0.12.20, la validation personnalisée de variable sera stable en v ersion 0.13. De quoi valider ses ressources plus simplement.</li>
<li><a rel="noopener" target="_blank" href="https://www.ovh.com/fr/news/presse/cpl1581.lacquisition-dopenio-ovhcloud-donne-ambition-creer-meilleure-offre-stockage-objet-du-marche">Avec l’acquisition d'OpenIO, OVHcloud se donne pour ambition de créer la meilleure offre de Stockage Objet du marché</a> : acquisition d'OpenIO par OVHCloud. OpenIO fournit une solution de stockage compatible S3 et apparemment OVHVloud et OpenIO étaient habituées à travailler ensemble notamment autour de Swift (le stockage objet dans Openstack). Intéressant de voir ce type d'acquisition en Europe d'une part et de voir qu'OVHCloud remonte dans la chaine de valeur et rentre de plus en plus dans le monde du logiciel. A suivre !</li>
</ul>
<h3 id="container-et-orchestration">Container et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://containo.us/blog/announcing-maesh-1-3/">Announcing Maesh 1.3</a> : Maesh continue son chemin et ajoute la capacité de surveiller des namespace particuliées (en plus de pouvoir en ignorer), le support du lookup des ports (http -> 80), le support de CoreDNS chez AKS et d'autres améliorations encore.</li>
<li><a rel="noopener" target="_blank" href="https://electro-monkeys.fr/?p=209">Electro Mpnkeys #9 – Traefik et Maesh : de l’ingress au service mesh avec Michael Matur</a> : si vous voulez en savoir plus sur Traefik et Maesh, je vous conseille cet épisode (et les autres) du podcast Electro Monkeys.</li>
<li><a rel="noopener" target="_blank" href="https://containo.us/blog/introducing-traefik-pilot-a-first-look-at-our-new-saas-control-platform-for-traefik">Introducing Traefik Pilot: a First Look at Our New SaaS Control Platform for Traefik</a> : Containous, la société derrière Traefik, Maesh et <a rel="noopener" target="_blank" href="https://containo.us/blog/announcing-yaegi-263a1e2d070a/">Yaegi</a> sort son offre SaaS pour piloter et monitorer ses instances traefik. Un système de plugins pour les middleware fait également son apparaition. Il faut une version 2.3+ (actuellement en RC) de Traefik pour bénéficier de cette intégration.</li>
<li><a rel="noopener" target="_blank" href="https://blog.byte.builders/post/relicensing/">Relicensing Stash & KubeDB</a> : KubeDB, l'operateur de bases de données et Stash, l'outil de sauvegarde se cherchent un modèle économique et changent de licence. La version gratuite, avec code source disponible, reste disponible pour des usages non commerciaux (voir les détails de la licence pour une slite exacte). Pour un usage commercial, il faudra passer par la version Entreprise qui apporte aussi des fonctionnalités supplémentaires.</li>
<li><a rel="noopener" target="_blank" href="https://rancher.com/press/suse-to-acquire-rancher/">Suse to acquire Rancher</a> : Suse était sorti de mon radar; c'est donc pour moi l'entrée (ou le retour ?) de Suse dans le monde de kubernetes et de son orchestration. Est-ce une volonté d'aller prendre des parts de marchés à Redhat/Openshift ou de faire face à des rumeurs telles que <a rel="noopener" target="_blank" href="https://www.axios.com/google-talks-to-acquire-enterprise-software-startup-d2iq-mesosphere-a0d428bf-2382-4ec6-8941-9e580e36086e.html">Google en discussion pour acquérir D2IQ (ex Mesoshphère)</a> ? A voir si cette acquisition va être un tremplin pour Rancher et ses différents projets (rke, rio, k3s, longhorn, etc) <a rel="noopener" target="_blank" href="https://twitter.com/Rancher_Labs/status/1280852433711874049">comme l'indique son CTO</a> ou pas.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://techcrunch.com/2020/07/02/questdb-nabs-2-3m-seed-to-build-open-source-time-series-database/">QuestDB nabs $2.3M seed to build open source time series database</a> : <a rel="noopener" target="_blank" href="https://questdb.io/">QuestDB</a>, historiquement issue du monde du trading à haute fréquence, commence à faire parler d'elle (notamment en récupérant un des DevRel d'InfuxData <a rel="noopener" target="_blank" href="https://davidgs.com/">David G Simmons</a> et vient de lever 2.3 millions de dollars. Elle a une approche SQL sur le traitement des données, se veut performante. A voir si elle reste une spécialiste de la série temporelle financière ou si elle parvient à s'ouvrir à d'autres usages.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdays.com/past-events-london-2020/sessions/">InfluxDays 2020 Virtual Experience</a> : les vidéos et supports des InfluxDays sont disponibles.</li>
<li><a rel="noopener" target="_blank" href="https://www.ptsm.io/#ptsm-5">Paris Time Series Meetup #5 : De retour des InfluxDays et FLoWS</a> : Résumé des keynotes autour des annonces produits des InfluxDays et présentation de FLoWS, la nouvelle syntaxte proposée par SenX pour interagir avec Warp10, en alternative à WarpScript. Le but est de faciliter la courbe d'apprentissage autour de Warp10. FLoWS est déjà disponible sur la sandbox et sera disponible cet été ou à la rentrée dans la version 2.7.0 de Warp10.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2020/07/17/grafana-v7.1-released-new-features-for-influxdb-and-elasticsearch-data-sources-table-panel-transformations-and-more/">Grafana v7.1 released: New features for InfluxDB and Elasticsearch data sources, table panel transformations, and more</a> : grosse nouvelle version mineure de Grafana avec son lots d'amélioration et de nouveautés. Je vous laisse lire l'annonce.</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/how-grafana-dashboard-influxdb-flux-influxql/">How to Build Grafana Dashboards with InfluxDB, Flux and InfluxQL</a> : A l'occasion de la sortie de Grafana 7.1 qui apporte le support de Flux, présentation des nouveaux modes d'interaction entre Grafana et InfluxDB</li>
</ul>
<h3 id="vie-privee-donnees-personnelles">Vie privée & données personnelles</h3>
<p>Le Privacy Shield, l'accord entre l'Europe et les USA sur le transfert des données des Européens vers les USA (ou les sociétés américaines) vient d'être invalidé par la cour de justice européene. Les flux "absolument nécessaires" peuvent continuer à se faire pour le moment et la cour a validé "les clauses contractuelles types" définies par la Commission Européenne pourront être utilisées par les entreprises. Néanmoins, pour s'y référer, il semble qu'il faut vérifier que l'entreprise protège effectivement les données. Je vous invite à contacter votre juriste ou avocat pour mieux appréhender les impacts de cette invalidation si vous utilisez les plateformes cloud et des services dont les entreprises sont basées aux USA. En tant qu'individu, il peut être intéressant de se poser des questions également. N'étant pas juriste, je vais donc limiter mon interprétation ici et vous laisse lire les liens ci-dessous.</p>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.numerama.com/tech/637073-la-justice-europeenne-sabre-le-transfert-de-vos-donnees-vers-les-usa-a-cause-de-la-surveillance-de-masse.html">La justice européenne sabre le transfert de vos données vers les USA à cause de la surveillance de masse</a></li>
<li><a rel="noopener" target="_blank" href="https://www.lemonde.fr/pixels/article/2020/07/16/la-justice-europeenne-annule-l-accord-sur-le-transfert-de-donnees-personnelles-ue-etats-unis_6046344_4408996.html">L’accord sur le transfert de données personnelles entre l’UE et les Etats-Unis annulé par la justice européenne</a></li>
<li><a rel="noopener" target="_blank" href="https://noyb.eu/en/cjeu">CJEU Judgment - First Statement</a></li>
<li><a rel="noopener" target="_blank" href="https://www.franceinter.fr/societe/l-accord-sur-le-transfert-de-donnees-personnelles-avec-les-etats-unis-invalide-par-la-justice-europeenne">L'accord sur le transfert de données personnelles avec les États-Unis invalidé par la justice européenne</a></li>
<li><a rel="noopener" target="_blank" href="https://www.cnil.fr/fr/invalidation-du-privacy-shield-la-cnil-et-ses-homologues-analysent-actuellement-ses-consequences">Invalidation du « Privacy shield » : la CNIL et ses homologues analysent actuellement ses conséquences</a></li>
<li><a rel="noopener" target="_blank" href="https://edpb.europa.eu/news/news/2020/statement-court-justice-european-union-judgment-case-c-31118-data-protection_en">Statement on the Court of Justice of the European Union Judgment in Case C-311/18 - Data Protection Commissioner v Facebook Ireland and Maximillian Schrems</a></li>
<li><a rel="noopener" target="_blank" href="https://www.infoq.com/articles/privacy-shield-hyperscale-clouds/">The End of the Privacy Shield Agreement Could Lead to Disaster for Hyperscale Cloud Providers</a></li>
</ul>
Web, Ops & Data - Juin 20202020-06-24T09:30:00+02:002020-06-24T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-juin-2020/<p>Je ne peux résister à mentionner la sortie de <a rel="noopener" target="_blank" href="https://bigdatahebdo.com/podcast/episode-100-anniversaire-avec-la-communaute/">l'épisode 100 du BigDataHebdo</a>, 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 !</p>
<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/announcing-the-terraform-visual-studio-code-extension-v2-0-0/">Announcing the Terraform Visual Studio Code Extension v2.0.0</a> : 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.</li>
</ul>
<h3 id="container-et-orchestration">Container et orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://thenewstack.io/introducing-the-telegraf-operator-kubernetes-sidecars-made-simple/">Introducing the Telegraf Operator: Kubernetes Sidecars Made Simple</a> : 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.</li>
<li><a rel="noopener" target="_blank" href="https://twitter.com/Sebastien_Jard1/status/1270641379979362304">Kubernetes 1.18.x officiellement disponible chez OVHCloud</a></li>
<li><a rel="noopener" target="_blank" href="https://rancher.com/blog/2020/longhorn-container-storage">Longhorn Simplifies Distributed Block Storage in Kubernetes</a> : Rancher vient de sortir la version 1.0 de <a rel="noopener" target="_blank" href="https://rancher.com/products/longhorn">Longhorn</a>. 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.</li>
<li><a rel="noopener" target="_blank" href="https://dev.to/aurelievache/kubernetes-sketchnotes-pods-4ib0">Understanding Kubernetes</a> & <a rel="noopener" target="_blank" href="https://dev.to/aurelievache/understanding-istio-part-1-istio-components-4ik5">Understanding Istio</a> : Aurélie Vache réalise des sketchnotes pour vulgariser Kubernetes et Istio. Un joli travail de vulgarisation.</li>
</ul>
<h3 id="iot">IoT</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.raspberrypi.org/blog/8gb-raspberry-pi-4-on-sale-now-at-75/">8GB Raspberry Pi 4 on sale now at $75</a> : 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$.</li>
</ul>
<h3 id="ops">Ops</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://medium.com/@IG1.com/sismology-iguana-solutions-monitoring-system-f46e4170447f">Sismology: Iguana Solutions’ Monitoring System</a> : 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.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/release-announcement-influxdb-2-0-0-beta-12/">Release Announcement: InfluxDB 2.0.0 Beta 12</a> : une beta de plus avec l'ajout notamment d'<code>influx stacks</code> pour faire du CRUD sur des groupes de ressources InfluxDB (dashboard, labels, tasks, etc).</li>
<li><a rel="noopener" target="_blank" href="https://twitter.com/warp10io/status/1268865147671646209">Warp 10, The Most Advanced Time Series Platform, now provides multi-architecture docker images.</a> : vous pouvez donc déployer des <a rel="noopener" target="_blank" href="https://hub.docker.com/r/warp10io/warp10">images docker warp10</a> sur des plateformes amd64/armv7/arm64.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/may-2020-warp-10-release-2-6-0/">May 2020: Warp 10 release 2.6.0</a> : Pleins d'améliorations et de correctifs et notamment la capacité de dialoguer directement avec Warp10 via le protocole Protobuf ou via Arrow.</li>
<li><a rel="noopener" target="_blank" href="https://blog.senx.io/time-series-forecasts-in-warpscript/">Time series forecasts in WarpScript</a> : 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 <a rel="noopener" target="_blank" href="https://sandbox.senx.io/">sandbox Warp10</a> mise à disposition par <a rel="noopener" target="_blank" href="https://senx.io/">SenX</a>.</li>
</ul>
Web, Ops & Data - Mai 20202020-05-27T09:30:00+02:002020-05-27T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-mai-2020/<p>Le mois prochain, dans le cadre d'<a rel="noopener" target="_blank" href="https://www.influxdays.com/london-2020/">InfluxDays London</a>, j'aurai le plaisir de présenter un talk sur le passage d'un monitoring Bare Metal vers un monitoring dans un monde Kubernetes avec Telegraf et InfluxDB.</p>
<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://github.com/hashicorp/terraform/issues/25016">Terraform v0.13.0 beta program</a> : Terraform 0.13 (beta) devrait supporter au niveau des modules <code>depends_on</code>, <code>count</code> et <code>for_each</code>. Cela devrait éviter des dépendances parfois cryptiques.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/deploy-any-resource-with-the-new-kubernetes-provider-for-hashicorp-terraform/">Deploy Any Resource With The New Kubernetes Provider for HashiCorp Terraform</a> : la prochaine version du provider kubernetes de terraform permettra de déployer n'importe quelle ressource. Pratique ! Il vous faudra un cluster kubernetes 1.17+ pour utliser la fonctionnalité "Server Side Apply".</li>
<li><a rel="noopener" target="_blank" href="https://www.grottedubarbu.fr/ovh-api-openstack/">OVH : Utilisation de l'API OpenStack</a> : Tutoriel pour le déploiement d'un wordpress sur un cluser k3s chez OVH en utilisant l'API OpenStack ; le reste du blog <a rel="noopener" target="_blank" href="https://www.grottedubarbu.fr/">La Grotte du Barbu</a> fournit plein de ressources sur kubernetes, traefik, docker, etc.</li>
</ul>
<h3 id="container-orchestration">Container & orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.linuxuprising.com/2019/11/how-to-install-and-use-docker-on-fedora.html">How To Install Docker On Fedora 32 Or 31 (And Alternatives)</a> : Même si l'utilisation de podman est recommandée en lieu et place de docke-ce depuis Fedora 31, il peut être nécessaire de vouloir utiliser docker-ce sous Fedora. Avec Fedora 32, il faut en plus des cgroups v1 à activer, il y a une règle firewall à ajouter pour que vos conteneurs aient accès au réseau / à internet.</li>
<li><a rel="noopener" target="_blank" href="https://goharbor.io/blog/harbor-2.0/">Harbor 2.0</a> : Version 2.0 de la registry Harbor qui permet d'héberger aussi des charts Helm. Pour la partie scan de vulnérabilités, le produit Clair de Quay a été remplacé par <a rel="noopener" target="_blank" href="https://github.com/aquasecurity/trivy">Aqua Trivy</a></li>
<li><a rel="noopener" target="_blank" href="https://containo.us/blog/announcing-maesh-1-2/">Announcing Maesh 1.2</a> : la solution de Service Mesh de Containous basée sur Traefik sort en 1.2 ; elle se base sur Traefik 2.2 et apporte donc le support de l'UDP au niveau reverse proxy. Cette version permet aussi des améliorations au niveau ACL, gestion de la configuration et gestion des middlewares par service.</li>
<li><a rel="noopener" target="_blank" href="https://www.percona.com/blog/2020/05/07/introduction-to-percona-kubernetes-operator-for-percona-xtradb-cluster/">Introduction to Percona Kubernetes Operator for Percona XtraDB Cluster</a></li>
<li><a rel="noopener" target="_blank" href="https://blog.jetstack.io/blog/cert-manager-0.15-and-beyond/">Cert-manager v0.15 and beyond</a></li>
<li><a rel="noopener" target="_blank" href="https://cdk8s.io/">CDK for Kubernetes</a> : AWS vient de sortir un "Cloud Development Kit" permettant de manipuler et déployer des ressources kubernetes en python, typescript ou javascript.</li>
</ul>
<h3 id="devops">DevOps</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://devops.training.barpilot.io/">DevOps : Discovering, Learning and Sharing</a> (<a rel="noopener" target="_blank" href="https://github.com/guilhem/devops-training">code source</a>) : Guilhem vient de publier sa formation de culture DevOps ; à consulter !</li>
<li><a rel="noopener" target="_blank" href="https://shows.acast.com/radio-devops">Radio DevOps</a> : un podcast qui s'améliore d'épisode en épisode et plutôt adressé à des débutants dans le monde du DevOps.</li>
</ul>
<h2 id="iot">IoT</h2>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=274595">Raspberry Pi 4 USB mass storage beta (beta means it not ready yet, and not officially released!)</a> : Le Raspberry Pi 4 va pouvoir démarrer sur un périphérique USB (clé USB, disque SSD, etc) avec l'arrivée du prochain firmware. La nécessité de la SDCard va disparaitre.</li>
</ul>
<h3 id="time-series">Time Series</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.timescale.com/blog/multi-node-petabyte-scale-time-series-database-postgresql-free-tsdb/">A multi-node, elastic, petabyte scale, time-series database on Postgres for free (and more ways we are investing in our community)</a> : Timescale annonce que sa version cluster de TimescaleDB sera gratuite (sous licence Timescale, source code available mais pas le droit de faire un produit SaaS avec). La version monoserveur reste sous licence Apache 2.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/blog/2020/05/18/grafana-v7.0-released-new-plugin-architecture-visualizations-transformations-native-trace-support-and-more/">Grafana v7.0 released: New plugin architecture, visualizations, transformations, native trace support, and more</a> : A l'occasion de la <a rel="noopener" target="_blank" href="https://grafana.com/about/events/grafanacon/2020/#schedule">GrafanaCon 2020</a>, Grafana Labs a sorti notamment Grafana 7.0 avec des tonnes d'amélioration. Il va falloir un peu de temps pour bien apprécier tout cela.</li>
<li><a rel="noopener" target="_blank" href="https://grafana.com/about/events/grafanacon/2020/#schedule">GrafanaCon 2020</a> : la conférence annuelle de Grafana s'est tenue tout le mois de Mai, les vidéos sont accessibles sur la page de chaque talk après avoir saisi son email. Je n'ai malheureusement pas encore eu le temps de les visionner. <a rel="noopener" target="_blank" href="https://grafana.com/blog/2020/05/21/cortex-v1.1-released-with-improved-reliability-and-performance/">Cortex 1.1</a> et <a rel="noopener" target="_blank" href="https://grafana.com/blog/2020/05/20/loki-v1.5.0-released-with-no-more-dependency-on-a-separate-index-store">Loki 1.5</a> y ont notamment été annoncés.</li>
</ul>
Web, Ops & Data - Septembre 20182018-09-26T09:30:00+02:002018-09-26T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-septembre-2018/<p>Avant de commencer cette revue de presse, un peu d'auto-promo, vu que j'ai eu le plaisir et l'honneur de participer au <a rel="noopener" target="_blank" href="https://www.spreaker.com/user/vhe74/episode-59-we-are-back">numéro de rentrée (épisode 59)</a> du <a rel="noopener" target="_blank" href="http://bigdatahebdo.com/">BigData Hebdo</a>.</p>
<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://bravenewgeek.com/multi-cloud-is-a-trap/">Multi-Cloud Is a Trap</a> : sujet à la mode, le multi-cloud selon l'auteur du billet est inutile/idiot et ne serait qu'une distraction/perte de temps et d'argent dans la plupart des cas ; certaines exceptions sont acceptées en fin de billet). Un point intéressant étant de dire qu'en voulant éviter le "lock-in", on se prive de profiter au maximum de la plateforme cloud et que l'on se créée du coup un coût de "lock-out".</li>
</ul>
<h3 id="containers-et-orchestration">Containers et Orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.bretfisher.com/the-future-of-docker-swarm/">The Future of Docker Swarm</a> : Etat des lieux et perspectives sur Swarm par un Capitaine Docker. Le projet n'est pas mort et il peut suffire dans bon nombre de cas.</li>
<li><a rel="noopener" target="_blank" href="https://jmaitrehenry.ca/2018/04/16/docker-config-how-to-always-use-base-image-with-docker-swarm/">Docker Config, how to always use base image with Docker Swarm!</a> : Depuis Docker 17.06 et dans un contexte Swarm, il est possibile d'utiliser les <a rel="noopener" target="_blank" href="https://docs.docker.com/engine/swarm/configs/">configs</a>. Les configs permettent de stocker un fichier de configuration au sein du cluster swarm et de le mettre à disposition des containers. Ainsi, en cas des modifications de la configuration, plus besoin de rebuilder l'image, il suffit de mettre à jour le service pour qu'une nouvelle version du container la prenne en compte.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/BretFisher/ama/issues/10">Pros and Cons of running all Docker Swarm nodes as Managers?</a> : Revue par le Docker Captain Bret Fisher des avantages/incovénients d'utiliser que des nodes de type "managers" au sein d'un cluster Swarm. Trop est déconseillé (> 5) et ensuite c'est un compromis entre la sécurité, la disponibilité et la résilience.</li>
<li><a rel="noopener" target="_blank" href="https://blog.containo.us/traefik-1-7-yet-another-slice-of-awesomeness-2a9c99737889">Traefik 1.7 — Yet Another Slice of Awesomeness</a> : dans les nouveautés principales : une image Docker pour windows, le support de l'authentification dans les frontends, le support d'AWS Fargate, HC2 Support et le support du challenge TLS pour Let's Encrypt (plus besoin d'avoir le port 80 ouvert). Apparemment pour la prochaine version, l'équipe de dév va prendre quelques libertés pour introduire des nouveautés - il faut donc s'attendre à quelques incompatibilités à l'avenir.</li>
</ul>
<h3 id="devops">DevOps</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.wescale.fr/2018/06/14/ansible-tips-reboot-continue/">Ansible Tips : Reboot & Continue</a> : Astuce utile pour gérer un reboot d'un serveur via ansible et reprendre ensuite la connexion et l'exécution du reste d'un playbook.</li>
</ul>
<h3 id="ia">IA</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://code.fb.com/developer-tools/finding-and-fixing-software-bugs-automatically-with-sapfix-and-sapienz/">Finding and fixing software bugs automatically with SapFix and Sapienz</a> : Sapienz et SapFix ne sont pas des produits SAP mais des projets Facebook. Le premier est un agent de test automatique et SapFix est une IA qui est en mesure d'identifier des correctifs pour les bugs identifiés par le premier. Le fix peut être un retour partiel ou total au code précédent mais aussi de prospoer des correctifs sur la base de modèle de code. Une fois les correctifs testés et qu'aucune régression n'est identifiée, alors le fix est proposé pour validation aux développeurs.</li>
</ul>
<h3 id="ingenierie">Ingénierie</h3>
<ul>
<li><a rel="noopener" target="_blank" href="http://tonsky.me/blog/disenchantment/">Software disenchantment</a> : "<em>That is not engineering. That’s just lazy programming. Engineering is understanding performance, structure, limits of what you build, deeply. Combining poorly written stuff with more poorly written stuff goes strictly against that. To progress, we need to understand what and why are we doing.</em>" - un plaidoyer pour de meilleures pratiques d'ingénierie partant du constat que les applications développées sont de plus en plus grosses, de moins en moins performantes pour un niveau de fonctionnalité à peine meilleur. Heureusement que les machines ont progressé pour compenser cette "obésité logicielle".</li>
</ul>
<h3 id="no-sql">(No)SQL</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.pythian.com/so-you-have-a-broken-cassandra-sstable-file/">So you have a broken Cassandra SSTable file?</a> : que faire lorsqu'une SSTable est corrmpue, c'est tout l'objet de cet article, de la plus simple et moins impactante à la plus complexe/impactante. Sans aller jusqu'à la corruption, nous avons eu un cas similaire et un <code>nodetool scrub <keysapce> <table></code> a été suffisant.</li>
<li><a rel="noopener" target="_blank" href="http://thelastpickle.com/blog/2018/09/10/incremental-repair-improvements-in-cassandra-4.html">Incremental Repair Improvements in Cassandra 4</a> : les réparations incrémentales, déconseillées jusqu'alors par les gens de The Last Pickle, semblent devenir la solution recommandée avec la sortie prochaine de Cassandra 4.0. Les réprations complètes (full) ne seraient alors utiles que dans certains cas, car moins efficientes.</li>
<li><a rel="noopener" target="_blank" href="https://labs.spotify.com/2018/09/04/introducing-cstar-the-spotify-cassandra-orchestration-tool-now-open-source/">Introducing cstar: The Spotify Cassandra orchestration tool, now open source</a> : Spotify ouvre le code de son shell distribué pour Cassandra, sous le nom de <a rel="noopener" target="_blank" href="https://github.com/spotify/cstar">cstar</a> Il a pour intérêt d'être conscient de la topology du cluster et donc de pouvoir faire les commandes de façon optimisées.</li>
<li><a rel="noopener" target="_blank" href="http://blog.ippon.fr/2018/06/26/architecture-lambda-cassandra-et-synchronisation-des-donnees/">Architecture Lambda, Cassandra et synchronisation des données</a> : après un petit rappel sur l'architecture lambda, l'article présente <em>les différents patterns permettant de garantir qu’une donnée stockée dans Cassandra et pouvant être mise à jour de façon concurrente par un flux batch et un flux temps réel ait toujours la valeur la plus fraîche</em>.</li>
<li><a rel="noopener" target="_blank" href="https://www.instaclustr.com/why-we-built-apache-cassandra-operator-to-run-on-kubernetes/">Why We Built an Open Source Cassandra-Operator to Run Apache Cassandra on Kubernetes</a> : Instaclustr propose un Operator Cassandra pour déployer plus faciment Cassandra sur Kubernetes.</li>
<li><a rel="noopener" target="_blank" href="https://registry.terraform.io/modules/influxdata/influxdb/aws/">Terraform InfluxDB Module</a> : InfluxData a annoncé un <a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/hashicorp-and-influxdata-better-together/">partenariat avec Hashicorp</a> et le premier livrable est un module terraform permettant de déployer InfluxDB OSS ou Entreprise sur AWS.</li>
</ul>
<h3 id="open-web">(Open)Web</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://githubengineering.com/removing-jquery-from-github-frontend/">Removing jQuery from GitHub.com frontend</a> : Github raconte son adoption jusqu'au retrait de JQuery de sa base de code. Il est intéressant de voir que les standards ont permis de remplacer pas mal de fonctionnalités et il reste encore quelques polyfills.</li>
<li><a rel="noopener" target="_blank" href="https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fbb5d4">The Cost Of JavaScript In 2018</a> : l'utilisation de Javascript, en particulier sur mobile, n'est pas neutre. L'article revoit les bonnes et mauvaises pratiques.</li>
<li><a rel="noopener" target="_blank" href="https://github.com/dominictarr/your-web-app-is-bloated">your web app is bloated</a> : Etude sur la consommation de mémoire de différnts sites sous Firefox - cela va de 0.8Mo (Gmail Vintage) à 200 Mo (Google Inbox)</li>
</ul>
<h3 id="python">Python</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://julien.danjou.info/high-performance-in-python-with-zero-copy-and-the-buffer-protocol/">High-Performance in Python with Zero-Copy and the Buffer Protocol</a> : astuce utile d'utiliser <code>memoryview</code> pour accélerer les accès aux données et éviter de l'usage inutile de mémoire.</li>
</ul>
<h3 id="astuce-du-mois">Astuce du mois</h3>
<p>J'ai cru à un bug ansible sur les surcharges de variables mais en fait non - pour des variables de même niveau (ici <code>group_vars</code>), l'ordre de fusion des variables est :</p>
<ol>
<li>“all.yaml” est chargé en premier</li>
<li>Les autres fichiers yaml sont chargés par <em>ordre alphabétique</em> et s’écrase les uns les autres le cas échéant</li>
</ol>
<p>Donc si on a :</p>
<p><code>all.yaml</code>:</p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">false
</span></code></pre>
<p><code>cassandra.yaml</code>:</p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">true
</span></code></pre>
<p>et <code>infra.yaml</code>:</p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">false
</span></code></pre>
<p>alors <code>datadog</code> est à <code>false</code> à la fin lorsqu’on exécute le playbook.</p>
<p>A l’inverse:</p>
<p><code>all.yaml</code></p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">false
</span></code></pre>
<p><code>infra.yaml</code>:</p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">false
</span></code></pre>
<p><code>swarm.yaml</code>:</p>
<pre data-lang="yaml" style="background-color:#2b303b;color:#c0c5ce;" class="language-yaml "><code class="language-yaml" data-lang="yaml"><span style="color:#bf616a;">monitoring</span><span>:
</span><span> </span><span style="color:#bf616a;">datadog</span><span>: </span><span style="color:#d08770;">true
</span></code></pre>
<p>alors <code>datadog</code> est à <code>true</code> à la fin lorsqu’on exécute le playbook.</p>
<p>Sources :</p>
<ul>
<li><a rel="noopener" target="_blank" href="https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable">Variables - Variable Precedence: Where Should I Put A Variable?</a></li>
<li><a rel="noopener" target="_blank" href="https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html?highlight=priority#how-variables-are-merged">Working with Inventory - How Variables Are Merged</a></li>
</ul>
Web, Ops & Data - Juin 20182018-06-27T09:30:00+02:002018-06-27T09:30:00+02:00
Unknown
https://cerenit.fr/blog/web-ops-and-data-juin-2018/<h3 id="big-data-machine-learning-co">Big Data, Machine Learning & co</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://www.confluent.io/blog/level-up-your-ksql/">Level Up Your KSQL</a> : Confluent met à disposition une série de vidéos pour la prise en main de KSQL.</li>
<li><a rel="noopener" target="_blank" href="https://www.confluent.io/blog/rounding-up-kafka-summit-london-2018/">Rounding Up Kafka Summit London 2018</a> : Confluent a égalemient mis à disposition les vidéos du dernier Kafka Summit à Londres.</li>
<li><a rel="noopener" target="_blank" href="https://www.confluent.io/blog/introducing-confluent-hub/">Introducing Confluent Hub</a> : Confluent lance une plateforme communautaire autour de Kafka Connect.</li>
</ul>
<h3 id="cloud">Cloud</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://aws.amazon.com/fr/blogs/aws/amazon-eks-now-generally-available/">Amazon EKS – Now Generally Available</a> : l'offre managée Kubernetes d'AWS sort en version stable.</li>
<li><a rel="noopener" target="_blank" href="https://azure.microsoft.com/blog/azure-kubernetes-service-aks-ga-new-regions-new-features-new-productivity/">Azure Kubernetes Service (AKS) GA – New regions, more features, increased productivity</a> : Pas de jaloux - Azure est aussi prêt pour son offre managée kubernetes.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/hashicorp-announces-terraform-support-aws-kubernetes">Announcing Terraform Support for Kubernetes Service on AWS</a> : Hashicorp profite de l'annonce d'AWS pour annoncer également que Terraform permet de provisionner un cluster EKS.</li>
<li><a rel="noopener" target="_blank" href="https://blog.hasura.io/gke-vs-aks-vs-eks-411f080640dc">GKE vs AKS vs EKS – Hasura</a> : comparatif synthétique des solutions managées kubernetes de Google, Azure et AWS.</li>
</ul>
<h3 id="container-orchestration">Container & Orchestration</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.docker.com/2018/06/compose-easier-to-use-with-application-packages/">Making Compose Easier to Use with Application Packages</a> : Docker Inc. sort un nouveau produit appelé "docker-app". Il se veut comme une surcouche à docker-compose en permettant d'injecter des variables dans vos fichiers docker-compose.yml. Ainsi, vous n'auriez plus qu'un seul fichier docker-compose avec ses variables et les valeurs de ses variables dans des fichiers additionnels. Lors de l'exécution du container, docker-app réconcilie les deux et lance le conteneur avec les bonnes valeurs. Docker Swarm et Kubernetes seraient supportés si l'on en croit les exemples. Rigolo, sur le principe, c'est exactement ce que je fais pour une mission actuellement... </li>
<li><a rel="noopener" target="_blank" href="https://blog.zenika.com/2018/06/25/decouverte-de-buildkit/">Découverte de Buildkit</a> : dans le cadre du découpage de Docker en programme modulaire indépendant, Moby avait lancé Buildkit. Il s'agit du builder d'images. L'article présente son fonctionnement et son architecture.</li>
<li><a rel="noopener" target="_blank" href="https://www.hashicorp.com/blog/consul-1-2-service-mesh">HashiCorp Consul 1.2: Service Mesh</a> : Hashicorp sort en beta son offre de service mesh basé sur Consul. Après le "Service Discovery" et le "Service Configuration", voilà le Service Mesh. A voir dans la vraie vie mais on retrouve apparemment pas mal de fonctionnalités disponibles dans <a rel="noopener" target="_blank" href="https://istio.io/">Istio</a>.</li>
</ul>
<h3 id="no-sql">(No)SQL</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://vitess.io/">Vitess</a> : J'en avais entendu parler, j'ai profité <a rel="noopener" target="_blank" href="https://softwareengineeringdaily.com/2018/05/15/vitess-scaling-mysql-with-sugu-sougoumarane/">d'un épisode de Software Engineering Daily</a> pour en savoir un petit peu plus : Je ne suis pas encore au bout du podcast mais cela semble être une couche entre l’application et la DB - elle analyse la requête et la distribue ensuite au sein du cluster. Vitess permettrait notamment que le développeur n’ait pas à connaitre la logique de clustering/sharding des données. L’overhead n’a pas encore été mentionné.</li>
<li><a rel="noopener" target="_blank" href="https://groups.google.com/forum/#!topic/redis-db/9FcwPtutyyQ">Redis 5.0 RC1</a> : la version 5.0 de <a rel="noopener" target="_blank" href="https://redis.io/">Redis</a> pointe le bout de son nez avec notamment le type de donnée Stream - cf <a rel="noopener" target="_blank" href="https://redis.io/topics/streams-intro">Introduction to redis streams</a></li>
<li><a rel="noopener" target="_blank" href="https://medium.com/blablacar-tech/streaming-data-out-of-the-monolith-building-a-highly-reliable-cdc-stack-d71599131acb">Streaming Data out of the Monolith: Building a Highly Reliable CDC Stack</a> : un CDC, Change Data Capture, est un système qui capture les changements de données (INSERT, UPDATE, DELETE) d'une source de données. BlaBlaCar explique ici comment ils ont mis en place leur CDC sur la base de <a rel="noopener" target="_blank" href="http://debezium.io/">Debezium</a> et Kafka. Un des défis à relever étant la gestion de la déduplication des données.</li>
<li><a rel="noopener" target="_blank" href="https://www.elastic.co/blog/elasticsearch-6-3-0-released">Elasticsearch 6.3.0 Released</a> : plein de nouveautés mais la plus symoblique étant un début de support d'un requêtage SQL dans Elasticsearch.</li>
</ul>
<h3 id="securite">Sécurité</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://medium.com/@brannondorsey/attacking-private-networks-from-the-internet-with-dns-rebinding-ea7098a2d325">Attacking Private Networks from the Internet with DNS Rebinding</a> : <em>TL;DR Following the wrong link could allow remote attackers to control your WiFi router, Google Home, Roku, Sonos speakers, home thermostats and more.</em> il est donc possible d'abuser un navigateur via un DNS malicieux et donc être en mesure de scanner le réseau local de la personne abusée. Il faut donc considérer le réseau local comme une zone hostile et y appliquer les bonnes pratiques habituelles (authentification, urls en https, etc)</li>
</ul>
<h3 id="timeseries">Timeseries</h3>
<ul>
<li><a rel="noopener" target="_blank" href="https://blog.octo.com/les-capacites-dalerting-de-kapacitor/">Les capacités d’alerting de Kapacitor</a> : un billet sur l'utilisation de kapacitor pour générer des alertes. J'aurais bien aimé pouvoir l'avoir écrit...</li>
<li><a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/influxdata-log-release/">“Metrics First” Approach to Log Analysis</a> : avec la version 1.7 de Telegraf (l'agent de collecte), un nouveau <a rel="noopener" target="_blank" href="https://github.com/influxdata/telegraf/tree/master/plugins/inputs/syslog">plugin syslog</a> permet d'exposer les logs sous la forme d'événements. Et avec <a rel="noopener" target="_blank" href="https://www.influxdata.com/blog/chronograf-1-5-and-kapacitor-1-5-released/">Chonograf 1.5</a>, il est possible de voir ses données sous un format tabulaire. Pour autant, TICK n'a pas vocation à devenir une centrale de logs (à la ELK & co).</li>
</ul>
<h3 id="astuce-s-du-mois">Astuce(s) du mois</h3>
<p>Faîtes-vous plaisir et écouter le podcast <a rel="noopener" target="_blank" href="http://artisandeveloppeur.fr/blog/">Artisan Développeur</a> - dans des formats de 10mn environ, un sujet autour de l'agilité, des tests, du TDD, de la responsabilité des développeurs, de SaFE, et de tout ce qui fait partie de notre quotidien de développeurs sont abordés. Depuis quelques épisodes, cela se fait en duo avec d'autres personnes (comme <a rel="noopener" target="_blank" href="https://jp-lambert.me/">JP Lambert</a>) ce qui rend les échanges encore plus intéressants. Vous retrouvez le podcast sur Soundcloud, Pocketcasts, etc.</p>