【云原生 五】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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律