Kubernetes - Tools
Last Updated: 2023-03-24
- kubeadm: it cares only about bootstrapping, not about provisioning machines. Likewise, installing various nice-to-have addons, like the Kubernetes Dashboard, monitoring solutions, and cloud-specific addons, is not in scope. Used by other tools like minikube, kind, etc.
kubeadm initto bootstrap a Kubernetes control-plane node
kubeadm jointo bootstrap a Kubernetes worker node and join it to the cluster
kubeadm upgradeto upgrade a Kubernetes cluster to a newer version; Perform the upgrade of etcd by default.
- kube-ps1: change bash prompt
- kubens: work with namespaces
- k9s: https://k9scli.io/
- krew: a plugin manager, Extend
- The KUbernetes Test TooL (kuttl): https://kuttl.dev/
- Metal3: to provision bare metal hosts. Metals -> OpenStack Ironic -> PXE
- The Metal3 baremetal operator watches for BareMetalHost (CRD) objects
- PXE (Preboot Execution Environment) boot: to install a fresh OS on new or malfunctioning computers. On the client side it requires only a PXE-capable network interface controller (NIC), for operating system booting, installation and deployment in data centers.
For local testing or environment with limited resources.
- k3s: not a full k8s, a stripped down / recompiled version; for edge and IoT.
- minikube: run a local k8s cluster.
- kind (Kubernetes in Docker): primarily designed for testing Kubernetes itself; kind uses Weave for CNI.
minikube vs kind vs k3s
- minikube: a node is a VM. spawning a VM that is essentially a single node K8s cluster.
- kind: a node is a docker container. Cluster into Docker containers, faster startup speed compared to spawning VM. Can load local images directly into the cluster instead of setting up a registry.
- k3s: running natively on the host. is a minified version of Kubernetes developed by Rancher Labs. By removing dispensable features (legacy, alpha, non-default, in-tree plugins) and using lightweight components (e.g. sqlite3 instead of etcd3)
> docker exec -it kind-control-plane bash [email protected]:/# ps auxf
you will see
- kind uses
containerdas a CRI implementation to deal with Pods (and hence - containers).
- There is no docker command or dockerd inside this container to list the images
lists all the images
$ crictl images
crictl to any CRI runtime is what
docker command-line tool to the
kind uses podman