下面给你一份在 Ubuntu 上运行 Kubernetes(K8s)的实用指南,从“最简方式”到“生产可用方式”都覆盖,你可以按需求选择。
适合: 学习 K8s、本地开发、不需要多节点
sudo apt update
sudo apt install -y curl wget apt-transport-https
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
重新登录或
newgrp docker
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube start --driver=docker
sudo snap install kubectl --classic
kubectl get nodes
✅ 成功的话你会看到一个 Ready 的节点
适合: 实验集群、生产前验证
sudo apt update
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo swapoff -a
sudo sed -i '/swap/d' /etc/fstab
sudo apt install -y apt-transport-https ca-certificates curl
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
sudo systemctl enable kubelet
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
初始化完成后:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
常用 Flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
在 Master 初始化输出中会有类似:
kubeadm join 192.168.x.x:6443 --token xxx --discovery-token-ca-cert-hash sha256:xxx
在 Worker 节点执行即可。
brew install kind # 或二进制
kind create cluster
sudo snap install microk8s --classic
sudo microk8s status --wait-ready
sudo microk8s kubectl get nodes
✅ Ubuntu 上最省心的方式
kubectl 连接不上.kube/config| 场景 | 推荐 |
|---|---|
| 本地学习 | Minikube / Kind |
| Ubuntu 快速用 | MicroK8s |
| 真集群 | kubeadm |
| 生产 | 云托管 K8s |
如果你愿意,我可以:
你现在是 学习用还是部署用?