配置 Pod 以使用 PersistentVolume 作为存储

news/2024/7/4 7:45:35 标签: kubernetes, kubelet, 云原生, docker

最近了解这个k8s在PVC存储这儿卡了两天,今天终于算是大概搞明白是个怎么回事了。

以下是该过程的总结:

  • 创建由物理存储支持的 PersistentVolume。你不会将卷与任何 Pod 关联。

  • 创建一个 PersistentVolumeClaim, 它将自动绑定到合适的 PersistentVolume。

  • 创建一个使用 PersistentVolumeClaim 作为存储的 deployment

  • https://kubernetes.io/zh/docs/tasks/configure-pod-container/configure-persistent-volume-storage/

原理图

路径说明
/mnt/data本地主机上的目录
/app/wizminikube容器里的路径
/wiz/storage/pod的路径

步骤

镜像拉取

  • 这里以WIZ为测试,具体可以参考为知笔记docker私有化部署
docker pull wiznote/wizserver

minikube 挂载本地目录

  • 启动挂载
minikube start --mount --mount-string="/mnt/data:/app/wiz"
  • 验证
minikube ssh
cd /app/wiz
# 创建一个文件再去主机上 /mnt/data 查看是否存在即可

PV 创建

  • 配置文件wiz-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: wiz-pv-volume
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/app/wiz"
  • 部署
kubectl create -f  wiz-pv.yaml
  • 查看
kubectl get pv
  • 删除
kubectl delete pv wiz-pv-volume

PVC 创建

  • 配置文件wiz-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: wiz-pv-claim
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 3Gi
  • 部署
kubectl create -f  wiz-pvc.yaml
  • 查看
kubectl get pvc
  • 删除
kubectl delete pvc wiz-pv-claim

deployment 创建

如需了解更多,请访问: https://www.emperinter.info/2022/04/18/configure-persistent-volume-storage/


http://www.niftyadmin.cn/n/1691058.html

相关文章

K8S单节点部署

最近尝试学了一下K8S,感觉还行吧!只是对于我自己的项目来说还没必要,弄个docker就不错了,集群对于小项目来说部署有点夸张。个人看了这几天发现官方的交互式教程还是挺爽的,简单了解还是可行的。我这就弄个从头到尾的单…

在markdown中或者CSDN中如何展示双下滑线

最近在CSDN中写文章时,遇到了一个问题,当我输入__proto__ 时,在展示的时候,下滑想不显示emm… 于是乎我一通翻找,发现原来不止csdn,markdown里也有这样的问题,并最终找到了解决办法&#xff01…

如何在安卓APP中添加分享按钮?

最近想给一个APP添加分享屏幕截图的功能&#xff0c;就尝试找了一圈相关的Package&#xff0c;最后找倒是没找到&#xff0c;倒是在StackOverflow找到了一个解决方法。 布局及相关权限 AndroidManifest.xml权限添加 <!-- STORAGE PERMISSION FOR SCREEN SHOT--> <…

如何安装以及用相关插件配置OBSIDIAN?

之前看人推荐logseq就尝试了一下&#xff0c;吐槽跨设备同步难搞&#xff0c;然后被人种草了Obsidian&#xff0c;这几天使用下来感觉确实比logseq好用多了&#xff0c;第三方插件同步虽然有点冲突但大体上还好。现在考虑怎么去合理规划tag以及wiznote笔记的迁移&#xff0c;虽…

Mysql从库报错-Got fatal error 1236

Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Could not find first log file name in binary log index file’ 如需了解更多&#xff1a;https://www.emperinter.info/2022/05/05/mysql-master-slave-got-fatal-error-1236/ 解决办…

WordPress网站数据库报错 Error establishing a database connection

最近搞了一下网站迁移&#xff0c;因为主从同步有问题就又重新迁移回去了&#xff0c;结果解决同步的时候不清楚咋把另一个网站的数据库连接给干出Error了。Error如图所示&#xff08;Error establishing a database connection&#xff09; 确定密码是否正确 进网站目录查看wp…

如何在Android中使用Google FireBase?

我这里引用Firese的目的主要是检测到底有多少用户在使用相关产品&#xff0c;用的是Firebase的免费版本。看官方教程还是被一些地方给卡住了&#xff0c;特别是检测是否成功时。比较幸运的是Google团队还是比较靠谱&#xff0c;咨询相关问题都能给出及时反馈和建议。 如需了解更…

WordPress插件-自动生成导航目录

自动生成导航 一个可以在你的WordPress文章上生成导航目录的插件! 插件github地址&#xff1a;https://github.com/emperinter/auto-generate-navigation ,欢迎star收藏。 自己安装 下载: https://github.com/emperinter/auto-generate-navigation/releases 按图中指引安装即…