Cloud

29/01/2020

Web, Ops & Data - Janvier 2020

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.

timeseries cloud ovh s3 object storage delta git diff faas containerd raspberrypi influxdb vscode flux warp10 observabilité docker cnab postgresql grafana
27/03/2019

Web, Ops & Data - Mars 2019

CI/CD Introducing the Continuous Delivery Foundation, the new home for Tekton, Jenkins, Jenkins X and Spinnaker : Google, Gitlab, CloudBees et bien d’autres acteurs du monde de la CI/CD lancent la fondation “Countinuous Delivery”. Au delà des projets qui y seront hébergés (en commençant par Jenkins, Jenkins X, Tekton et Spinnaker), la fondation a pour but de prendre en charge l’ensemble du cycle de développement/déploiement d’une application et surtout de favoriser les bonnes pratiques associées. La fondation fera son premier “CDF Summit” la veille de KubeCon Barcelone (où j’aurais le plaisir de me rendre). Cloud / Scaleway Nouvelles instances General Purpose avec des processeurs haut de gamme : Scaleway renouvelle son offre de machines dédiées avec des machines allant jusqu’à 48 coeurs et 256Go de RAM. Introducing GPU Instances: Using Deep Learning to Obtain Frontal Rendering of Facial Images : Scaleway étoffe son offre cloud avec des instances GPU - le billet présente comment faire de la reconnaissance d’images. Object Storage in General Availability : Scaleway a annoncé également plus tôt dans le mois la disponibilité de son service de stockage object compatible avec l’API d’AWS S3. Cloud vs OSS Nous en avons beaucoup parlé dans l’épisode 69 de BigData Hebdo - je mets juste les liens et vous renvoie à notre discussion sur le sujet.

continous-delivery continous integration cloud opensource* scaleway gpu aws redis elasticsearch grafana kubernetes traefik k3s k3d k9s
30/01/2019

Web, Ops & Data - Janvier 2019

Cloud The CTO of $4.4 billion MongoDB explains why he’s ’not terribly worried’ that Amazon’s cloud is encroaching on its turf with a new database : AWS a annoncé DocumentDB, compatible avec MongoDB. Le CTO de MongoDB revient sur cette annonce et explique en quoi il n’est pas terrifié : la nouvelle licence de MongoDB ne permet pas à AWS d’intégrer une version plus récente que la version 3.6, cela montre l’attrait des développeurs pour MongoDB, etc. Techcrunch va jusqu’à titrer : AWS gives open source the middle finger. Container et orchestration APIServer dry-run and kubectl diff : Un des soucis majeurs avec Kubernetes est l’écriture de fichiers YAML où la moindre faute peut s’insérer très rapidement et à l’insu de son auteur. Le billet présente les efforts fait pour ajouter un mode “dry run” qui simule les modifications et retourne l’objet qui aurait du être créé. Dans la même veine, un kubectl diff montrera les différences entre la ressource existante et celle décrite dans la nouvelle version du fichier yaml. 9 Kubernetes Security Best Practices Everyone Must Follow : rien de transcendental mais une petite piqure de rappel après la faille majeure découverte en fin d’année. Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what? : billet synthétique sur les avantages et inconvénients d’utiliser un service de type ClusterIP, NodePort, LoadBalancer ou Ingress. Sachant que l’on peut combiner LoadBalancer & Ingress !. Why Is Storage On Kubernetes So Hard? : Les données, c’est tout sauf stateless et le stockage distribué c’est pas facile non plus. Le billet revient sur les logiques de stockages sous Kubernetes (PV, PVC), la couche d’interface de stockage CSI et sur des solutions comme Ceph ou Rook. Stateful Kubernetes with Saad Ali - Software Engineering Daily : une présentation globale des Volumes, Persistent Volume, Persistent Volume Claims et des StorageClass sous Kubernetes et de l’évolution de la gestion du stockage sous k8s Kubernetes Podcast - #36 Rook : une présentation de Rook, un opérateur k8s de gestion de stockage (Ceph, NFS, etc). Data Machine Learning – 7 astuces pour scaler Python sur de grands datasets : si les 3 premières relèvent de l’optimisation de code, les 4 suivantes sont plus intéressantes : “downcaster” les variables, stocker vos CSV au format parqet, utiliser dask plutôt que pandaas pour avoir le parallélisme et choisir un modèle adapté. Cartographier le manteau neigeux avec Python : un exmple sympa et de saison de manipulation de données et de restituion graphique avec Python. Researchers Fool ReCAPTCHA With Google’s Own Speech-To-Text Service : des chercheurs expliquent comment ils passent le test de ReCAPTCHA avec plus de 80% de succès en demandant la version audio du captcha, la soumettant ensuite à l’API Google Speech To Text pour saisir ensuite le résultat. data Artisans + Alibaba: A new chapter for Open Source Big Data : data Artisans est la compagnie derrière le projet Flink. C’est un grand coup pour Alibaba et le signe que l’Asie part à la conquête du monde occidental. Nous occidentaux oublions souvent de regarder ce qui se passe à l’Est pour se concentrer sur l’Internet Occidental (Western Internet). Une actualité récente indiquait d’ailleurs qu’Alibaba était passé 4ème fournisseur de Cloud mondial - même si comme d’habitude, tout dépend des critères. IDE Liste de plugins pour éditeurs & IDE permettant de colorer les indentations et les parenthèses/accolades/… : de quoi faciliter la lecture du code, mais il faut parfois ajuster les couleurs suivant le thème de votre éditeur/IDE. Infrastructure (as Code) Tester son code d’infrastructure avec Terratest : le billet présente terratest, un outil en go qui permet de tester du code Terraform, des templates Packer ou encore des images Docker. La conclusion montre qu’il n’est pas parfait certes mais peut être intéressant. Infrastructure as (real) code : Faire de l’IaC, ce n’est pas que rédiger des fichiers YAML. Le billet montre comment on pourrait avoir de l’IaC avec du vrai code (du go en l’occurence). Avoir un vrai langage et un moteur de template semble en effet plus complet que juste du YAML pour lequel les validateurs sont assez faibles et la probabilité d’écrire une faute assez importante. Reactive planning is a cloud native pattern : Le reactive planning tiendrait dans l’idée que pour une action donnée, il va y avoir un plan et que ce plan est constitué d’une multitude de petites étapes. Chaque étape informant la/les précédentes et voire globalement sur l’état de l’étape en cours et peut décider des étapes suivantes. Langages Why you should use pyenv + Pipenv for your Python projects : Une solution propre pour mieux gérer ses versions de python installées sur son poste / sur un serveur avec pyenv et pipenv (mix de pip et virtualenv) pour gérer les dépendances. A tester ! Pipenv: promises a lot, delivers very little : le billet nuance les propos autour de pipenv comme le nouveau gestionnaire officiel (autopromu) et fait le point sur l’outil. shiv : Shiv permet de packager des applications python en une seule archive zip avec toutes les dépendances incluses. Disponible pour Windows / Linux / OSX, il faut néanmoins builder sur l’OS Cible pour que cela fonctionne - pas de “build one, run everywhere”. Logs Using Logstash to Split Data and Send it to Multiple Outputs : un exemple bien illustré pour traiter un fichier, l’enrichir de deux façons différentes et l’envoyer à deux endroits distincts. Cela tombe bien, j’avais un fichier de log à séparer en deux… (No)SQL Bye bye Mongo, Hello Postgres : The Guardian raconte sa migration de MongoDB vers Postgres de façon assez détaillée. Intéressant.

machine learning recaptcha flink alibaba cloud mongodb aws documentdb postgres test iac kubernetes ingress clusterip loadbalancer volume persistent volume claim nodeport logstash python pip virtualenv pipenv pyenv
26/12/2018

Web, Ops & Data - Décembre 2018

Cloud AWS Re:Invent 2018 : Difficle de passer à coté des annonces d’AWS - AWS re:Invent 2018 - Jour 1, AWS re:Invent 2018 - Jour 2, AWS re:Invent - Jour 3, AWS re:Invent - Jour 4 : le résumé des sorties de la conférence AWS re:Invent 2018 par le cabinet Ippon. #9 - Quentin Adam - Horacio Gonzales - Steven Le-Roux - La guerre du cloud : dans cet épisoide du podcast databuzzword, il est question de guerre du cloud, du multi-cloud, d’AWS et de ses “partenariats” et du cloud chinois et russe. Episode 63 : “Re-Invent le Cloud” : L’épisode 63 de BigDataHebdo s’intéresse aussi aux annonces de la conférence d’AWS et discute aussi d’AWS et du monde de l’opensource. License Changes for Confluent Platform : la sortie de l’offre Kafka managé n’a pas plus à Confluent. A l’instar de Redis et MongoDB, c’est au tour de Confluent d’adopter une licence plus restrictive pour les fournisseurs de cloud dans le cadre de la distribution de sa platforme Confluent. La licence de Kafka est inchangé, cela concerne l’API Rest, la Schema REgistry, KSQL et des connecteurs confluent. Copyleft and community licenses are not without merit, but they are a dead end : Paul Dix, le CTO D’InfluxData donne son avis sur les changements de licences en cours. Un point intéressant est que ce changement de license vers des licences de type “Community” va surtout pénaliser les développeurs en créant une incertitude autour du mode de collaboration/contribution et peuvent aussi chercher à créer un monopole pour les services SasS créés par l’éditeur du produit. Oui il est dommage qu’AWS par ex ne contribue pas à Kafka/Confluent dans le cadre de son offre managée, mais par la même occasion Confluent se crée un monopole de fait sur l’offre SaaS autour de KSQL. Est-ce vraiment mieux ? En ce sens, Paul préfère alors soit du tout open ou tout fermé - mais que la solution du milieu n’est pas si idéale que ça (surtout pour des couches basses des produits sur lequel nous sommes censés bâtir quelque chose). We need Sustainable Free and Open Source Communities : Pour finir sur une note plus optimiste, l’auteur cherche à renverser la conversation en regardant comment créer des communautés soutenables et faire en sorte que la licence permette de soutenir la communauté. Pas sur que les libristes les plus convaincus n’y voient pas une atteinte aux libertés du logiciel justement : “Any commercial activity around the software must further the sustainability of the community, and the potential for commercial benefit must be available to all. The incentives in any commercial model must bend away from the creation of proprietary downstream software” Container et orchestration Introducing Traefik Enterprise Edition : le reverse proxy Traefik voit apparaitre une version Entreprise qui se veut plus distribuée avec l’apparition d’un “data plane” qui gère les connexions et joue le rôle de reverse proxy et un “control plane” qui coordonne le bon fonctionnement des noeuds. CNCF to Host etcd : la base clé/valeur distribuée etcd et qui sert notamment de datastore pour kubernetes va être hébergé par la CNCF. Elle fut développée initiallement par CoreOS, désormais propriété de Red Hat (et donc IBM). [Podcast] PodCTL – Kube Security, Kube 1.13 and KubeCon : MetalLB : MetalLB propose de fournir un service de type load balancer prévu pour cluster Kubernetes dans un contexte bare metal (ie non cloud). MetalLB, with David Anderson : Episode du Kubernetes Podcast sur MetalLB avec son auteur pour une présentation de la solution. Dataviz Grafana v5.4 Released : une version de consolidation avec des améliorations sur la temporisation des alertes avant de l’émettre. D’autres améliorations sur l’intégration Google Stackdriver, l’éditeur de requêtes MySQL et des améliorations sur les panels et des préférences d’équipes. Langages Pourquoi mettre à jour son Python (régulièrement) : après un petit point sur les versions disponibles et par défaut dans vos distributions préférées, une piste liste des modules sympathiques est donnée avec des exemples pour apprécier la chose. Il ne me reste plus qu’à vous souhaiter de bonnes fêtes de fin d’année et à vous retrouver l’année prochaine pour de nouvelles aventures.

python grafana aws confluence licence opensource traefik windows openssh cloud etcd cncf vault hashicorp test kubernetes load-balancer metallb chrome edge
07/11/2018

Voxxeddays Microservices Paris

J’ai participé à la première édition de Voxxeddays Microservices Paris qui a eu lieu du 29 au 31 oct, sous la forme de deux jours de conférences et un jour de workshop. Je ne suis allé qu’aux deux jours de conférences. Globalement : Je crois que c’est la première conférence tech où je vois autant de femmes témoigner - après recomptage, il n’y en avait que 8 sur 45 speakers, mais 2 des 3 keynoters étaient des femmes. 1/6 c’est encore peu mais c’est mieux que d’habitude. L’assistance m’a aussi paru plus féminine que d’habitude. Le mardi, la majorité des conférences auxquelles j’ai assisté étaient assurées par des femmes. Deux journées denses avec des formats de conférences variées (15/25/45 minutes) et des sujets variés également (Techno, Retours d’exéprience, Architecture, Problématiques, etc). Sur les keynotes qui devaient articuler le passé, le présent et le futur des microservices :

microservice voxxeddays cloud distributed systems ddd bounded context
26/09/2018

Web, Ops & Data - Septembre 2018

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 numéro de rentrée (épisode 59) du BigData Hebdo. Cloud Multi-Cloud Is a Trap : 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”. Containers et Orchestration The Future of Docker Swarm : 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. Docker Config, how to always use base image with Docker Swarm! : Depuis Docker 17.06 et dans un contexte Swarm, il est possibile d’utiliser les configs. 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. Pros and Cons of running all Docker Swarm nodes as Managers? : 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. Traefik 1.7 — Yet Another Slice of Awesomeness : 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. DevOps Ansible Tips : Reboot & Continue : 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. IA Finding and fixing software bugs automatically with SapFix and Sapienz : 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. Ingénierie Software disenchantment : “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.” - 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”. (No)SQL So you have a broken Cassandra SSTable file? : 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 nodetool scrub <keysapce> <table> a été suffisant. Incremental Repair Improvements in Cassandra 4 : 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. Introducing cstar: The Spotify Cassandra orchestration tool, now open source : Spotify ouvre le code de son shell distribué pour Cassandra, sous le nom de cstar 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. Architecture Lambda, Cassandra et synchronisation des données : après un petit rappel sur l’architecture lambda, l’article présente 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. Why We Built an Open Source Cassandra-Operator to Run Apache Cassandra on Kubernetes : Instaclustr propose un Operator Cassandra pour déployer plus faciment Cassandra sur Kubernetes. Terraform InfluxDB Module : InfluxData a annoncé un partenariat avec Hashicorp et le premier livrable est un module terraform permettant de déployer InfluxDB OSS ou Entreprise sur AWS. (Open)Web Removing jQuery from GitHub.com frontend : 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. The Cost Of JavaScript In 2018 : l’utilisation de Javascript, en particulier sur mobile, n’est pas neutre. L’article revoit les bonnes et mauvaises pratiques. your web app is bloated : Etude sur la consommation de mémoire de différnts sites sous Firefox - cela va de 0.8Mo (Gmail Vintage) à 200 Mo (Google Inbox) Python High-Performance in Python with Zero-Copy and the Buffer Protocol : astuce utile d’utiliser memoryview pour accélerer les accès aux données et éviter de l’usage inutile de mémoire. Astuce du mois J’ai cru à un bug ansible sur les surcharges de variables mais en fait non - pour des variables de même niveau (ici group_vars), l’ordre de fusion des variables est :

cassandra docker swarm python jquery lambda ansible influxdb terraform hashicorp facebook ia engineering cloud
29/08/2018

Web, Ops & Data - Aout 2018

Cloud & Open Source Redis Labs - Commons Clause - Redis will remain BSD licensed - Redis is not “open core”: ça chauffe entre l’OSS et les fournisseurs de cloud - pour que les fournisseurs de cloud évitent de se faire de l’argent sur le dos des solutions Open Source et sans contribuer en retour, Redis Labs va changer la licence de certains modules (et pas de tous le logiciel) pour limiter la revente via les fournisseurs de Cloud. It’s time for the open source community to get real : réflexion intéressance de Paul Dix (CTO InfluxData) sur le sujet du financement de l’Open Source au regard de l’événement Redis Labs. Container et orchestration Kubernetes is Now Available In Docker Desktop Stable Channel Announcing Istio 1.0 : la solution de service mesh à la mode vient de passer l’étape de la version 1.0 - Les release notes de la 1.0 vous donneront le détail. Reste à savoir si vous devez ou non utiliser une solution de Service Mesh… Kubernetes : comment écrire un déploiemnt : Billet faisant le tour des principales options de l’objet “Deployment” sous Kubernetes. Certaines options sont toutefois un peu trop résumées. (Big) Data & (No)SQL Reaper 1.2 Released : l’outil de gestion des “réparations” des données d’un keyspace Cassandra, initialement réalisé par Spotify et désormais maintenu par The Last Pickle, vient de sortir en version 1.2 avec son lot d’améliorations. Pour un client, il a été déployé, ce qui me permet de pouvoir contribuer modestement (#472, #473, #474) Re-Bootstrapping Without Bootstrapping : que faire lorsqu’un noeud d’un cluster Cassandra est sorti depuis plus longtemps que le temps de grace défini ? Le billet répond à la question pour ne pas repartir de zéro et le faire de façon “marginale”. Introducing Confluent Platform 5.0 : à l’occasion de la sortie d’Apache Kafka 2.0, une nouvelle version de la plateforme Confluent sort également avec les dernières nouveautés de KSQL, des améliorations coté stabilité/sécurité (Auth LDAP, Disaster Recovery, etc). Allez lire les notes pour en savoir plus et voir ce qui relève de la version 0SS et de la version Entreprise. Showdown: MySQL 8 vs PostgreSQL 10 – Hacker Noon : l’article confirme qu’avec MySQL 8.0, MySQL rattraperait Postgres au niveau des grandes fonctionnalités de base. DevOps The Site Reliability Workbook : Google sort un complément à son livre “Site Reliability Engineering”. Le livre est sensé donner des conseils pratiques ou partager des eemples issus de la réalité dans le cadre de la mise en place d’une démarche SRE. Timeseries Querying Prometheus with Flux (video - slides) : Paul Dix, CTO d’InfluxData, montre comment il est possible de requêter des données issues de Prometheus via Flux, le nouveau langage qu’InfluxData est en train de créer et dont l’objectif est de pouvoir manipuler des données temporelles. Ce cas permet de montrer l’utilisation de Flux dans un contexte autre qu’InfluxDB. CNCF to Host OpenMetrics in the Sandbox : OpenMetrics est une initiative de standardisation des formats de métriques - le projet rentre donc dans l’initiative de la CNCF. OpenMetrics to Join the CNCF ; Paul Dix a annoncé le support de ce format comme “citoyen de première classe” pour une version ultérieure d’InfluxDB. Le billet fait l’état des lieux du support au niveau de Telegrad et de Kapacitor. Prometheus Graduates Within CNCF : toujours coté CNCF, Prometheus, la plateforme de métriques, est le second projet (après Kubernetes) à passer au niveau officiel. TimescaleDB vs. InfluxDB: purpose built differently for time-series data : Comparaison par les gens de TimescaleDB entre leur produit TimescaleDB et InfluxDB. Même s"il est forcément un peu biaisé, il reste intéressant.

docker kubernetes cassandra reaper istio service-mesh cloud opensource redis kafka mysql postgres confluent openmetrics prometheus fluxlang influxdb timescaledb
30/08/2017

Web, Ops & Data - Aout 2017

Cloud Microsoft joins Cloud Native Computing Foundation : Microsoft continue à embrasser l’open source et cela se traduit par l’annonce indiquant que la société rejoint la Cloud Native Computing Foundation. Cette fondation héberge des projets comme Kubernetes et ses composants, ainsi que plus récemment les solutions de conteneurisation utilisée par Docker et CoreOS (containerd, rkt). Amazon (AWS) rejoint la fondation également. AWS Lambda vs. Azure Functions vs. Google Functions : un rappel sur le fonctionnement des architectures serverless et des principales fonctionnalités de chacun des fournisseurs (AWS, Google, Microsoft) AWS Summit New York – Summary of Announcements : retrouver les annonces et la keynote du AWS Summit de New York. Container & Orchestration Kubernetes at Github : retrospective de la migration de Github vers Kubernetes. Announcing the New Release of Docker Enterprise Edition : au programme de cette version 17.06, notamment le support multi-architecture (Linux,Windows 2016, IBM Z Systems) qui devrait lever les limites identifiées de mon retour sur docker dans un contexte hybride Linux/Windows. Cette version apporte également des améliorations coté sécurité (gestion de rôles, etc) Documentation Read & Write The Doc : les slides d’un talk donnant de bonnes pratiques sur la manière et les pratiques à adopter/éviter en matière de documentation. Elasticsearch Installing the Elastic Stack on Windows : Dans le cadre de la sortie de Elasticsearch 5.5, le support de l’installateur Windows est officiel. Ce billet montre comment installer Elasticsearch, Kibana et Filebeat sous un environnement Windows. Taking A Look At Kibana’s Time Series Visual Builder : la future version 6 de Kibana va se doter d’un visualisateur orienté données temporelles (time series). L’auteur du billet rappelle que c’était un point faible de Kibana jusqu’à présent (vis à vis de Grafana notamment), que les essais avec Timelion ne répondaient que partiellement à ce besoin mais que là, Elastic semble être sur le point de rattraper son retard. A évaluer même si une plateforme TICK+Grafana (Telegraf, InfluxDB, Chronograf, Kapacitor) demandera moins de ressources qu’une stack Elastic/Kibana avec certes des capacités d’indexation moins forte mais le besoin n’est pas forcément là… Elasticsearch: la grande migration : retour d’expérience des équipes Tech de M6 Web sur la migration de leur cluster Elasticsearch de la version 1.7 vers 5.2. Small, Medium, or Large - Scaling Elasticsearch and Evolving the Elastic Stack to Fit : Elastic publie un billet intéressant donnant différents types de configuration & architectures pour des besoins autour d’ELK allant de simple à très complexe et fournir des pointeurs vers différentes ressources utiles. Starting Down the Path of APM for the Elastic Stack : les prémices de la fonctionnalité APM (Application Performance Monitoring) d’Elastic suite au rachat d’Opbeat. Pour le moment, il s’agit de la pré-sortie des version serveurs et des clients ; pour la nouvelle UI, il va falloir attendre encore un peu mais des dashboards sont déjà accessibles via Kibana. Introducing Index Sorting in Elasticsearch 6.0 : Dans sa version 6.0 à venir, il sera possible de définir des index triés dans Elasticsearch. Cette définition du tri se fera lors de la création de l’index. Si cela doit permettre de sortir des résultats plus rapidement, dans certains cas, cela peut pénaliser sérieusement la performance d’Elasticsearch. A utiliser à bon escient ! Full Stack Développeur full stack ? Oui… mais… : enfin un bon article démystifiant le concept parfois fumeux de “full-stack” : “Quand nous parlons de profil full stack, cela signifie que le développeur est spécialisé dans certains domaines, tout en ayant des connaissances sur d’autres sujets. En général, nous considérons un développeur full stack comme maîtrisant au moins 3-4 sujets. Mais cela ne couvre pas l’ensemble des besoins.” NoSQL Announcing RethinkDB 2.3.6: the first release under community governance : après l’annonce de la mort de la société commerciale et la transition vers la Linux Foundation, une version de maintenance qui fait plaisir à voir en espérant que le projet continuera à évoluer par la suite. Un sacré premiers pas et une version 2.4 est annoncée dans les tuyaux ! Open Web Firefox, le Web et la fin de Flash (versin anglaise) : 2020, ce sera enfin la fin de Flash, Adobe l’a décidé et s’est concerté avec les éditeurs de navigateurs pour gérer sa fin de vie. La même annonce, coté Microsoft pour IE/Edge, Google pour Chrome et Apple pour Safari/Webkit Sécurité API Security Checklist : une check-list pour les aspects sécurité d’une API qui reprend les principaux points: authentification, traitement des entrée/sorties, infrastructure, etc. CSP Cheat Sheet : Une page de présentation rapide et consise des options de configuraiton liée à CSP (Content Security Policy) Revocation is broken : excellent billet sur les problèmes liés à la révocation de certificats et les nouvelles pistes à venir pour mieux traiter ce sujet. I’m giving up on HPKP : l’auteur explique en quoi HPKP (HTTP Public Key Pinning) est compliqué et dangereux à mettre en place ; à la fin, le jeu n’en vaut pas la chandelle et qu’il vaudrait mieux ne pas tenir compte de cette pratique pour donner une bonne note aux configurations de sécurité des sites web. Il indique aussi les alternatives à venir et leurs avantages sur la solution actuelle. Web Performance Performance des tiers : combien coûte cet emplacement pub ? : les impacts en termes de performance mais aussi de sécurité (vol de données, etc) de l’utilisation de script tiers sur votre site.

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

Web, Ops & Data - Juillet 2017

API Versionning d’API, Zero Downtime Deployment et migration SQL : théorie et cas pratique : un retour d’expérience bien illustré sur la migration d’une API avec changement de modèle de données et ce sans downtime. Les principaux points d’écueil et les stratégies possibles sont présentées. A vous d’adapter ensuite à votre contexte. Cloud Choosing the right compute option in GCP: a decision tree : Google fourni un arbre de décision pour la/les solution(s) à utiliser sur CGP pour votre prochain projet. Mapping AWS, Google Cloud, Azure Services to Big Data Warehouse Architecture : panorama des solutions Opensource et des implémentations Cloud (AWS, GCP, Azure) pour différents besoins autour des traitements de données (ingestion, stockage, streaming, batch, machine learning, etc) Map AWS services to Google Cloud Platform products : les correspondances entre les services AWS et GCP. Map Microsoft Azure services to Google Cloud Platform products : la même carte en version Azure / GCP Container & orchrestration Kubernetes 1.7: Security Hardening, Stateful Application Updates and Extensibility : nouvelle version de Kubernetes avec son lot d’améliorations coté sécurité (communication réseau, gestion des secrets, etc) et stockage principalement. Announcing Docker 17.06 Community Edition (CE) : cette version apporte essentiellement le multi-stage builds, à savoir la capacité de construire une image docker à partir de plusieurs conteneurs intermédiaires. Ces conteneurs intermédiaires permettent par ex de compiler les différents éléments d’un programme. Pour un programme en go par ex, on peut imaginer un premier conteneur qui build le programme à partir des sources et le conteneur final ne contient que le binaire go. Documentation Making history: writing the docs that need to be written : l’auteur explique l’intérêt qu’il voit à documenter les choses, à raconter l’histoire à l’aune de son expérience sur le projet RabbitMQ. Du partage de connaissance, expliquer les raisons et les logiques de développement, éviter de refaire les mêmes erreurs ou encore la capacité d’accueillir de nouveaux membres dans le projet, je rajouterai le fait de pouvoir oublier ce qui a été fait. En effet, une fois documenté, on peut revenir sur le sujet facilement et libérer sa mémoire pour d’autres sujets (et éviter la dépendance à sa personne). Frontend Why Angular 2/4 Is Too Little, Too Late : “AngularJS was a decent idea in 2012 but in 2017, the JS ecosystem has surged past Angular in maturity, flexibility, and productivity. Thanks to webpack, NPM on the front-end, and a mature ecosystem of tooling and libraries, it is quite easy to maintain a large, flexible, well-engineered SPA with React, Vue, or other lightweight JS libraries, even at enterprise companies with large teams” Tout est dit, React a gagné. Management Combien de développeurs mettre sur un projet : Si la réponse est le moins possible et idéalement un seul, l’intérêt de l’article porte surtout sur le fait de mesurer la productivité au niveau de l’entreprise et plus au niveau du projet. Ce qui change la perspective… La frugalité, le graal de l’entreprise innovante : faire simple (KISS), garder le focus (MVP), en petites équipes autonomes et responsables (agile, lean), prioriser (kanban, agile, lean), et aller à l’encontre des habitudes du toujours plus de ressources / complexité / … et qui sont au final votre véritable ennemi et ne vous garantissent pas le succès de votre projet. Redis Episode 41 : Redis avec Damien Krotkine : un épisode thématique de Big Data Hebdo, le podcast autour du big data, sur la solution Redis. Sécurité How to revoke a Let’s Encrypt certificate : s’il est aisé d’obtenir de nouveaux certificats avec Let’s Encrypt, il peut y voir des cas où l’on veut révoquer un certificat. Le billet explique comment procéder. Wildcard Certificates Coming January 2018 : Let’s Encrypt va fournir des certificats wildcard (*.domaine.tld) à compter de Janvier 2018, et ce gratuitement. Vie Privée GDPR, les actions indispensables de conformité (étude longue) : le billet rappelle les changements de contexte qui ont conduit à ce nouveau réglement. Il parcourt les principales obligations et sensibilise sur les différents sujetS. (dommage que les actions de la souris (séléction, click-droit, etc) soient interdits sur le site…) GDPR dans la pratique : un autre épisode de Big Data Hebdo consacré à la GDPR avec une revue de la réforme à venir avec des bonnes pratiques et aussi pour une fois une présentation de cette réforme comme étant une opportunité. La CNIL propose d’ailleurs un guide en 6 étapes et un guide pour les professionnels indiquant les changements et impacts à venir.

api cloud gcp aws azure microsoft kubernetes docker documentation angularjs management redis sécurité gdpr

Besoin d'un C(P)TO / Architecte « hands-on » ?

On orchestre, on conçoit — et on code aussi. Parlons de votre plateforme, vos données ou votre projet IoT.

Contactez-nous