k8s集群搭建详细教程
时间: 2025-05-20 13:37:09 AIGC 浏览: 41
### Kubernetes 集群搭建详细教程
#### 1. 环境规划
在开始搭建 Kubernetes (K8s) 集群之前,需明确集群架构设计以及所需资源。通常情况下,一个完整的 K8s 集群由至少一个控制平面节点(Control Plane Node)和多个工作节点(Worker Nodes)组成[^1]。对于初学者而言,可以采用单 Master 节点加若干 Worker 节点的方式构建测试环境。
#### 2. 准备阶段
##### a. 操作系统安装与初始化
推荐使用稳定版本的操作系统,例如 Rocky Linux 8 或 Ubuntu Server LTS 版本。确保操作系统已更新至最新状态并关闭防火墙服务以减少干扰:
```bash
sudo yum update -y && sudo systemctl stop firewalld && sudo systemctl disable firewalld
```
##### b. 安装 Docker 或其他容器运行时
Kubernetes 使用容器化技术管理应用实例,默认支持 Docker 运行时。以下是基于 CentOS/Rocky 的 Docker CE 安装脚本:
```bash
# 设置存储库
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io -y
# 启动并设置开机自启
sudo systemctl start docker && sudo systemctl enable docker
```
#### 3. Kubernetes 组件部署
##### a. 添加官方源
通过以下命令添加 Kubernetes YUM 存储库,并安装 kubeadm、kubelet 和 kubectl 工具集:
```bash
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF
# 安装必要工具
sudo yum install kubelet kubeadm kubectl -y
sudo systemctl enable --now kubelet
```
##### b. 初始化 Control Plane
执行 `kubeadm init` 命令完成初始配置过程。此操作会生成加入新节点所需的 Token 及证书信息,请妥善保存返回的结果用于后续扩展。
```bash
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
```
注意:上述 CIDR 地址范围适用于 Flannel CNI 插件;如果选用不同网络方案,则需要调整相应参数[^1]。
##### c. 加入 Workder Nodes
将额外的工作节点连接到现有集群中,只需复制粘贴来自 master 输出中的 join command 即可实现自动化注册流程[^2]:
```bash
sudo kubeadm join <master-ip>:<master-port> --token <token-value> --discovery-token-ca-cert-hash sha256:<hash>
```
#### 4. 网络插件选型
为了使 Pod 间能够正常通信,必须引入第三方 Container Network Interface(CNI) 实现层二或三层路由功能。Flannel 是一种轻量级的选择之一,可通过如下方式快速启用:
```bash
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
```
---
### 总结
以上即为从零开始创建 Kubernetes 生产就绪级别集群的主要步骤概述[^1][^2]。具体实施过程中可能还会遇到各种兼容性和性能调优方面的问题,在线文档和技术社区都是很好的求助渠道。
阅读全文
相关推荐













