Kubernetes - Tools
Last Updated: 2022-10-08
- kubectl
- 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.
kubeadm init
to bootstrap a Kubernetes control-plane nodekubeadm join
to bootstrap a Kubernetes worker node and join it to the clusterkubeadm upgrade
to upgrade a Kubernetes cluster to a newer version; Perform the upgrade of etcd by default.
- kops
- k3s: not a full k8s, a stripped down / recompiled version
- kube-ps1: change bash prompt
export '$(kube-ps1)'$PS1
- kubens: work with namespaces
- k9s: https://k9scli.io/
- krew: a plugin manager, Extend
kubectl
with plugins.
Provision Tools
- 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.
Local / Test clusters
- minikube: run a local k8s cluster.
- kind (Kubernetes in Docker): primarily designed for testing Kubernetes itself; kind uses Weave for CNI.
minikube vs kind
- minikube: spawning a VM that is essentially a single node K8s cluster.
- kind: 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.