存储服务NFS内容补充

  • NFS用户映射4种squash在架构中的选择
  • 存储服务配置参数
  • nfs挂载常见问题
  • NFS服务相关重要文件命令总结
  • 挂载参数说明

第一部分 NFS4种squash

image

1.1NFS存储服务用户映射原理图

客户端映射原理图

1.2 NFS用户映射的练习

服务端:
    /data/w   可读可写权限,所有用户都做映射,  采用同步传输数据
    /data/r   只能读取数据,只有root用户组映射,采用异步传输数据
    客户端:
    backup   /data/w  --挂载点 /data/w   可以存储数据 
    web01    /data/r  --挂载点 /data/r   不能存储数据

解题步骤

    服务端:
    第一个历程:编写配置文件
    vi /etc/exports
    /data/w  172.16.1.0/24(rw,sync,all_squash)
    /data/r  172.16.1.0/24(ro,async,root_squash)

    第二个历程:创建共享存储目录
    mkdir /data/{r,w}
    chown nfsnobody. /data/{r,w}

    第三个历程:重启存储服务
    systemctl reload nfs    
    ###########################
    客户端:
    第一个历程:创建挂载点目录
    mkdir /data/{r,w}
    第二个历程:进行挂载
    backup
    mount -t nfs 172.16.1.31:/data/w  /data/w
    web01
    mount -t nfs 172.16.1.31:/data/r  /data/r

1.3 NFS服务影响存储权限原因

    1. 服务端配置文件参数  ro/rw
    2. 服务端本身目录权限(如果是多级目录,要看上一级目录的权限) 
    3. 服务端共享目录权限存在继承关系  
    PS:建议设置共享目录时,不要存在父级与子级关系
    4. 客户端挂载参数是否为 ro
    5.千万不要将配置文件格式进行对齐。注意格式问题。

exportes配置文件的父级与子集


image

第二部分 nfs挂载常见问题

 异常问题一:
    ls: cannot open directory .: Stale file handle  (文件句柄错误)
    出现原因: 当父级和子级目录同时进行挂载时,一旦父级目录取消共享,但是客户端还是处于挂载状态 挂载也会显示异常 看不到
    问题解决: 将和父级目录有关的所有挂载点全部卸载,重新挂载
    
    异常问题二:
    Cannot register service: RPC: Unable to receive;
    出现原因: 服务启动顺序不正确 先启动rpcbind 
    问题解决: 关闭所有服务,按顺序进行启动
        centos 6 会出现这样问题
    
    异常问题三:
    出现挂载卡死情况
    clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)
    出现原因: 服务端开启防火墙,阻止客户端访问
    问题解决: 关闭防火墙
    
    异常问题四:
    服务端采用restart情况,会有一个90s延迟;造成客户端挂载好共享目录,90s内无法存储数据
    出现原因: 
    cat /etc/sysconfig/nfs|grep 90
    #NFSD_V4_GRACE=90
    #NFSD_V4_LEASE=90
    异常问题五:
    客户端未安装nfs-utils

第三部分 nfs存储排错原理

01. 检查服务端服务是否启动
    02. 检查nfs服务是否向rpc服务注册
        [root@nfs01 ~]# rpcinfo -p localhost   nfs并未向rpcbind注册情况
        program vers proto   port  service
         100000    4   tcp    111  portmapper
         100000    3   tcp    111  portmapper
         100000    2   tcp    111  portmapper
         100000    4   udp    111  portmapper
         100000    3   udp    111  portmapper
         100000    2   udp    111  portmapper
        [root@nfs01 ~]# rpcinfo -p localhost
        program vers proto   port  service     已经进行注册
         100000    4   tcp    111  portmapper
         100000    3   tcp    111  portmapper
         100000    2   tcp    111  portmapper
         100000    4   udp    111  portmapper
         100000    3   udp    111  portmapper
         100000    2   udp    111  portmapper
         100005    1   udp  20048  mountd
         100005    1   tcp  20048  mountd
         100005    2   udp  20048  mountd
         100005    2   tcp  20048  mountd
         100005    3   udp  20048  mountd
         100005    3   tcp  20048  mountd
         100003    3   tcp   2049  nfs
         100003    4   tcp   2049  nfs
         100227    3   tcp   2049  nfs_acl
         100003    3   udp   2049  nfs
         100003    4   udp   2049  nfs
         100227    3   udp   2049  nfs_acl
         100021    1   udp  60318  nlockmgr
         100021    3   udp  60318  nlockmgr
         100021    4   udp  60318  nlockmgr
         100021    1   tcp  32828  nlockmgr
         100021    3   tcp  32828  nlockmgr
         100021    4   tcp  32828  nlockmgr
      03. 检查nfs服务是否存在可以共享目录 
    showmount -e  172.16.1.31
    [root@backup ~]# showmount -e  172.16.1.31
       Export list for 172.16.1.31:   没有共享目录
       /data 172.16.1.0/24     有共享目录

第四部分 NFS服务相关重要文件命令总结

/etc/exports
    /var/lib/nfs/etab         --- 记录nfs服务默认配置参数信息(不能修改)
    rpcinfo -p 172.16.1.31 
    showmount -e 172.16.1.31  
    /usr/sbin/exportfs        --- 可以平滑重启nfs服务,可以临时设置共享存储目录
    平滑重启服务:exportfs -rv
    临时创建目录:exportfs -o rw,sync  192.168.232.0/24:/data01

第五部分 NFS服务客户端操作介绍

NFS服务客户端操作介绍
    如何进行挂载:
    mount -t nfs 172.16.1.31:/data  /mnt    
    实现开机自动挂载:
    方法一:编写/etc/rc.local 
    mount -t nfs 172.16.1.31:/data  /mnt
    方法二:编写/etc/fstab文件
    172.16.1.31:/data   /mnt    nfs  defaults   0 0
    centos6 
    启动系统 -- 加载fstab(本地) -- 启动network网络服务 -- netfs           (在系统启动完毕之后,再次加载fstab)
    centos7
    启动系统 -- 加载fstab(本地) -- 启动network网络服务 -- remote-fs.target(在系统启动完毕之后,再次加载fstab)
    
    启动nfs服务客户端很慢:
    出现原因:在客户端上配置自动nfs服务挂载,有时候服务端的存储目录会出现问题,所以客户端会一直挂载。
   --- 耦合度太高(服务器和服务器的关系太过于紧密了)
    解决问题:取消自动挂载  
              启动顺序 先开启后端服务  nfs mysql backup 缓存服务  在开启前端服务 web服务 负载均衡服务

挂载参数说明

defaults: 
    rw, suid(setuid), dev, exec, auto(mount -a), nouser, and async(异步存储)
    noatime
    访问文件时不更新文件的inode时间戳,高并发环境下,推荐显示应用该选项,可以提高系统I/O性能。性能优化
?   nodiratime
    不更新文件系统上的directory inode时间戳,高并发环境,推荐显式应用该选项,可以提高系统I/O性能。性能优化
    remount
    在不进行卸载挂载点时,直接重新挂载修改挂载参数
    文件系统只读,mount -o remount,rw /
    rsize=262144    用户 (读取) --- web01 /data  2M --- nfs /data 10M 压力大   
                                      web设置一个缓存区 262144字节  设置大小和内存有关 把用户上次读过的数据存在缓存区

    wsize=262144    用户(存储)  --- web01 /data 10M --- nfs存储服务器压力大 /data 10M 
                                      在客户端设置一个缓冲区 262144字节
    hard(了解)           --- 当服务端处于关闭状态,客户端会处于一直挂载 不是好的状态,会造成网站的耦合度过高。
    soft(了解)          --- 当服务端处于关闭状态,不会一直挂载 
    proto=tcp(了解 )      --- 挂载协议
    客户端重要文件:/proc/mounts  --- 查看到mount挂载命令默认参数信息
    
    进行卸载:umount -lf

第六部分 NFS存储服务的优缺点

优点:配置 安装简单
       缺点:没有认证功能        分布式存储/ftp/samba
             无法支持高并发存储  日PV 2000万
             无法实现高可用      分布式存储/keepalived
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,525评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,203评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,862评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,728评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,743评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,590评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,330评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,244评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,693评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,885评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,001评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,723评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,343评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,919评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,042评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,191评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,955评论 2 355