nfs的简单搭建与原理
nfs最大的缺点是单点,只能一对一
nfs统称存储服务器,放视频图片之类的东西,所以服务器的容量很大
数字都是放在数据库里边的,
nfs的挂载原理
客户端怎么知道服务端的开启端口?
找rpcbind,再启动的瞬间,nfs会想rpc注册,nfs有哪些端口号可以用,rpc固定监控一个端口号,当客户端来连接的的时候,rpc会受到请求,然后分发端口号,客户端通过端口号在和nfs建立连接
具体步骤
1需要先装rpcbind的东西
2装nfs-utils
要先起rpc服务
在起nfs服务,nfs要像rpc注册
客户端挂载要先经过rpc(rpc才是socket端口)通过rpc知道nfs的端口,然后才和nfs三次握手。
服务端的rpc是socket进程,客户端的是一个命令。
服务端需要张的包
nfs-utils(包括了rpc的客户端)
rpcbind(是rpc的服务端)
命令rpcinfo是看rpc的信息的命令
启动用service rpcbind start
启动nfs用/etc/init.d/nfs start
配置nfs的配置文件,/etc/exports
直接清空以后再写,
书写格式
共享那个目录 那个客户端能连接过来(拥有什么权限用逗号隔开)
例如:/data 192.168.200.0/(rw,sync,all_squash)
命令showmount 命令是查看(本地有没有共享目录)网路文件能不能挂载
参数-e不指明ip是查看本地
创建/data目录,修改目录权限为nfsnobody
在共享的磁盘里放置文件的时候所有人都降权,都变成了程序用户。nfs在重启的时候是无敌时间,在几秒钟内不能做任何事情。
程序用户是最低的,所有人都能进行操作。(读写操作)
amonuid=xxxx 修改nfs的主权限用户
anongid=sss 修改nfs的组权限用户
NFS服务端配置文件路径
NFS服务的默认配置文件路径为:/etc/exports,并且默认是空的。
[root@nfs01 ~]# ls -l /etc/exports
-rw-r--r--. 1 root root 0 1月 12 2010 /etc/exports
[root@nfs01 ~]# cat /etc/exports
提示:
NFS默认配置文件/etc/exports其实是存在的,但是没有内容,需要用户自行配置。
exports配置文件格式
/etc/exports文件位置格式为:
NFS共享的目录 NFS客户端地址1(参1,参2...)客户端地址2(参1,参2...)
NFS共享的目录 NFS客户端地址(参1,参2...)
查看exports语法文件格式帮助的方法为:
执行man exports命令,然后切换到文件结尾,可以快速看如下样例格式:
[root@nfs01 ~]# cat /etc/exports
/data 172.16.1.0/24(rw,sync)
命令说明:
/data :nfs的共享目录路径
172.16.1.0/24:允许挂载我的共享目录的IP地址段
(rw):可读可写
(sync):实时同步
修改配置文件以后,必须重启nfs服务
[root@nfs01 ~]# /etc/init.d/nfs reload
[root@nfs01 ~]# showmount -e #查看生效的nfs配置文件规则
Export list for nfs01:
/data 172.16.1.0/24
给共享目录更改属主属组为nfsnobady
[root@nfs01 ~]# grep nfs /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
[root@nfs01 ~]# ll -d /data
drwxr-xr-x. 2 nfsnobody nfsnobody 4096 3月 9 09:43 /data
特别提示:
如果不授权属主属组,那么共享目录挂载以后将不遵循配置文件exports的设定好的读写规则。虽然也能正常挂载,但是会导致写入文件时提示没有权限。
nfs的缺点
没办法扩容,不能无限扩容,有无敌时间,无敌时间会阻碍我们有单点故障(单点就是一个集群坏一个就不能使用,),不好做高可用,高可用是一个服务器换了会有自动替换的操作。检测nfs是不是活的我们检测111端口,(nmap。Telnet ip 端口可以检测nfs出没出事。这样做会需要修改无敌时间。)还有写入熟读的缺点,硬盘的读写速度有限,20台服务器以内才会选用nfs的初级存储。
开机自启的fstab没有自己启动的原因,没有开机自启netfs,一个服务器没有网是不能挂远程服务的,最根本的原因是,fstab的优先级高于开启网路的优先级,在开机的时候先执行fstab在执行开启网路,而netfs是将fstab挂两边,所以能解决问题。
nfs的简单搭建与原理的更多相关文章
- springmvc4环境简单搭建和定时任务
之前复制粘贴创建了几个ssm的项目,然而回头让自己写的时候还是一头雾水,究其原因是spring的陌生.仅仅是写过几个helloworld而已.而且是照着写.我都不知道springmvc到底需要多少ja ...
- python 简单搭建阻塞式单进程,多进程,多线程服务
由于经常被抓取文章内容,在此附上博客文章网址:,偶尔会更新某些出错的数据或文字,建议到我博客地址 : --> 点击这里 我们可以通过这样子的方式去理解apache的工作原理 1 单进程TCP服 ...
- ubuntu 16.04 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单. 1.安装nfs服务 s ...
- Red Hat 6.5 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在红帽6.5系统中搭建nfs服务. 1.关闭selinux服务 如果已经关闭该服务的可以直接跳过该步骤. ...
- Redis 复制、Sentinel的搭建和原理说明(转)
Redis 复制.Sentinel的搭建和原理说明 转自:http://www.cnblogs.com/zhoujinyi/p/5570024.html. 背景: Redis-Sentinel是Re ...
- python简单搭建HTTP Web服务器
对于Python 2,简单搭建Web服务器,只需在i需要搭建Web服务器的目录(如C:/ 或 /home/klchang/)下,输入如下命令: python -m SimpleHTTPServer 8 ...
- 1.0、Struts2的简单搭建方法
一.Struts2:是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet:用于jsp页面与Java代码之间的交互. 1.核心:Filter拦截器,对所有的请求进行拦截. 2.工作 ...
- 零配置简单搭建SpringMVC 项目
SpringMVC是比较常用的JavaWeb框架,非常轻便强悍,能简化Web开发,大大提高开发效率,在各种Web程序中广泛应用.本文采用Java Config的方式搭建SpringMVC项目,并对Sp ...
- C#基础--.net平台的重要组成部分以及.net程序简单的编译原理
.net平台的组成只要有两部分 FCL:框架类库 CLR:公共语言运行时 .net程序简单的编译原理 1.0:使用C#编译器(csc.exe) 将C#源代码编译成程序集+{编译之前:会检查C ...
随机推荐
- maven shade插件小记
maven shade plugin插件小用 项目中一直使用assembly插件来整合依赖包到一个胖jar,在做这个akka http项目的时候,在scala ide的run/debug中都执行正常, ...
- cocos2d: fullPathForFilename: No file found at /cc_2x2_white_image. Possible missing file.
程序运行的时候输出这条信息cocos2d: fullPathForFilename: No file found at /cc_2x2_white_image. Possible missing fi ...
- Druid学习之路 (四)Druid的数据采集格式
作者:Syn良子 出处:https://www.cnblogs.com/cssdongl/p/9715735.html 转载请注明出处 Druid的数据采集格式 Druid可以采集非标准化的数据诸如J ...
- Eclipse+Spark搭建源码分析环境问题分析
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...
- 通过Java编码获取String分行字符串的内容
代码案列: import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.IOException ...
- linux 性能测试工具Lmbench
Lmbench是一套简易,可移植的,符合ANSI/C标准为UNIX/POSIX而制定的微型测评工具.一般来说,它衡量两个关键特征:反应时间和带宽.Lmbench旨在使系统开发者深入了解关键操作的基础成 ...
- 详解Java中的clone方法 -- 原型模式
转自: http://blog.csdn.net/zhangjg_blog/article/details/18369201 Java中对象的创建 clone顾名思义就是复制, 在Java语言中, ...
- WCF用户名密码验证方式
WCF使用用户名密码验证 服务契约 namespace WCFUserNameConstract { [ServiceContract] public interface IWcfContract { ...
- 索引原理-btree索引与hash索引的区别
btree索引与hash索引的区别,之前不清楚,mark一下. Hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree索引需要从根节点到枝节点,最后才能访问到页节点这样多 ...
- openssl 编译
不要费事编译了,直接下载吧! https://www.npcglib.org/~stathis/blog/precompiled-openssl/ 下载 openssl https://www.ope ...