Spring Boot Kubernetes HPA
Spring Boot Kubernetes HPA

English Version:

In questo articolo andiamo a vedere come effettuare un deploy di un Microservizio realizzato con Spring Boot su un cluster Kubernetes; successivamente andremo a configurare il meccanismo per rendere il nostro Microservizio scalabile in base alle necessità di utilizzo (in questo caso sul consumo della CPU), questa tecnica si chiama Horizontal Pod Autoscaler (HPA).

Tutto il sorgente Java e le configurazioni Kubernetes sono disponibili al seguente Git repos:

Realizzazione Microservizio con Spring Boot


Image for post
Image for post

English Version:

In questo articolo scopriremo come fare per conteinerizzare una Java EE Web Application su Docker, creando un cluster tra le istanze della nostra applicazione che andremo a deployare su Docker, mantendo i meccanismi tipici della clusterizzazione quali HTTP Session Replication ed EJB Clustering tra i nodi applicativi.

Clustering, Scalability & HA (High Availability)

Un Cluster è una serie di macchine connesse tra loro che lavorano in parallelo; L’utilizzo di un sistema Cluster permette di eseguire operazioni complesse distribuendo il carico di elaborazione su tutti i nodi che compongono il cluster.

I benefici che comporta l’introduzione di un Cluster sono le seguenti:

  • Scalabilità
  • Altà Affidabilità

Scalabilità


Apache Kafka
Apache Kafka

Post in English Version:

Apache Kafka è una piattaforma di Event-Streaming Processing, progettata per processare grandi moli di dati in tempo reale, abilitando la creazione di sistemi scalabili, con un elevato throughput e bassa latenza. Da Design prevede anche la persistenza dei dati sul cluster (server princiale e repliche) garantendo un elevata alta-affidabilità.

In questo post andremo a vedere come creare un cluster Kafka per l’ambiente di sviluppo, la creazione dei Topic, la logica delle partizioni e dei gruppi di consumer, ed ovviamente il modello publish-subscribe.

I requisiti per svolgere l’esercitazione sono i seguenti:

  • Java 8
  • Download dell’ultima versione di…

Image for post
Image for post
Photo by Maxim Zhgulev on Unsplash

In this article we are going to see how to configure authentication using the standard SAML 2.0 (Security Assertion Markup Language) on an application built with the Spring Boot framework.

The dependencies used:

  • Spring Boot 2.4.2
  • Spring Security 5.4.2
  • Spring Security SAML2 Service Provider 5.4.2

As Identity Provider (free) we use Okta.

All the Java source present in the article is available at the following Git repos:

What is SAML 2.0?

SAML (Security Assertion Markup Language) è uno standard informatico per lo scambio di dati di autenticazione e autorizzazione (asserzioni SAML basate su XML) tra domini di sicurezza eterogenei.

In genere le entità che…


Image for post
Image for post
Photo by Maxim Zhgulev on Unsplash

English Version:

In questo articolo andiamo a vedere come configurare l’autenticazione tramite lo standard SAML 2.0 (Security Assertion Markup Language) su una applicazione realizzata con il framework Spring Boot.

Le versioni delle dipendenze utilizzate sono le seguenti:

  • Spring Boot 2.4.2
  • Spring Security 5.4.2
  • Spring Security SAML2 Service Provider 5.4.2

Come Identity Provider (free) utilizziamo Okta.

Tutto il sorgente Java presente nell’articolo è disponibile al seguente Git repos:

Cosa è SAML 2.0?

SAML (Security Assertion Markup Language) è uno standard informatico per lo scambio di dati di autenticazione e autorizzazione (asserzioni SAML basate su XML) tra domini di sicurezza eterogenei.

In genere le entità che…


Image for post
Image for post

In this article we will find out how to contain a Java EE Web Application on Docker, creating a cluster between the instances of our application that we will deploy on Docker, maintaining the typical clustering mechanisms such as HTTP Session Replication and EJB Clustering between the application nodes.

Clustering, Scalability & HA (High Availability)

A Cluster is a series of connected machines that work in parallel; The use of a Cluster system allows you to perform complex operations by distributing the processing on all the nodes that make up the cluster.

The benefits of introducing a Cluster are the following:

  • Scalability
  • High Availability

Scalability

It is…


Spring Boot Kubernetes HPA
Spring Boot Kubernetes HPA

In this article we are going to see how to deploy a Microservice made with Spring Boot on a Kubernetes cluster; later we will configure the mechanism to make our Microservice scalable according to the needs of use (in this case on CPU consumption), this technique is called Horizontal Pod Autoscaler (HPA).

All Java source and Kubernetes configurations are available at the following Git repos:

Spring Boot Microservice


Apache Kafka
Apache Kafka

Apache Kafka is an Event-Streaming Processing platform, designed to process large amounts of data in real time, enabling the creation of scalable systems with high throughput and low latency. Kafka provides the persistence of data on the cluster (main server and replicas) ensuring high-reliability.

In this post we will see how to create a Kafka cluster for the development environment, the creation of Topics, the logic of partitions and consumer groups, and obviously the publish-subscribe model.

The requirements to follow this tutorial are:

  • Java 8
  • Download latest Apache Kafka version

Note: All commands are launched on a Windows machine (KAFKA_HOME/bin/windows/)…


Image for post
Image for post
Photo by CHUTTERSNAP on Unsplash

Raspberry Pi was born as a single-board computer for hobby projects, but in recent years many important big-companies have ported their products to the Enterprise level also on the ARM technology of the Raspberry Pi; especially for IoT (Internet of Things) projects.

In this guide we will go to see how it is possible to install Docker and Kubernetes on our Raspberry Pi. For this purpose it is advisable to have the Raspberry Pi 4 Model B with 4 or 8Gb RAM.

Install Docker


Image for post
Image for post
Photo by Harrison Broadbent on Unsplash

In this article we will find out how to configure the Raspberry Pi 4 without having an external monitor, keyboards and mouse available. It will allow you to log into your RPi (Raspberry Pi) via SSH and connect it to your WiFi.

The Raspberry Pi is a Single Board Computer (SBC) and is a small PC and Laptop, so we will first install the Operating System and then activate all the various useful services.

Using the Raspberry Pi in headless mode may be recommended when creating a web server, media server, NAS or in any case those services where interaction…

Andrea Scanzani

IT Architect and Project Leader, (PMI-ACP®, PRINCE2®, TOGAF®, PSM®, ITIL®).

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store