1. Wiki
  2. /Computer Science
  3. /Orchestration
  4. /Kubernetes

Kubernetes

Glossary

Pod

The smallest and simplest Kubernetes object. A Pod represents a set of running containers on your cluster.

A Pod is typically set up to run a single primary container. It can also run optional sidecar containers that add supplementary features like logging. Pods are commonly managed by a Deployment.

Node

A node is a worker machine in Kubernetes.

A worker node may be a VM or physical machine, depending on the cluster. It has local daemons or services necessary to run Pods and is managed by the control plane. The daemons on a node include kubelet, kube-proxy, and a container runtime implementing the CRI such as Docker.

Context and configuration

Show all configuration, merged: kubectl config view

Show all available contexts: kubectl config get-contexts

Current context: kubectl config current-context

Change context: kubectl config set-context

Apply

Applying json or yaml manifests:

kubectl apply -f manifest.yaml -f another.yaml -f whole-directory/

Viewing and finding resources

kubectl get [pods/services/ingress/deployments/...] [-n namespace/--all-namespaces]

Deployment strategies

kubernetes deployment strategies

Tutorials

Tools around k8s

  • Kubeval - Validate your Kubernetes configuration files, supports multiple Kubernetes versions.
  • Helm - Kubernetes package manager.
  • kaniko - Build Container Images In Kubernetes.
  • Portainer - Lighter than Rancher (for Docker).
  • Kubespray - Deploy a Production Ready Kubernetes Cluster.
  • Kubespy - Tools for observing Kubernetes resources in real time, powered by Pulumi.
  • Kubeapps - Web-based UI for deploying and managing applications in Kubernetes clusters.
  • Kazan - Kubernetes API client for Elixir.
  • Tilt - Local Kubernetes development with no stress.
  • Maestro - Provides a declarative approach to building production-grade Kubernetes Operators covering the entire application lifecycle.
  • kubefwd - Bulk port forwarding Kubernetes services for local development.
  • Argo - Container-native workflows for Kubernetes. (Getting started) (Templating) (Argo Server)
  • kind - Kubernetes IN Docker - local clusters for testing Kubernetes.
  • Garden - Development engine for Kubernetes, containers and serverless functions.
  • PowerfulSeal - Adds chaos to your Kubernetes clusters, so that you can detect problems in your systems as early as possible.
  • k8dash - Simple Kubernetes real time dashboard and management.
  • Draft - Streamlined Kubernetes Development.
  • k3s - Lightweight Kubernetes. Easy to install, half the memory, all in a binary less than 40mb.

CLI Tools

Resources