36 comments on “How to create a single Node Kubernetes Cluster with dual stack IPv4/IPv6 Support with CRI-O and Calico”

How to create a single Node Kubernetes Cluster with dual stack IPv4/IPv6 Support with CRI-O and Calico

In this blog post, I have summarized how I have set up a single-node Kubernetes cluster version 1.32 on a fresh Ubuntu 24.04 with dual stack IPv4/IPv6 support. Tested with: Ubuntu 24.04 Kubeadm 1.32.3 CRI-O 1.32 Calico 3.29.3 Part 1:…

3 comments on “Migrate Kubernetes Runtime from Containerd to CRI-O”

Migrate Kubernetes Runtime from Containerd to CRI-O

Why Replace Containerd with CRI-O in Kubernetes? Switching container runtimes again might seem unnecessary after the recent move from Docker to containerd. However, CRI-O offers unique features like enhanced Kubernetes compatibility and improved security. For example, I used CRI-O to test…

128 comments on “Kubernetes horizontal POD Autoscaling – Hello World”

Kubernetes horizontal POD Autoscaling – Hello World

For a quick test of horizontal autoscaling of an NginX deployment, we need the following ingredients: a metrics server installation to be able to measure the POD's CPU an nginx deployment with a CPU reservation an auto scaler configuration a…

73 comments on “How to enter a root shell session to a Container with containerd or CRI-O using ‚runc‘ or ’nsenter‘”

How to enter a root shell session to a Container with containerd or CRI-O using ‚runc‘ or ’nsenter‘

The latest version of Kubernetes does not support Docker as a container runtime anymore. That is why many Kubernetes administrators have migrated their cluster's container runtime from docker to another container runtime like containerd or cri-o. Or they will do…

4 comments on “Metricbeat on Kubernetes – Kubernetes Series (11)”

Metricbeat on Kubernetes – Kubernetes Series (11)

Three ways of installing Metricbeat (a performance monitoring solution) on Kubernetes are compared: native vs. helm with set options vs helm with values options. Metricbeat helps us monitoring performance indicators like CPU, Memory, Disk and many more on your Kubernetes nodes. We will show that (and why) installing Metricbeat via helm based on values file is the quickest way of installing Metricbeat. You just need to copy the Metricbeat chart's values file, adapt it to your needs and run a helm command in order to roll out the Metricbeat agent to all nodes of your Kubernetes cluster.

6 comments on “Mesos and Marathon REST API via cURL — A Hello World Example”

Mesos and Marathon REST API via cURL — A Hello World Example

In this hello-world style blog post, we will learn how to create load balanced Docker services in an open source DC/OS & Mesos environment. For that, we will perform Mesos and Marathon REST API calls using simple cURL commands. First, we will…

5 comments on “Vagrant on CentOS 7 – Setting up Test Environments the easy Way”

Vagrant on CentOS 7 – Setting up Test Environments the easy Way

After stumbling upon several guides still describing a Vagrant installation via a RubyGem - which is no longer supported - the following article was created and will provide a quick setup guide on how to setup Vagrant on CentOS 7.…

5 comments on “Jenkins (6): BrowserStack Integration – Automated Cross Browser Testing”

Jenkins (6): BrowserStack Integration – Automated Cross Browser Testing

With the BrowserStack cloud-based solution, there is no need to buy many different hardware types for testing your website for many different mobile devices and operating systems. In this blog post about Jenkins BrowserStack Integration, we will learn how to integrate BrowserStack-based automated…

14 comments on “Testing any Browser on any Hardware using BrowserStack – A Protractor Cross Browser Testing Example”

Testing any Browser on any Hardware using BrowserStack – A Protractor Cross Browser Testing Example

This time we will learn how to test any web site (including your front end software) using many different Internet browsers by integrating a cloud-based cross browser test solution named BrowserStack. We will perform Protractor tests for AngularJS using the…

1 comment on “Jenkins Part 5.1: Using the Job DSL for automatic Creation of Jenkins Jobs”

Jenkins Part 5.1: Using the Job DSL for automatic Creation of Jenkins Jobs

Today, we will learn how to use the Jenkins Job DSL Plugin to create new Jenkins jobs at a push of a button. We will show how we can use Groovy scripts for defining a "Hello World" Jenkins freestyle project and…

6 comments on “Jenkins Part 4.2: Code Quality Tests via Checkstyle”

Jenkins Part 4.2: Code Quality Tests via Checkstyle

Today, we will show how to use Checkstyle for improving the style of Java code. First, we will add Checkstyle to Gradle in order to create XML reports for a single build. Jenkins allows us to visualize the results of more…

6 comments on “Jenkins Part 4.1: Functional Java Tests via JUnit”

Jenkins Part 4.1: Functional Java Tests via JUnit

You also think that functional tests are one of the most important ingredients for delivering high quality software? You share my opinion that we should help the developer automating this task in order to get comparable results and to receive meaningful trend reports? I…

14 comments on “Jenkins Part 3.1: periodic vs triggered Builds”

Jenkins Part 3.1: periodic vs triggered Builds

Today, we will make sure that Jenkins will detect a code change in the software repository without manual intervention. We will show two methods to do so: Periodic Builds via Schedulers: Jenkins periodically asks the software repository for any code changes…

101 comments on “Getting Started with Mesos Resource Reservation & Marathon Watchdog – A „Hello World“ Example”

Getting Started with Mesos Resource Reservation & Marathon Watchdog – A „Hello World“ Example

Today, we will introduce Apache Mesos, an open source distributed computing system with the target to allow applications to run on a computer cluster as if it was running on a single computer. On top of a Mesos cluster, we…

7 comments on “Jenkins Part 2: automated Code Download and Build (Gradle + Maven)”

Jenkins Part 2: automated Code Download and Build (Gradle + Maven)

NEW (2017-01-02): you now can immediately start with part 2 (this post) without going through the steps of part 1. A corresponding pre-installed Docker image is provided. NEW (2017-01-05): I have added the Maven build path with a fat executable…

16 comments on “Jenkins Part 1: Installation the Docker Way”

Jenkins Part 1: Installation the Docker Way

In this blog post, we will deploy and get started with Jenkins, the most popular open source tool for Continuous Integration and Continuous Deployment. As a modern way of installing, we install a Docker host and deploy a Jenkins Docker…