在 Debian 系统中配置 Kubernetes 存储,通常需要完成多个关键步骤,例如安装必要软件包、配置 StorageClass、创建持久卷(PV)以及持久卷声明(PVC)等。下面为您整理一份适用于入门场景的基础配置指南:

1. 安装必要的软件包
首先,请确保你的 Debian 系统已经更新到最新状态,并且已正确安装 kubeadm、kubelet 和 kubectl,这是部署和管理 Kubernetes 集群的基础组件。
sudo apt update && sudo apt upgrade -y
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 -a /etc/apt/sources.list.d/kubernetes.list
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl2. 初始化Kubernetes集群
如果你尚未完成 Kubernetes 集群初始化,可以执行以下命令开始部署:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16请根据终端中的提示完成后续初始化操作。
3. 安装网络插件
Kubernetes 需要依赖网络插件来处理 Pod 之间的通信。常见选择包括 Flannel、Calico 等,这里以较常用的 Calico 为例进行说明:
kubectl apply -f https://docs.projectcalico.org/v3.25/manifests/calico.yaml4. 配置存储类
Kubernetes 支持多种存储方案,例如本地存储、NFS、Ceph 等。为了便于理解,下面以 NFS 存储配置为示例:
4.1 安装NFS服务器
你需要先在另一台服务器上安装并配置 NFS 服务端:
sudo apt update && sudo apt install -y nfs-kernel-server编辑 /etc/exports 文件,并添加需要共享的目录:
sudo nano /etc/exports加入以下内容:
/share *(rw,sync,no_subtree_check)随后重载配置并重启 NFS 服务器:
sudo exportfs -ra
sudo systemctl restart nfs-kernel-server4.2 在Kubernetes集群中创建StorageClass
接着,在 Kubernetes 集群中创建一个名为 nfs 的 StorageClass,用于定义 NFS 存储的供应方式:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: nfs
provisioner: kubernetes.io/nfs
parameters:
path: "/share"
server: "nfs-server-ip"
reclaimPolicy: Delete将上述 YAML 内容保存为 nfs-storageclass.yaml 文件,然后执行应用命令:
kubectl apply -f nfs-storageclass.yaml5. 创建持久卷声明
完成 StorageClass 配置后,你就可以创建一个持久卷声明(PVC),让工作负载使用 NFS 存储资源:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nfs-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: nfs
resources:
requests:
storage: 1Gi将上述内容保存为 nfs-pvc.yaml 文件,然后执行以下命令:
kubectl apply -f nfs-pvc.yaml6. 验证配置
最后,可以通过以下命令检查 PVC 是否已经成功创建,并且是否正确绑定到对应的持久卷:
kubectl get pvc nfs-pvc如果配置无误,你将看到 PVC 的状态显示为 Bound。
总结
以上就是在 Debian 系统上配置 Kubernetes 存储的基本流程。对于实际生产环境来说,还可能需要根据业务需求进一步优化存储方案、权限设置和高可用配置。希望这份 Debian 配置 Kubernetes 存储的入门教程,能够帮助你更顺利地完成部署与使用。
