Restricting Access by Geographical Location using NGINX with Helm

This article explains how you can restrict content distribution to a particular country from services in your Kubernetes cluster, using the GeoIP2 dynamic module. Prerequisites Install NGINX Ingress Controller in your Kubernetes cluster using Helm. Getting the GeoLite2 databases from MaxMind The MaxMind company provides the GeoLite2 free IP geolocation databases. You need to create an account on the MaxMind website and generate a license key. Configuring the NGINX Ingress Controller Override the NGINX Helm chart with the following values:

Top 10 des choses à faire avec GraalVM

Présentation du "Top 10 des choses à faire avec GraalVM" au Devoxx FR le 29 septembre 2021. Vous avez certainement entendu parler de GraalVM, notamment ses performances accrues, son intégration dans les frameworks de micro-services comme Quarkus ou Micronaut, ou sa capacité à produire des exécutables standalone - des images natives. Mais GraalVM comporte de nombreuses autres fonctionnalités, et il y a certainement des choses que vous ne connaissez pas encore.

My Journey With Spark On Kubernetes... In Python (Part 3 of 3)

We need to operate Kubernetes as part of a Python client application. So, we need to interact with the Kubernetes REST API. Luckily we do not need to implement the API calls and manage HTTP requests/responses ourselves: we can rely on the Kubernetes Python client, among other officially-supported Kubernetes client libraries for other languages such as Go, Java, .NET, JavaScript and Haskell (there are also a lot of community-maintained client libraries for many languages).

My Journey With Spark On Kubernetes... In Python (Part 1 of 3)

banner

Je vous parle d’un temps
Que les moins de vingt ans
Ne peuvent pas connaître
🎶

Until not long ago, the way to go to run Spark on a cluster was either with Spark’s own standalone cluster manager, Mesos or YARN. In the meantime, the Kingdom of Kubernetes has risen and spread widely.

And when it comes to run Spark on Kubernetes, you now have two choices:

  • Use “native” Spark’s Kubernetes capabilities: Spark can run on clusters managed by Kubernetes since Spark 2.3. Kubernetes support was still flagged as experimental until very recently, but as per SPARK-33005 Kubernetes GA Preparation, Spark on Kubernetes is now fully supported and production ready! 🎊

  • Use the Spark Operator, proposed and maintained by Google, which is still in beta version (and always will be).

This series of 3 articles tells the story of my experiments with both methods, and how I launch Spark applications from Python code.

“Cabin crew, arm doors and cross check”. Let’s go! ✈️

Asguard, a security solution for bringing sensitive code into the Cloud

banner

This article presents a security solution implemented as part of a project led by Stack Labs on behalf of one of our customers in the space sector. The purpose of this project was to migrate a legacy application to Google Cloud (Lift & Shift). It is a sensitive application, as its source code is the fruit of a real savoir-faire in satellite imagery analysis, with algorithms developed in-house over many years.

GraalVM: la JVM polyglotte

Présentation de "GraalVM: la JVM polyglotte" au Toulouse JUG le 12 décembre 2019. “Cette librairie n’est pas disponible dans mon langage de programmation. Je dois la réécrire." "Ce langage conviendrait parfaitement à mon problème, mais nous ne pouvons pas l’exécuter dans notre environnement." "Ce problème est déjà résolu dans tel ou tel langage, mais ce langage est trop lent." Oui, GraalVM améliore les performances des langages JVM tels que Groovy, Scala ou Kotlin pour égaler les performances des langages natifs.

Ingestion de données: État de l'Art

L’ingestion de données consiste à extraire, transformer et charger de grands volumes de données à partir de diverses sources, telles que des bases de données, des API, des serveurs FTP / SFTP, des fichiers, etc., dans un lac de données (Data Lake en anglais).

“Data Lake” est un terme apparu au cours de cette décennie pour décrire un élément important du pipeline d’analyse de données dans le monde du Big Data.