CKAD Prep Part 9 – Kubernetes Multi Container Pods
Kubernetes Multi Container Pods There are some use cases where you may want to run multiple containers inside the same Pod. For example, you could have a microservice running in one container that writes logs to a volume. A second container running a log agent could capture and push [...]
CKAD Prep Part 8 – Kubernetes Service Accounts
Kubernetes Service Accounts As a developer or a cluster admin, you interact with the Kubernetes apiserver via kubectl. A ServiceAccount is a Kubernetes object that allows an application running inside a Pod to access the Kubernetes apiserver. This is useful for applications that need to interact directly with the [...]
CKAD Prep Part 7 – Kubernetes Secrets
Kubernetes Secrets A Secret is a Kubernetes object that encapsulates sensitive data such as a password or key. A Secret can be consumed by a container so that applications can access the sensitive data at runtime. Defining a Secret A sample Secret definition is shown below. apiVersion: v1 kind: Secret [...]
CKAD Prep Part 6 – Container Resource Requirements
Container Resource Requirements Kubernetes allows you to specify the CPU and memory requirements for a container. As part of the Pod spec you can specify CPU and memory requests and limits. requests the CPU and memory resources required to run a container used by Kubernetes to decide what worker Node [...]
CKAD Prep Part 5 – Kubernetes SecurityContexts
Kubernetes SecurityContext A SecurityContext is a Kubernetes object, defined as part of the Pod spec, that describes the privileges and access control settings for a Pod. The primary settings for a SecurityContext are runAsUser - allows you to run containers as a specified user runAsGroup - allows you to [...]
CKAD Prep Part 4 – Kubernetes Config Maps
Kubernetes Config Maps A ConfigMap is a Kubernetes object that stores configuration data in a key/value store. apiVersion: v1 kind: ConfigMap metadata: name: config-map-demo data: greetingOne: Hey there! greetingTwo: Howdy partner! A ConfigMap can be referenced in a Pod spec and used to configure an application running in a [...]
CKAD Prep Part 3 – Kubernetes Namespaces
Kubernetes Namespaces A Namespace provides a way of organising or categorising resources in a Kubernetes cluster. Every resource you create is associated with a Namespace. When an objects Namespace isn't specified explicitly, it will be associated with the default Namespace. Namespaces are a great way of logically grouping or [...]
CKAD Prep Part 2 – Kubernetes Pods
Kubernetes Pods A Pod is the basic building block of an application running in Kubernetes. A Pod encapsulates one or more containers and a set of resources shared by those containers. All containers that run in a Kubernetes cluster run inside a Pod. Creating a Pod Below is a [...]
CKAD Prep Part 1 – Kubernetes API Primitives
I've been working with Kubernetes for a while now and and I'm really enjoying it. I feel I've learned quite a bit but its difficult to know how much without some kind of measuring stick. With that in mind I've decided to start studying for the Certified Kubernetes Application [...]
Spring Cloud Config Server on Kubernetes – Part 2
This is the second of a two part article about building centralised configuration with Spring Cloud Config Server. In this post we'll take the the two Spring Boot services created in part one and run them on Kubernetes. We'll initially deploy to a local cluster before stepping things up [...]