4、架构--NFS实践、搭建web服务、文件共享
笔记
1、晨考
1、数据备份的方式有哪些
全量和增量
2、数据备份的命令有哪些,都有哪些优点缺点
cp : 本地,全量复制
scp :远程,全量复制
rsync :远程,增量复制
3、rsync的参数有哪些并解释
4、rsync守护进程模式的步骤
1、服务端
2、客户端
5、rsync实时同步的步骤
2、昨日问题
1、iptables无法保存
systemctl enable --now iptables
2、Mac电脑VPN
3、rsync
3、今日内容
NFS 网络存储
1、NFS的简介
2、实现NFS多主机共享
4、NFS简介
NFS是Network File System的缩写及网络文件系统。NFS主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。
NFS系统和Windows网络共享、网络驱动器类似, 只不过windows用于局域网, NFS用于企业集群架构中, 如果是大型网站, 会用到更复杂的分布式文件系统FastDFS,glusterfs,HDFS,ceph
5、NFS应用
1.用户访问NFS客户端,将请求转化为函数
2.NFS通过TCP/IP连接服务端
3.NFS服务端接收请求,会先调用portmap进程进行端口映射
4.Rpc.nfsd进程用于判断NFS客户端能否连接服务端;
5.Rpc.mount进程用于判断客户端对服务端的操作权限
6.如果通过权限验证,可以对服务端进行操作,修改或读取

6、NFS实践
6.1、服务端
1、安装NFS和rpcbind
[root@nfs ~]# yum install nfs-utils rpcbind -y
2、创建挂载点
[root@nfs ~]# mkdir /web/nfs{1..9}
3、配置挂载点
[root@nfs ~]# vim /etc/exports
格式:
[挂载点] [可以访问的IP]([权限])
/web/nfs1 172.16.1.0/20(rw,sync,all_squash)
4、关闭selinux和防火墙
[root@nfs ~]# setenforce 0
[root@nfs ~]# systemctl disable --now firewalld
5、启动Nfs和rpcbind服务
[root@nfs ~]# systemctl start nfs-server
[root@nfs ~]# systemctl start rpcbind
6、检查服务端是否正常
[root@nfs ~]# showmount -e [服务端的地址,默认是本机地址]
[root@nfs ~]# showmount -e
Export list for nfs:
/web/nfsv1 172.16.1.0/20
[root@nfs ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/web/nfsv1 172.16.1.0/20
[root@nfs ~]# cat /var/lib/nfs/etab
7、给挂载点授权
[root@nfs ~]# chown -R nfsnobody.nfsnobody /web
6.2、客户端
1、安装NFS
[root@web01 opt]# yum install -y nfs-utils
2、创建目录
[root@web01 opt]# mkdir /opt/nfs/
3、挂载NFS
[root@web01 opt]# mount -t nfs 172.16.1.31:/web/nfs1 /opt/nfs/
4、测试NFS文件同步功能
7、NFS配置详解
| nfs共享参数 | 参数作用 |
|---|---|
| rw | 读写权限 (常用) |
| ro | 只读权限 (不常用) |
| root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户 (不常用) |
| no_root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员 (不常用) |
| all_squash | 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户 (常用) |
| no_all_squash | 无论NFS客户端使用什么账户访问,都不进行压缩 (不常用) |
| sync | 同时将数据写入到内存与硬盘中,保证不丢失数据 (常用) |
| async | 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据 (不常用) |
| anonuid | 配置all_squash使用,指定NFS的用户UID,必须存在系统 (常用) |
| anongid | 配置all_squash使用,指定NFS的用户GID,必须存在系统 (常用) |
1、控制读写
rw、ro
2、控制文件权限
root_squash
no_root_squash
all_squash
no_all_squash
3、控制写模式
sync
async
4、控制用户
anonuid
anongid
统一用户:
1、创建用户
[root@nfs nfs1]# groupadd www -g 666
[root@nfs nfs1]# useradd www -u 666 -g 666 -M -r -s /sbin/nologin
2、修改挂载点权限
[root@nfs nfs1]# chown -R www.www /web/
3、使用
8、搭建考试系统
8.1、搭建WEB服务
1、安装web软件
[root@web01 opt]# yum install httpd php php-devel -y
2、将代码放置于网站的根目录
[root@web01 opt]# cd /var/www/html/
# 上传代码
3、授权
[root@web01 html]# chown -R www.www /var/www/html
4、关闭selinux和防火墙
[root@nfs ~]# setenforce 0
[root@nfs ~]# systemctl disable --now firewalld
5、修改web软件的用户
[root@web01 html]# vim /etc/httpd/conf/httpd.conf
User www
Group www
6、启动web软件
[root@web01 html]# systemctl start httpd
7、测试
1、上传
2、访问
http://172.16.1.7/upload/1_linux.jpg
8.2、配合NFS实现文件共享
1、修改NFS配置文件
[root@nfs nfs1]# vim /etc/exports
/web/upload 172.16.1.0/20(rw,sync,all_squash,anonuid=666,anongid=666)
2、创建挂载点
[root@nfs nfs1]# mkdir /web/upload
[root@nfs nfs1]# chown www.www /web/upload
3、重启NFS
[root@nfs nfs1]# systemctl restart nfs-server rpcbind
4、客户端安装NFS软件
[root@web01 html]# yum install nfs-utils -y
[root@web02 html]# yum install nfs-utils -y
[root@web03 html]# yum install nfs-utils -y
5、挂载
[root@web01 html]# mount -t nfs 172.16.1.31:/web/upload /var/www/html/upload
[root@web02 html]# mount -t nfs 172.16.1.31:/web/upload /var/www/html/upload
[root@web03 html]# mount -t nfs 172.16.1.31:/web/upload /var/www/html/upload
6、测试
用web2上传,web3查看
4、架构--NFS实践、搭建web服务、文件共享的更多相关文章
- Win10搭建web服务实现文件共享
配置Internet Information Services服务,实现文件共享. 1.打开控制面板,启用IIS服务. 启用IIS服务,系统会自动搜索并安装IIS服务. 2.管理web服务 此时在浏览 ...
- docker 搭建 web 服务环境
docker容器虽然早就听说过,但是本人还真的没去用过,刚好看到相关的文章,就分享了下,有机会可以实践下...... 做过开发的人对开发环境的安装.配置应该都不会太陌生,不管你做什么开发,对开发环境都 ...
- python3.x +django + nginx + uwsgi 搭建web服务
最近一直在用django开发自己的网站.在开发和线上环境的对接过程中遇到了许多的坑.所以想以一个老鸟的经历来写一下怎么 搭建web服务 一.python3.x .django .nginx .uwsg ...
- nodejs搭建web服务教程
nodejs搭建web服务教程 先安装nodejs 然后 命令node js文件 即可开启服务了 输出如下 Magic happens on port 9011 你查看端口可以看到tcp 0 0 :: ...
- nginx 与 tomcat 组合搭建web服务
部分内容转自 http://www.cnblogs.com/naaoveGIS/ 1. Web服务 nginx是常用的web服务器,用于获取静态资源,类似的服务器还有apache. tomcat是基于 ...
- 使用Golang搭建web服务
如何用golang搭建一个web服务呢?菜鸟官网的go web编程教程已经介绍了web服务器的工作原理,这里就不赘述了. 我们先看个例子:http.go package main import ( & ...
- Docker for Windows(五)实践搭建SqlServer服务&执行数据库操作
上一篇我们已经搭建了一个mysql数据库服务了:Docker for Windows(四)实践搭建&删除MySQL服务,发现用Docker确实是方便且容易,但上一篇主要是服务的搭建删除等基础操 ...
- 如何在阿里云服务器里配置iis 搭建web服务
IIS,互联网信息服务,一种Web服务组件,利用它,我们可以打开asp.php这些搭建网页所用的文件. 工具/原料 域名 服务器 方法/步骤 登录服务器. 点击开始—>服务器 ...
- Java开发架构篇:领域驱动设计架构基于SpringCloud搭建微服务
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言介绍 微服务不是泥球小单体,而是具备更加清晰职责边界的完整一体的业务功能服务.领域驱动 ...
随机推荐
- web.xml文件配置模板
直接贴完整代码,当然,spring的核心控制器依赖包需要通过mean提前配置 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.// ...
- 解决MySQL服务器禁止远程连接的问题
1. 改表法. 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 " ...
- centos7 配置登录前和登录信息内容
登录之前提示信息: 登录之后提示信息: 上述中,只需修改对应的文件即可. 登录之前: vi /etc/issue 登录之后: vi /etc/motd 补充:将文件内容清空的方法,不是删除. 在前面文 ...
- 离线下载第三方Python包
1.进入Python第三方包下载地(https://pypi.org/)搜索自己需要的包 2.下载需要的包的版本 3.将.whl格式的文件更改为.zip文件,并且解压 4.将解压的2个文件放到Pyth ...
- 5.12-jsp分页功能学习
1.分页功能相关资料查询 分页须知知识点: (1)JDBC2.0的可滚动结果集. (2)HTTP GET请求. 一.可滚动结果集 Connection con = DriverManager.g ...
- 动态代理jdk的Proxy与spring的CGlib
1. 为什么要使用动态代理? 动态代理:在不改变原有代码的情况下上进行对象功能增强 使用代理对象代替原来的对象完成功能 进而达到拓展功能的目的 2.JDK Proxy 动态代理面向接口的动态代理 特点 ...
- MIME类型说明(HTTP协议中数据类型)
MIME(HTTP协议中数据类型) MIME:多功能Internet邮件扩充服务.MIME类型的格式是"大类型/小类型",并与某一种文件的扩展名相对应. 常见的MIME类型: RT ...
- K8S配置多集群访问
中文官档: http://docs.kubernetes.org.cn/823.html 背景:我们通过会有多个k8s集群,例如集群(cn-k8s)和集群(jp-k8s),那个就需要有一台服务器可以同 ...
- SQL语句 order by 升序和 降序查询
原文 https://blog.csdn.net/u010649766/article/details/76180523?utm_medium=distribute.pc_relevant_t0.no ...
- 如何在pyqt中实现平滑滚动的QScrollArea
平滑滚动的视觉效果 Qt 自带的 QScrollArea 滚动时只能在两个像素节点之间跳变,看起来很突兀.刚开始试着用 QPropertyAnimation 来实现平滑滚动,但是效果不太理想.所以直接 ...