k8s集群增加nfs-subdir-external-provisioner存储类

文章目录


前言

手里的一台服务器搭建一个单点的k8s集群,然后在本机上使用nfs-subdir-external-provisioner存储类型提供pod的存储。


一、版本信息

操作系统版本: Ubuntu 22.04.5 LTS

nfs-subdir-external-provisioner版本:v4.0.2

二、本机安装nfs组件包

shell 复制代码
 sudo apt-get install -y nfs-kernel-server

 mkdir -p /data/nfs/

 chmod -R 777 /data/nfs/
 否则创建pvc的时候会有permission denied的提示

 echo "/data/nfs/ *(rw,sync,no_subtree_check)" | sudo tee -a /etc/exports

 sudo exportfs -ra
 
 sudo systemctl restart nfs-kernel-server.service

 sudo systemctl status  nfs-kernel-server.service

三、下载nfs-subdir-external-provisioner配置文件并进行配置

1.下载文件

代码如下(示例):

shell 复制代码
# 准备存放文件的路径
mkdir -p /data/k8s/nfs-storageclass
# 下载deployment配置文件
wget https://raw.githubusercontent.com/kubernetes-sigs/nfs-subdir-external-provisioner/refs/tags/v4.0.2/deploy/deployment.yaml -O /data/k8s/nfs-storageclass/deployment.yaml

# 下载storageclass配置文件
wget https://raw.githubusercontent.com/kubernetes-sigs/nfs-subdir-external-provisioner/refs/tags/v4.0.2/deploy/class.yaml -O /data/k8s/nfs-storageclass/class.yaml

# 下载rbac配置文件
wget https://raw.githubusercontent.com/kubernetes-sigs/nfs-subdir-external-provisioner/refs/tags/v4.0.2/deploy/rbac.yaml -O /data/k8s/nfs-storageclass/rbac.yaml

2.修改配置

deployment.yaml

根据本地情况修改相关配置项:(我的本地配置如下)

nfs-server-ip:192.168.XX.5

nfs-path:/data/nfs

yaml 复制代码
          env:
            - name: PROVISIONER_NAME
              value: k8s-sigs.io/nfs-subdir-external-provisioner
            - name: NFS_SERVER
              value: 192.168.XX.5
            - name: NFS_PATH
              value: /data/nfs
      volumes:
        - name: nfs-client-root
          nfs:
            server: 192.168.XX.5
            path: /data/nfs

三、进行部署

shell 复制代码
kubectl apply -f /data/k8s/nfs-storageclass/rbac.yaml

kubectl apply -f /data/k8s/nfs-storageclass/deployment.yaml

kubectl apply -f /data/k8s/nfs-storageclass/class.yaml

查看部署结果


备注:关于镜像无法拉取问题的处理

我的思路是用香港地域的云主机去拉取

https://blog.csdn.net/baidu_35848778/article/details/143504023

相关推荐
雪可问春风10 小时前
docker环境部署
运维·docker·容器
AI攻城狮10 小时前
用 Obsidian CLI + LLM 构建本地 RAG:让你的笔记真正「活」起来
人工智能·云原生·aigc
科技小花12 小时前
AI重塑数据治理:2026年核心方案评估与场景适配
大数据·人工智能·云原生·ai原生
kobe_OKOK_12 小时前
S7 adapter Docker run
运维·docker·容器
阿里云云原生12 小时前
基于 HiClaw 的运维场景多智能体协同实践
云原生
阿里云云原生14 小时前
从 OpenSearch 到阿里云 SLS:极致弹性、更低成本、生态兼容
云原生
yuanlaile14 小时前
从入门到部署|2026年Koa全栈开发实战:覆盖Node.js、数据库、部署与云架构全链路
微服务·云原生·kubernetes·node.js·serverless·nodejs全栈开发
Learn-Python15 小时前
修改docker容器内文件后让其生效
运维·docker·容器
http阿拉丁神猫15 小时前
kubernetes知识点汇总37-42
云原生·容器·kubernetes
L16247616 小时前
Containerd 完整部署安装与使用指南
容器