zoukankan      html  css  js  c++  java
  • NFS

    一、NFS网络文件系统

    1NFSnetwork file server)概述

    主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。在互联网中对企业应用服务,做集群架构后端的NFS进行数据共享。

    2NFS在小企业中架构

    在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频,图片,附件等静态资源文件(是放在存储里的,典型的存储就是NFS),网站用户上传的文件都放在NFS里面,web服务器去访问存储。

    小型网络公司应用很多,大公司会使用更为复杂的分布式文件系统,比如MFSGFS,DFS

     

    3、集群

    多台服务器共同作用来达到分散压力的目的。

    4、一般企业的三种环境

    生产环境:就是企业正式环境也就是线上环境

    测试环境:做生产环境之前到测试环境进行测试

    开发环境:开发做的环境

    5、跳板机(jump server):

    安全加固,也是映射的过程,运维人员通过VPN(秘密通道)到跳板机提供的虚拟账号、密码,然后跳板机映射成一个真实账号,但是运维人员并不指定真实的账号密码。

    6、负载均衡器,

    起到一个分摊压力的作用,然后发送给许多web服务器为客户服务。

    7、跳板机后的两台服务器

    1)监控服务器

    通过监控服务器可以对远方的多个服务器进行预警和监控,得知整个线上系统的情况。

    2)管理服务器

    这个服务器中会装一些批量管理软件,ansible(小企业用)、saltstack(大企业用),可以对远方的多台服务器进行批量管理。

    3)自动化运维

    通过两个达到:批量管理软件、定时任务加脚本。

    二、NFSweb

    web里有网页目录,网页目录里有几个子目录static(静态目录)、upload;网络文件系统连接的,只是web里网页目录的其中的一个子目录(可以理解是Mount挂载)只挂载子目录,因为网页下面还要放代码,代码不放在nfs里。用户的“写”通过upload目录进到NFS里,“读”通过static目录进到NFS里。

    三、企业生产集群为什么需要共享存储角色

     

     

    通过网络的形式,存储服务器把多个web服务器通过TCP挂载到自己机器上,但是用的硬盘空间仍然是web服务器;并且可实现多个web服务器资源共享。

    四、NFS原理

    1、概述

    NFS:通过网络的形式,存储服务器把多个web服务器通过TCP挂载到自己机器上,但是用的硬盘空间仍然是web服务器;并且可实现多个web服务器资源共享。

    NFS是一个网络文件系统,有一个共享目录,先把本地目录进行共享,通过IP远程挂载,那客户端如何指定,这个远程系统提供的端口呢??

    远程挂在命令:mount 10.0.0.7:/video /video  (对方目录  我方目录)

    2NFS工作流程

    1)首先用户访问网络程序,提出用户请求,这时NFS客户端通过RPC服务的获取NFS服务端的RPC服务的端口号并发出请求;

    2)服务端启动NFS服务和授权网段,向RPC服务注册启动端口,然后将已注册的端口通知NFS客户端的RPC服务。

    3这个时候客户端才知道服务端哪个端口提供数据传输

    (4)NFS客户端与NFS服务端进行挂载

    (5)然后TCP三次握手,连接到NFS服务。

    其实客户端与服务端都有一个rpcbind服务,客户端是个socket进程,服务端的rpc是一个命令。

    服务端需要装两个包:rpcbind nfs-utils

    客户端也需要装一个包。nfs-utils

    五、NFS共享流程

    1、流程详解

    /etc/init.d/rpcbind start  启动RPC

    service rpcbind status   查看启动情况

    rpcinfo               RPC信息

    rpc是个socket进程,监听的都是111端口

    /etc/init.d/nfs start      启动NFS

    rpcinfo               再看rpc信息

    如果不启动rpcbind服务,直接启动nfs服务会失败

    service nfs stop        关闭NFS

    现在需要写配置文件/etc/exports

    /data 192.168.154.0/24(rw,sync)    /data目录共享,允许的网段连接,(读写权限,实时同步)

    /etc/init.d/nfs start      启动NFS

    showmount            查看网络文件能否挂载

    showmount -e          不指明IP,就是查看本地

    如果卡了没有结果,后面加个localhost代表本地

    showmount -e localhost(或者后面加127.0.0.1也行)

    mkdir /data

    修改目录的属主(因为程序用户,NFS默认的程序用户nfsnobody

    chown nfsnobody.nfsnobody /data

    2、本地挂载共享

    mount 192.168.200.105:/data /tmp

    3、远程挂载共享

    showmount -e 192.168.200.105 查看这个IP有没有网络文件系统提供挂载

    mount 192.168.200.105:/data /tmp/

    (如果挂载卡的话,可能是SSH通道出现问题)

    需要修改ssh的配置文件

    vim /etc/ssh/sshd_config

    81GSSAPIAuthentication yes改成no

    122 USEDNS no        DNS反向解析

    service sshd reload           重启sshd服务

    4、为什么写入/etc/fstab中会失败

    netfs服务  强制让系统二次读取fstab配置文件

    第一次启动fstab时候是没有网络的,要想让fstab文件里网络挂载有效,需要先开netfs这个服务

    所以我们把网络挂载写到rc.local里,因为rc.locals是开机启动的第九步,在network之后,启动时候直接是有网络的;不像fstab,在第七步左右,用rc.local就不用netfs这个服务了。

  • 相关阅读:
    Java安全之对称加密、非对称加密、数字签名
    Java 设计模式 之 中介者模式(Mediator)
    使用jquery获取radio的值
    java6枚举类型
    java http头信息
    怎样用java生成GUID与UUID
    struts2国际化
    JSON.stringify(),JSON.parse(),toJSON()方法使用
    阻塞队列之六:LinkedBlockingDeque
    jQuery给控件赋值....
  • 原文地址:https://www.cnblogs.com/kakajiang/p/10009734.html
Copyright © 2011-2022 走看看