美文网首页
mac k8s挂载自带的nfs服务

mac k8s挂载自带的nfs服务

作者: Mr_Laoyu | 来源:发表于2020-11-27 20:00 被阅读0次

    版本
    k8s版本:1.19.3
    macos版本:10.15.2
    目标:
    使用StorageClass资源自动创建pv挂载卷

    创建nfs服务(如果没有)

    $ sudo vi /etc/exports
    /Users/xyz/pv/data/ -alldirs  -maproot=root:wheel -network=192.168.0.0 -mask=255.255.0.0
    

    说明:

    • /Users/xyz/pv/data/ 指定共享目录
    • -alldirs 共享目录下的所有目录
    • -maproot 把client端的root用户映射为Mac OS上的root,client端的root组映射为Mac OS上的wheel (gid=0) 组- -network -mask 指定本工作网段,子网掩码

    注意:修改nfs.cnf配置文件,不然k8s挂载nfs时会报错
    查看网络偏好设置获取ip地址

    $ sudo vi /etc/nfs.conf
    nfs.server.mount.require_resv_port = 0
    
    # 服务命令
    sudo nfsd checkexports
    sudo nfsd enable
    sudo nfsd disable
    sudo nfsd start
    sudo nfsd stop
    sudo nfsd restart
    sudo nfsd status
    showmount -e 192.168.0.10
    

    安装nfs-client

    helm安装

    helm upgrade -i nfs stable/nfs-client-provisioner --set nfs.server=192.168.0.10 --set nfs.path=/Users/xyz/pv/data
    
    

    yaml安装
    详见github https://github.com/kubernetes-retired/external-storage/tree/master/nfs-client

    测试

    通过创建PVC看看是否能够自动创建PV

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: test-ns-pvc
      namespace: lens-metrics
      annotations:
        volume.beta.kubernetes.io/storage-class: "nfs-client"   #与nfs-StorageClass.yaml metadata.name保持一致
    spec:
      accessModes:
        - ReadWriteMany
      resources:
        requests:
          storage: 1Gi
    ---
    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: test-pvc
      annotations:
        volume.beta.kubernetes.io/storage-class: "nfs-client"   #与nfs-StorageClass.yaml metadata.name保持一致
    spec:
      accessModes:
        - ReadWriteMany
      resources:
        requests:
          storage: 1Gi
    

    如果没有意外,可以在看到两个pv被创建和绑定


    image.png

    相关文章

      网友评论

          本文标题:mac k8s挂载自带的nfs服务

          本文链接:https://www.haomeiwen.com/subject/zdcfwktx.html