Detect OS and arch Linux (x86-64 , ARM64) MacOS (Intel , Silicon(M4)) Windows (amd64 , arm64)
Deb kubectl
macos kubectl
Still Need kubelet kubeadm cri-tools kubernetes-cni
$ sudo apt-get update $ sudo apt-get install -y apt-transport-https ca-certificates curl gnupg $ sudo touch mkdir -p -m 755 /etc/apt/keyrings $ curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.32/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg $ sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # allow unprivileged APT programs to read this keyring
$ echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.32/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list $ sudo chmod 644 /etc/apt/sources.list.d/kubernetes.list # helps tools such as command-not-found to work correctly $ sudo rm $ sudo apt-get update $ sudo apt-get install -y kubectl
$ cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/ enabled=1 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/repodata/repomd.xml.key EOF $ sudo yum install -y kubelet kubeadm kubectl cri-tools kubernetes-cni --disableexcludes=kubernetes $ systemctl enable --now kubelet $ go install sigs.k8s.io/kind@v0.27.0 $ sudo mv ~/go/bin/kind /bin $ sudo rm -r ~/go $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm $ sudo rpm -Uvh minikube-latest.x86_64.rpm
# SUSE-based Distros
# Add yum repo
$ cat <<EOF | sudo tee /etc/zypp/repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/repodata/repomd.xml.key
EOF
$ sudo zypper update
# Prompt to trust or reject repo key
# ???
$ sudo zypper install -y kubelet kubeadm kubectl cri-tools kubernetes-cni --disableexcludes=kubernetes
$ systemctl enable --now kubelet
$ go install sigs.k8s.io/kind@v0.27.0
$ sudo mv ~/go/bin/kind /bin
$ sudo rm -r ~/go
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
$ sudo rpm -Uvh minikube-latest.x86_64.rpm
$ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl" $ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl" $ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl.sha256" $ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl.sha256" $ echo "$(cat kubectl.sha256) kubectl" | shasum -a 256 --check $ chmod +x ./kubectl $ sudo mv ./kubectl /usr/local/bin/kubectl $ sudo chown root: /usr/local/bin/kubectl $ kubectl verion --client --output=yaml $ rm kubectl.sha256
(Use curl)