新增说明及示例文件

This commit is contained in:
2023-12-15 16:39:01 +08:00
committed by huty
parent 823b19c3f0
commit 3445c145aa
71 changed files with 4048 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
# PersistentVolumeClaim持久卷申领说明官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes
# API 版本
apiVersion: v1
# 资源名称
kind: PersistentVolumeClaim
# 资源元数据
metadata:
## 名称
name: 该 PersistentVolumeClaim 的名称【自定义,见名知意】
# 内容
spec:
## 资源
resources:
requests:
### 容量
storage: 该 PersistentVolumeClaim 使用的空间大小【自定义单位使用量纲Ki、Mi、Gi、Ti、Pi、Ei】
## 卷模式
volumeMode: 该 PersistentVolumeClaim 使用的卷模式【Filesystem默认文件系统Block块】
## 访问模式
accessModes:
- 该 PersistentVolumeClaim 使用的访问模式【ReadWriteOnce卷可以被一个节点以读写方式挂载ReadOnlyMany卷可以被多个节点以只读方式挂载ReadWriteMany卷可以被多个节点以读写方式挂载ReadWriteOncePod卷可以被单个 Pod 以读写方式挂载(整个集群中只有一个 Pod 可以读取和写入)】
## Storage Class 名称
storageClassName: 该 PersistentVolumeClaim 使用的 StorageClass 的名称
## 指定 PersistentVolume 配置后该 PersistentVolumeClaim 只能绑定指定的 PersistentVolume
volumeName: PersistentVolume 的名称
## 选择器
selector:
### 卷必须包含带有此值的标签
matchLabels:
name: value
### 通过设定键key、值列表和操作符operator 来构造的需求
matchExpressions:
- {key: key的值, operator: operator的值【In包含NotIn不包含Exists存在DoesNotExist不存在】,values: [value的值1,value的值2,...]}

View File

@@ -0,0 +1,17 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-example
spec:
resources:
requests:
storage: 1Gi
volumeMode: Filesystem
accessModes:
- ReadWriteMany
storageClassName: storage-local-example
selector:
matchLabels:
release: "stable"
matchExpressions:
- {key: environment, operator: In, values: [dev]}

View File

@@ -0,0 +1,34 @@
# PersistentVolume持久卷说明官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes
# API 版本
apiVersion: v1
# 资源名称
kind: PersistentVolume
# 资源元数据
metadata:
## 名称
name: 该 PersistentVolume 的名称【自定义,见名知意】
# 内容
spec:
## 资源
capacity:
### 容量
storage: 该 PersistentVolume 使用的空间大小【自定义单位使用量纲Ki、Mi、Gi、Ti、Pi、Ei】
## 卷模式
volumeMode: 该 PersistentVolume 使用的卷模式【Filesystem默认文件系统Block块】
## 访问模式
accessModes:
- 该 PersistentVolume 使用的访问模式【ReadWriteOnce卷可以被一个节点以读写方式挂载ReadOnlyMany卷可以被多个节点以只读方式挂载ReadWriteMany卷可以被多个节点以读写方式挂载ReadWriteOncePod卷可以被单个 Pod 以读写方式挂载(整个集群中只有一个 Pod 可以读取和写入)】
## 回收策略
persistentVolumeReclaimPolicy: 该 PersistentVolume 使用的回收策略【Retain保留、手动回收当 PersistentVolumeClaim 被删除时PersistentVolume 仍然存在,需要手动删除 PersistentVolume 及 PersistentVolume 中的数据Delete删除当 PersistentVolumeClaim 被删除时,自动删除 PersistentVolume 及 PersistentVolume 中的数据)】
## StorageClass 名称
storageClassName: 该 PersistentVolume 使用的 StorageClass 的名称
## 预留 PersistentVolume配置该 PersistentVolume 只能被指定的 PersistentVolumeClaim 绑定)
claimRef:
name: PersistentVolumeClaim 的名称
namespace: Namespace 的名称
## 挂载选项
mount-options:
挂载选项参数【 不同类型的存储类型参数不一样具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes/#mount-options 】
## 节点亲和性
nodeAffinity:
节点亲和性参数【 local 存储类型需要声明具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes/#node-affinity 】

View File

@@ -0,0 +1,24 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-local-example
spec:
capacity:
storage: 5Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: storage-local-example
local:
path: /data/k8s/pv/local/example
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- nodename-example-1
- nodename-example-2
- nodename-example-3

View File

@@ -0,0 +1,14 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-nfs-example
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteMany
nfs:
server: nfs-server.default.svc.cluster.local
path: "/"
mountOptions:
- nfsvers=4.2

View File

@@ -0,0 +1,23 @@
# StorageClass存储类 说明官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/storage-classes
# API 版本
apiVersion: storage.k8s.io/v1
# 资源名称
kind: StorageClass
# 资源元数据
metadata:
## 名称
name: 该 StorageClass 的名称【自定义,见名知意】
# 制备器(供应商)
provisioner: 该 StorageClass 使用的制备器【可选制备器见官方文档: https://kubernetes.io/zh-cn/docs/concepts/storage/storage-classes/#provisioner 】
# 回收策略
reclaimPolicy: 该 StorageClass 的回收策略【Delete删除默认当使用此 PersistentVolume 的对象被删除时,此 PersistentVolume 自动删除Retain保留当使用此 PersistentVolume 的对象被删除时,此 PersistentVolume 不会自动删除)】
# 卷捆绑模型
volumeBindingMode: 该 StorageClass 的绑定模式【Immediate默认PersistentVolumeClaim 创建后立即完成制备和绑定WaitForFirstConsumer使用 PersistentVolumeClaim 的 Pod 被创建后才制备和绑定】
# 允许的拓扑结构
allowedTopologies: 该 StorageClass 允许的拓扑架构【具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/storage-classes/#allowed-topologies 】
# 是否允许卷扩展
allowVolumeExpansion: 是否允许卷扩展【true允许false不允许。仅部分制备器可用具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/storage-classes/#allow-volume-expansion 】
# 挂载选项
mountOptions: 该 StorageClass 的挂载选项【仅部分制备器可用具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes/#mount-options 】
# 参数
parameters: 该 StorageClass 的参数【使用不同类型的制备器时参数不一样具体见官方文档https://kubernetes.io/zh-cn/docs/concepts/storage/storage-classes/#parameters 】

View File

@@ -0,0 +1,7 @@
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: storage-local-example
provisioner: kubernetes.io/no-provisioner
reclaimPolicy: Retain
volumeBindingMode: WaitForFirstConsumer