前面那篇是知识,自己动手了才是留下来的才是经验。
一般的教程会教你从第一步到第一百步怎么走,而优秀的教程则会教你从第一步到第一百步为什么要那么走,以及有哪些坑。当然,差劲点的直接半路夭折了。显然,本篇是一般的教程。跟着做最终是能动,但是中间那些坑坑洼洼的只有从白板做起的人知道。
看到这段话的小伙伴,可以现在退出去,自己从白板做一份,走不通了,在来比对一下咱的差别,再走过,就是你的经验了。
1、准备:一个挂载的本地目录并且目录下有个文件
mkdir /root/data
echo 'Hello from Kubernetes storage' > /mnt/data/index.html2、创建 一个hostpath类型的PersistentVolume
apiVersionv1
kindPersistentVolume
metadata
nametask-pv-volume
labels
typelocal
spec
storageClassNamemanual
capacity
storage10Gi
accessModes
ReadWriteOnce
hostPath
path"/mnt/data"3、创建 PersistentVolumeClaim
apiVersionv1
kindPersistentVolumeClaim
metadata
nametask-pv-claim
spec
storageClassNamemanual
accessModes
ReadWriteOnce
resources
requests
storage3Gi4、创建 pod
apiVersionv1
kindPod
metadata
nametask-pv-pod
spec
volumes
nametask-pv-storage
persistentVolumeClaim
claimNametask-pv-claim
containers
nametask-pv-container
imagenginx
ports
containerPort80
name"http-server"
volumeMounts
mountPath"/usr/share/nginx/html"
nametask-pv-storage5、验证
#创建pod
kubectl create -f pods/storage/pv-pod.yaml
# 查看是否正常
kubectl get pod task-pv-pod
#进入pod
kubectl exec -it task-pv-pod -- /bin/bash
#验证是nginx服务否正常
root@task-pv-pod:/# apt-get update
root@task-pv-pod:/# apt-get install curl
root@task-pv-pod:/# curl localhost
Hello from Kubernetes storage访问控制
使用 group ID(GID)配置的存储仅允许 Pod 使用相同的 GID 进行写入。 GID 不匹配或缺少将会导致许可被拒绝的错误。 为了减少与用户的协调,管理员可以使用 GID 对 PersistentVolume 进行注解。 这样 GID 就能自动的添加到使用 PersistentVolume 的任何 Pod 中。
使用 pv.beta.kubernetes.io/gid 注解的方法如下所示:
kindPersistentVolume
apiVersionv1
metadata
namepv1
annotations
pv.beta.kubernetes.io/gid"1234"。。。










