Kubernetes 静态PV使用

Kubernetes  静态PV使用

Kubernetes支持持久卷的存储插件:
https://kubernetes.io/docs/concepts/storage/persistent-volumes/html

  • 缺点:手动建立pv比较繁琐、不适合大工程
  • 优势:小规模使用方便灵活

一、建立pvc yaml文件
vim pvc.yamlnginx

apiVersion: v1
kind: Pod
metadata:
  name: nginx6
spec:
  containers:
  - name: nginx6
    image: nginx
    # 挂在点
    volumeMounts:
    - name: wwwroot
      mountPath: /usr/share/nginx/html
    ports:
    - containerPort: 80
  # 挂载来源
  volumes:
  - name: wwwroot
    # 定义PVC
    persistentVolumeClaim:
      # 定义PVC名称
      claimName: my-pvc

---

apiVersion: v1
# 使用PVC类型
kind: PersistentVolumeClaim
metadata:
  # 与容器应用PVC相同
  name: my-pvc
spec:
  # 定义读写权限
  accessModes:
    - ReadWriteMany
  # 请求资源
  resources:
    requests:
      # 存储空间 5G
      storage: 5Gi

二、建立pv yaml文件
vim pv.yamlvim

apiVersion: v1
# PV类型
kind: PersistentVolume
metadata:
  # PV名称与PVC相同
  name: my-pv
spec:
  # 定义容量
  capacity:
    storage: 5Gi
  # 读写权限
  accessModes:
    - ReadWriteMany
  # nfs分配网络存储
  nfs:
    path: /data/nfs
    server: 192.168.1.115

三、执行建立pv容器api

kubectl apply -f pv.yaml 

四、查看建立pv
kubectl get pvbash

NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
# RWX:读写模式、Available:为可用状态
my-pv 5Gi RWX Retain Available 23s

五、建立pvc容器网络

kubectl apply -f pvc.yaml

六、查看pvc建立容器
kubectl get podapp

NAME READY STATUS RESTARTS AGE
nginx6 1/1 Running 0 20s

七、查看pv与pvc状态
kubectl get pv,pvc测试

NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
# Bound:已经使用以成绑定装填
persistentvolume/my-pv 5Gi RWX Retain Bound default/my-pvc 3m44s
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
# 以绑定到pv
persistentvolumeclaim/my-pvc Bound my-pv 5Gi RWX 78s

八、nfs共享目录下建立一个index.htmlspa

echo "<h1>xxxxxxxxx</h1>" > /data/nfs/index.html

九、进入容器测试
kubectl exec -it nginx6 bash插件

ls /usr/share/nginx/html
index.html
相关文章
相关标签/搜索