dim*_*zak 4 kubernetes persistent-volumes persistent-volume-claims
我是kubernetes的新手,我正在尝试在自己的PC中添加PVC statefulset。PV和PVC如下所示:
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
neo4j-backups 5Gi RWO Retain Bound default/backups-claim manual 1h
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
backups-claim Bound neo4j-backups 5Gi RWO manual 51m
Run Code Online (Sandbox Code Playgroud)
基本上,我希望有状态集的所有Pod都可以看到该卷的内容,因为备份文件存储在该卷中。
可以在这里找到使用过的Statefulset
Minikube版本:
minikube version: v0.25.2
Kubernetes版本:GitVersion:"v1.9.4"
如果volumeClaimTemplates在StatefulSetk8中使用,则将进行动态预配置并为每个Pod创建一个PVC和相应的PV,因此它们中的每个都有自己的存储。
您要创建一个PV和一个PVC,并将其用于Statefulset的所有副本中。
下面是Kubernetes 1.10上的示例,如何做到这一点,/var/www/html这三个Pod都将在其中共享,只需更改/directory/on/host到计算机上的某个本地目录即可。我也在minikube v0.26.0上运行了这个示例
当然,下面仅是说明此想法的示例,但在实际示例中,Pod中的进程应注意同步访问共享存储。
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: example-pv
spec:
capacity:
storage: 100Gi
# volumeMode field requires BlockVolume Alpha feature gate to be enabled.
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Delete
storageClassName: local-storage
local:
path: /directory/on/host
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- minikube
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: example-local-claim
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: local-storage
---
apiVersion: "apps/v1beta1"
kind: StatefulSet
metadata:
name: nginx
spec:
serviceName: nginx
replicas: 3
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx-container
image: "nginx:1.12.2"
imagePullPolicy: "IfNotPresent"
volumeMounts:
- name: localvolume
mountPath: /var/www/html
volumes:
- name: localvolume
persistentVolumeClaim:
claimName: example-local-claim
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5620 次 |
| 最近记录: |