zoukankan      html  css  js  c++  java
  • k8s的持久化存储

    本例使用nfs

    创建pv

    [root@k8s-master data]# vi pv.yaml 

    apiVersion: v1
    kind: PersistentVolume
    metadata:
    name: web
    spec:
    capacity:
    storage: 5Gi
    accessModes:
    - ReadWriteOnce
    persistentVolumeReclaimPolicy: Recycle
    nfs:
    path: /data
    server: 10.10.1.10

    字段说明:

    ========================================================

    capacity 指定 PV 的容量为 5G。
    accessModes 指定访问模式为 ReadWriteOnce,支持的访问模式有:
    ReadWriteOnce – PV 能以 read-write 模式 mount 到单个节点。
    ReadOnlyMany – PV 能以 read-only 模式 mount 到多个节点。
    ReadWriteMany – PV 能以 read-write 模式 mount 到多个节点。
    persistentVolumeReclaimPolicy 指定当 PV 的回收策略为 Recycle,支持的策略有:
    Retain – 需要管理员手工回收。
    Recycle – 清除 PV 中的数据,效果相当于执行 rm -rf /thevolume/*。
    Delete – 删除 Storage Provider 上的对应存储资源,例如 AWS EBS、GCE PD、Azure Disk、OpenStack Cinder Volume 等。
    storageClassName 指定 PV 的 class 为 nfs。相当于为 PV 设置了一个分类,PVC 可以指定 class 申请相应 class 的 PV。

    创建PVC

    [root@k8s-master data]# vi pvc.yaml

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
    name: lnmp
    spec:
    accessModes:
    - ReadWriteOnce
    resources:
    requests:
    storage: 5Gi

    [root@k8s-master data]# kubectl apply -f pvc.yaml
    persistentvolumeclaim "lnmp" created

    [root@k8s-master data]# kubectl get pvc
    NAME STATUS VOLUME CAPACITY ACCESSMODES AGE
    lnmp Bound web 5Gi RWO 29s
    [root@k8s-master data]#

    定义PV

    =======================================================

    apiVersion: v1
    kind: PersistentVolume
    metadata:
    name: web
    spec:
    capacity:
    storage: 5Gi
    accessModes:
    - ReadWriteOnce
    persistentVolumeReclaimPolicy: Recycle
    nfs:
    path: /data
    server: 10.10.1.10

    定义PVC

    ==========================================================

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
    name: lnmp
    spec:
    accessModes:
    - ReadWriteOnce
    resources:
    requests:
    storage: 5Gi

    定义pod

    =====================================================

    apiVersion: v1
    kind: ReplicationController
    metadata:
    name:lnmp
    spec:
    replicas: 1
    selector:
    app: o2o
    template:
    metadata:
    labels:
    app: o2o
    spec:
    containers:
    - name: o2o
    image: docker.io/winstonpro/lnmp
    ports:
    - containerPort: 80
    volumeMounts:
    - mountPath: /home/wwwroot/default
    readOnly: false
    name: o2o
    volumes:
    - name: o2o
    nfs:
    server: 10.10.1.10
    path: "/data"

  • 相关阅读:
    XX需求分析系统每日进度(二)
    XX需求分析系统每日进度(一)
    周总结(二)
    Hyperleder Fabric chaincode生命周期
    【转】六种学术不端的引用行为
    引导学生,让学生不走神。
    MySQL 的常用引擎
    LeetCode283移动零问题java高效解法
    使用android studio进行springboot项目的开发
    android逆向反编译工具包下载
  • 原文地址:https://www.cnblogs.com/networking/p/11154540.html
Copyright © 2011-2022 走看看