温馨提示×

新手如何在Ubuntu用K8s

小樊
46
2026-10-28 12:13:57
栏目: 智能运维

下面给你一份新手向的 Ubuntu + Kubernetes(K8s)入门路线,从“装好环境”到“跑起来第一个应用”,尽量不绕弯。


一、准备环境(Ubuntu)

1. 系统要求

  • Ubuntu 20.04 / 22.04(推荐 22.04)
  • 2 核 CPU、2GB+ 内存(学习够用)
  • 能联网

2. 关闭 swap(K8s 要求)

sudo swapoff -a
sudo sed -i '/swap/s/^/#/' /etc/fstab

3. 设置主机名(可选)

sudo hostnamectl set-hostname k8s-master

二、安装容器运行时(Docker / containerd)

K8s 1.24+ 默认用 containerd

安装 containerd

sudo apt update
sudo apt install -y containerd
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml
sudo systemctl restart containerd
sudo systemctl enable containerd

三、安装 Kubernetes 组件

sudo apt install -y apt-transport-https ca-certificates curl
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/kubernetes.gpg

echo "deb [signed-by=/usr/share/keyrings/kubernetes.gpg] 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 apt-mark hold kubelet kubeadm kubectl

四、用 kubeadm 初始化集群(单机也行)

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/flannel-io/flannel/master/Documentation/kube-flannel.yml

查看状态:

kubectl get nodes

看到 Ready 就成功了 ✅


六、跑第一个应用(Nginx)

kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort

查看访问端口:

kubectl get svc

浏览器访问:

http://<你的IP>:3xxxx

七、新手常用命令

kubectl get pods
kubectl get nodes
kubectl logs <pod名>
kubectl delete deployment nginx

八、新手建议路线

  1. 先玩 Pod / Deployment / Service
  2. 再学 yaml 文件
  3. 然后学 ConfigMap / Secret
  4. 最后再碰 Ingress / Helm / 多节点

九、更简单的替代方案(强烈推荐新手)

如果你只是学习 K8s,不想折腾环境:

  • ✅ Minikube(单节点 K8s)
  • ✅ Kind(Docker 里跑 K8s)
  • ✅ K3s(轻量 K8s)

例如 Minikube:

sudo apt install docker.io
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube start

如果你愿意,我可以:

  • 给你一份 K8s 学习 7 天计划
  • 或手把手写 第一个 yaml
  • 或帮你选 Minikube / K3s / 真集群

你现在是「纯学习」还是「准备上线用」?

0 踩