怎样在Linux上快速搭建Kubernetes
一、快速搭建Kubernetes的核心工具选择
在Linux上快速搭建Kubernetes,kubeadm(官方推荐)、microk8s(轻量便捷)、Kind(Docker容器节点)、k3s(轻量级)、minikube(单节点开发)是常用工具。其中,kubeadm适合需要自定义配置的用户,microk8s和Kind适合快速验证,k3s适合资源有限的边缘环境。
二、使用kubeadm快速搭建(多节点,官方推荐)
kubeadm是Kubernetes官方提供的集群部署工具,能快速搭建符合最佳实践的集群,以下是具体步骤:
1. 准备工作
- 系统要求:选择Ubuntu 22.04+/CentOS 7+等主流Linux发行版,确保系统已更新(
sudo apt update & & sudo apt upgrade -y)。 - 硬件要求:Master节点至少2核CPU、2GB内存;Worker节点至少1核CPU、1GB内存(生产环境建议更高配置)。
- 网络配置:所有节点之间能互相通信(关闭防火墙或放行6443、10250等端口);禁用swap分区(
sudo swapoff -a,并注释/etc/fstab中的swap行)。
2. 安装Docker容器引擎
Kubernetes依赖Docker作为容器运行时,安装命令如下(以Ubuntu为例):
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
验证Docker是否运行:docker version。
3. 安装kubeadm、kubelet、kubectl
这三个组件是Kubernetes的核心管理工具:
sudo apt update &
&
sudo apt install -y apt-transport-https curl
curl -s 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
验证安装:kubeadm version、kubectl version --client。
4. 初始化Master节点
在Master节点上执行初始化命令(以Kubernetes 1.28为例):
sudo kubeadm init --kubernetes-version=v1.28.0 --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=<
Master节点IP>
初始化完成后,按照提示执行以下命令配置kubectl:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
验证Master节点状态:kubectl get nodes(此时Master节点状态为NotReady,需安装网络插件)。
5. 安装网络插件
Kubernetes需要网络插件实现Pod间通信,常用Flannel(简单易用):
kubectl apply -f https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml
再次验证节点状态:kubectl get nodes(状态变为Ready则表示Master节点搭建成功)。
6. 添加Worker节点
在Worker节点上执行Master节点初始化时输出的kubeadm join命令(包含token和CA证书哈希):
sudo kubeadm join <
Master节点IP>
:6443 --token <
token>
--discovery-token-ca-cert-hash sha256:<
hash>
等待Worker节点状态变为Ready(kubectl get nodes)。
三、使用microk8s快速搭建(单节点,轻量便捷)
microk8s是Canonical推出的轻量级Kubernetes发行版,打包为Snap包,适合开发测试:
1. 安装microk8s
sudo snap install microk8s --classic
2. 启用常用组件
microk8s enable dashboard dns registry
3. 验证集群状态
microk8s status
若显示microk8s is running,则表示集群搭建成功。
四、使用Kind快速搭建(Docker容器节点,适合CI/测试)
Kind(Kubernetes IN Docker)将Kubernetes节点运行在Docker容器中,适合快速创建测试集群:
1. 安装Kind
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.20.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/
2. 创建集群
kind create cluster --name my-cluster
3. 验证集群状态
kubectl cluster-info --context kind-my-cluster
kubectl get nodes
若显示节点状态为Ready,则表示集群搭建成功。
五、注意事项
- 生产环境建议:kubeadm搭建的集群需额外配置高可用(多Master节点)、网络插件(如Calico)、存储插件(如NFS)等,以满足生产需求。
- 版本兼容性:确保Docker、kubeadm、kubelet、kubectl版本兼容(参考Kubernetes官方文档)。
- 网络插件选择:除Flannel外,还可选择Calico(高性能)、Cilium(支持eBPF)等网络插件。
通过以上步骤,可在Linux上快速搭建Kubernetes集群,满足开发、测试或轻量级生产需求。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 怎样在Linux上快速搭建Kubernetes
本文地址: https://pptw.com/jishu/742396.html
