蓝迷梦

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

【云原生 五】K8S StorageClass 部署安装

【云原生 一】Docker 安裝部署

【云原生 二】Harbor 镜像仓库部署

【云原生 三】K8S 环境部署

【云原生 四】NFS 服务搭建

【云原生 五】K8S StorageClass 部署安装

【云原生 六】K8S 集群下 kubesphere 云平台部署安装

 

一、部署之前的环境要求:

1、安装 k8s 集群,本例 k8s 版本 v1.26.1,安装参考:https://www.cnblogs.com/hewei-blogs/articles/17096351.html

2、安装配置NFS服务,安装参考:https://www.cnblogs.com/hewei-blogs/articles/17116224.html

3、ubuntu系统版本 22.04-desktop-amd64

二、进行部署,本例中都使用root权限安装,安装都是在同一目录下进行。如果是在集群中,则所有安装操作都在master节点上进行。

1、首先安装 k8s的包管理插件 helm

下载并安装:

wget https://get.helm.sh/helm-v3.11.1-linux-amd64.tar.gz
tar -zxvf helm-v3.11.1-linux-amd64.tar.gz
cd linux-amd64/
cp helm /usr/local/bin
chmod +x /usr/local/bin/helm

设置命令自动补全

echo 'source <(helm completion bash)' >> /etc/profile
source /etc/profile

添加仓库

helm repo add stable http://mirror.azure.cn/kubernetes/charts
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts

2、下载并配置 nfs-subdir-external-provisioner 插件

下载插件

wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/releases/download/nfs-subdir-external-provisioner-4.0.16/nfs-subdir-external-provisioner-4.0.16.tgz
gedit values.yaml

编辑 values.yaml 文件,修改镜像地址为:registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images/nfs-subdir-external-provisioner,版本根据自己的需要进行调整。修改已经搭建好的NFS服务器的地址和挂载路径。修改属性 defaultClass 值为 true,根据需要修改StorageClass的名称。如下图所示:

 3、安装

编辑完成后保存,然后执行如下命令通过 values.yaml 文件进行安装。

kubectl create ns nfs-storage
helm install nfs-provisioner -n nfs-storage -f values.yaml .

还可以直接在线安装(不需要下载和配置 values.yaml)

复制代码
helm repo add nfs-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
helm install nfs-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \
    --set nfs.server=10.53.207.10 \
    --set nfs.path=/nfs \
    --set image.tag=v4.0.2 \
    --set image.repository=registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images/nfs-subdir-external-provisioner \
--set storageClass.defaultClass=true \
-n nfs-storage #image.repository,可以自己进行适配,本例中都使用阿里的镜像。
复制代码

查看:执行 kubectl get storageClass 或 kubectl get sc 命令,显示如下:

三、验证测试

创建 test-claim.yaml 文件,添加如下内容:

复制代码
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-claim
spec:
# storageClass 的名称,就是在上面图片中显示的 nfs-client storageClassName: nfs
-client accessModes: - ReadWriteMany resources: requests: storage: 1Mi
复制代码

执行命令:

kubectl apply -f test-claim.yaml

然后进行查看:kubelet get pvc

 进入NFS服务器的挂载分享目录看到已经挂载成功。

 

 

原创文章,引用请指明出处,谢谢!

原文链接:https://www.cnblogs.com/hewei-blogs/articles/17123509.html

 

posted on   蓝迷梦  阅读(459)  评论(2编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示