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

相关推荐
morning_sir_jking23 分钟前
深入解析 kube-proxy:Kubernetes 服务发现的网络基石
网络·kubernetes·服务发现
做运维的阿瑞1 小时前
Docker 通信核心:docker.sock 完全指南
运维·docker·容器
andwhataboutit?2 小时前
Docker Compose学习
学习·docker·容器
忧郁的橙子.2 小时前
十二、kubernetes 1.29 之 存储 Volume、pv/pvc
云原生·容器·kubernetes
霍小毛2 小时前
Kubernetes云平台管理实战:滚动升级与秒级回滚
java·容器·kubernetes
IT东3 小时前
用 Docker + Squoosh 打造图片压缩 API 服务
运维·docker·容器
小诸葛的博客3 小时前
k8s lease使用案例
云原生·容器·kubernetes
红尘客栈24 小时前
Kubernetes 集群调度
java·linux·网络·容器·kubernetes
m0_464608265 小时前
Kubernetes 集群调度与PV和PVC
云原生·容器·kubernetes
Syntech_Wuz7 小时前
从 C 到 C++:容器适配器 std::stack 与 std::queue 详解
数据结构·c++·容器··队列