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…
How I earned the Certified Kubernetes Administrator (CKA) badge – what would I do differently today?
What is the CKA? The Certified Kubernetes Administrator (CKA) certification proves you have hands-on experience managing Kubernetes clusters. How did I learn Kubernetes? Three years ago, I purchased a 4-day classroom Kubernetes Administration course (LFS458) from FastLane. It was not…
CKA Labs (19): Kubernetes Logging
In this article, we will have a look at Kubernetes logging. We will look, how Kubernetes logging is related to Docker logging. References: kubernetes.io: Logging Architecture Docker Logging: A Complete Guide by sematext.com Docker's official documentation on Logging Step 0:…
CKA Labs (17): Kubernetes Readiness and Liveness Probes
In this article, we will learn how Kubernetes Liveness Probes and Kubernetes Readiness Probes help us improve the continuity and availability of Kubernetes Services. For that, we will learn how Kubernetes uses probes to decide, whether an application is up…
CKA Labs (18): Kubernetes Metrics Server for CPU and Memory Monitoring
Install and explore the Kubernetes Metrics Server in a hands-on lab. View the CPU and Memory consumption of cluster nodes, applications, and containers.
CKA Labs (16): Kubernetes Persistent Volumes
In this article, we will create Kubernetes Persistent Volumes, change access modes, and add Kubernetes Persistent Volume Claims. Moreover, we will gain some understanding of Kubernetes Storage Objects.
CKA Labs (15): Kubernetes Ingress
We use NginX-based Kubernetes Ingress Controllers to make Kubernetes Services available to the outside world. In our example, three separate applications share the same IP address and port. We show, how to retrieve the NginX configuration from the Ingress Controller. Moreover, we show how to install a newer NginX version provided by NginX INC.
CKA Labs (14): Kubernetes Node Selector vs. Affinity and Anti-Affinity
How to get hands-on experience with Kubernetes affinity and anti-affinity for both, node affinity as well as POD affinity for "soft" and "hard" rules.
CKA Labs (13): Kubernetes Taints and Tolerations
In this blog post, we will get hands-on experience on Kubernetes taints and tolerations. Taints are used to repel PODs from running on a certain set of nodes, while tolerations in the POD's specification allows the POD to ignore the corresponding matching taint.
CKA Labs (12): Kubernetes Labels and Node Selectors
Tutorial with a hands-on lab on Kubernetes Labels and Node Selectors, which are used to control, which PODs are scheduled on which set of Kubernetes Nodes.
CKA Labs (11) — Kubernetes Services
Kubernetes Services provide us with a means to load-balance between many instances of an application running on a data center. Moreover, they help make accessible the service from the Internet. Here, we will show, how PODs, endpoints, container-ports, and node ports are bound together by means of Kubwernetes Services.
CKA Labs (10) — Kubernetes DaemonSets
In this blog post, we have created a Kubernetes DaemonSet. We have observed that and POD template changes are not propagated to existing PODs if we choose the OnDelete update strategy. However, if we choose the RollingUpdate strategy, POD renewal is triggered with any update of the DaemonSet's POD template.
CKA Labs (9) — Kubernetes Deployments
In this blog post, we will have a closer look to Deployments, how they relate to ReplicaSets of the last post, and which features in terms of the rollout/rollback they offer to the Kubernetes administrator.
CKA Labs (8) — Kubernetes ReplicaSets
In this lab, we will have a closer look at Kubernetes Replicasets. First, we will learn how ReplicaSets control, how many POD replicas are up and running at any time. We will learn, how ReplicaSets and PODs are connected: via labels. We will show that manually creating PODs with matching labels can have weird cuckoo's eggs effects. Moreover, a POD can be detached from a ReplicaSet without stopping it by manipulating its label.
CKA Labs (7) — Kubernetes Jobs and CronJobs
In this Kubernetes lab, we will explore Kubernetes Jobs and CronJobs. Unlike Kubernetes Deployments, Kubernetes Jobs are designed to quit after they have accomplished the task (successful or not). Kubernetes CronJobs are the jobs that are repeated according to a schedule pattern Linux administrators know from crontab.
CKA Labs (6) — Kubernetes API
In this lab, we will explore the Kubernetes API. We will read and create PODs before we explore the API resources.
CKA Labs (5) — Kubernetes Node Maintenance
In this LSF458 lab (originally Excercise 4.3 and 4.4), we will explore how to manage maintenance modes of nodes in a Kubernetes cluster. For that, we will deploy a complex example, before we drain the node. Step 0: Enter Kubernetes…
CKA Labs (4) — Kubernetes Resource Management
This lab is concentrating on Kubernetes Resource Management. We will explore Limit Ranges applied to each container as well as Resource Quotas that limit the allowed sum resources of a namespace.
CKA Labs (3) — Deploy a simple Kubernetes Application
In part 3 of the Certified Kubernetes Administrator Labs Challenge, we will deploy a simple application by file and by command. Then we will expose and access the service from within the Kubernetes Cluster. After that, we will explore how Kubernetes Deployments helps us maintain the service by automatically restarting failed PODS through ReplicaSets. Last, but not least, we will discuss how to access the service from outside the Kubernetes cluster.
CKA Labs (2) — Kubernetes Labs Preparation
For the Certified Kubernetes Administrator Labs Challenge, I have decided to use the Katakoda Kubernetes Playground. This way, I do not need to install any Kubernetes cluster before starting the labs. This will be tested now.