综合架构网站存储服务上(NFS)

news/2024/5/14 2:02:25/文章来源:https://blog.csdn.net/chenbeiping888/article/details/103951394

文章目录

  • 01.知识概述部分
  • 02.知识回顾说明
  • 03.存储服务概述介绍
            • 存储服务器存在意义:
  • 04.存储服务存储原理
        • 1)存储数据原理
  • 05.存储服务部署过程
      • 服务端部署过程:
            • 第一个里程:安装软件程序
            • 第二个里程:编辑配置文件
            • 第三个里程:创建存储目录并更改属主属组信息
            • 第四个里程:编写本地解析配置文件
            • 第五个里程:启动服务程序
      • 客户端部署过程:
            • 第一个里程:下载安装软件
          • 第二个里程:挂载应用存储设备服务
  • 06.存储服务配置文件 (参数)
        • 常见存储问题:
        • 作业:
  • 知识梳理总结

01.知识概述部分

1)存储服务概述接收
2)存储服务存储原理
3)存储服务部署过程
4)存储服务配置文件
5)存储服务相关命令
6)存储服务客户端配置 mount
7)存储服务企业应用

02.知识回顾说明

1.备份服务常用的参数 (-avz)

z     表示的是压缩同步数据
v  	  表示显示
a  	  归档模式  (rlptgoD)
r     递归传输目录
l     备份软链接文件          L 软链接文件的真实数据信息
p     保持文件权限属性不变    P 显示数据传输进度信息
t     保持文件修改时间不变
g     保持文件属组信息不变 (root用户)、
o     保持文件属主信息不变 (root用户)
D     备份设备文件信息

2 备份服务企业的应用

1.多模块备份数据 (数据隔离)
[sa_backup]
[dev_backup]

2.备份目录中创建子目录 (备注)

rsync /oldboy/ rsync_backup@172.16.1.41::backup/子目录/

PS 子目录后不能创建多级目录

3.排除指定数据不要进行同步

--exclude  --exclude-from 

4.免密码进行备份数据

chmod 600 /rsync.password
rsync /oldboy/ rsync_backup@172.16.1.41::backup --password-file=/rsync.password      

5.无差异备份数据

--delete  

6.限速备份数据

--bwlimit   

7.备份服务访问控制 (白名单 黑名单)

hosts allow
hosts deny

总结:精通备份服务 rsync
1)备份服务部署过程
2)备份服务配置参数 man rsyncd.conf
3)备份服务命令参数

03.存储服务概述介绍

在这里插入图片描述
NFS是Network File System的缩写,中文意思是网络文件系统,
主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录

互联网中小型网站集群机构后端常用NFS进行数据共享 (新华日报)
大型网站,那么有可能还会用到更复杂的分布式文件系统,例如:Moosefs(mfs)、GlusterFS(*)、FastDFS
https://blog.51cto.com/13555423/2082796Mfs分布式文件系统详解
在这里插入图片描述

NFS发展历史
总结: 没有NFS共享存储时,实现数据统一存储会非常复杂

示例:

A 主机本地保存数据目录 /A_data 部署rsync服务
图片A 19:00 传输到A主机上 19:01 数据同步
编写定时任务 每分钟
rsync -az /A_data/ --delete rsync_backup@172.16.1.2::B_data --password-file=/etc/rsync.password
rsync -az /A_data/ --delete rsync_backup@172.16.1.3::C_data --password-file=/etc/rsync.password

B 主机本地保存数据目录 /B_data 部署rsync服务
图片B 19:01 传输到B主机上 19:02 数据同步
编写定时任务 每分钟
rsync -az /B_data/ --delete rsync_backup@172.16.1.1::A_data --password-file=/etc/rsync.password
rsync -az /B_data/ --delete rsync_backup@172.16.1.3::C_data --password-file=/etc/rsync.password

C 主机本地保存数据目录 /C_data 部署rsync服务
编写定时任务 每分钟
rsync -az /C_data/ --delete rsync_backup@172.16.1.1::A_data --password-file=/etc/rsync.password
rsync -az /C_data/ --delete rsync_backup@172.16.1.2::B_data --password-file=/etc/rsync.password

存储数据 A(10G) --> A服务器 (30G 300元) B(10G) —> B服务器(10G 300元) C(10G) —> C服务器(10G 300元) 900元
A 服务器 (10G)100
B 服务器 (10G)100 存储服务器 30G 300 磁盘成本 600
C 服务器 (10G)100

存储服务器存在意义:

1)实现数据统一存储
2)节省磁盘购买成本

04.存储服务存储原理

在这里插入图片描述

1)存储数据原理

a 在存储客户端创建本地存储数据目录
b 在存储服务端创建共享存储数据目录
c 实现客户端目录和存储目录建立挂载
客户端目录中操作数据等价于存储服务器目录中操作数据

05.存储服务部署过程

预备知识:rpcbind rpc ---- 远程过程调用服务程序 (类似于中介)

在这里插入图片描述

在这里插入图片描述

NFS如果没有中介服务,一启动会显示很多不同的服务进程,端口号随机,有了中介服务rpc就可以直接连接111端口,方便管理

服务端部署过程:

第一个里程:安装软件程序
yum install -y rpcbind  nfs-utils
[root@nfs01 ~]# rpm -qa rpcbind
rpcbind-0.2.0-48.el7.x86_64
[root@nfs01 ~]# rpm -qa nfs-utils
nfs-utils-1.3.0-0.65.el7.x86_64
第二个里程:编辑配置文件
 (man exports)EXAMPLE                 例子
# sample /etc/exports file   /etc/exports文件示例
/               master(rw) trusty(rw,no_root_squash) 主(rw)可靠的(rw, no_root_squash)
/projects       proj*.local.domain(rw)  /项目项目* .local.domain (rw)
/usr            *.local.domain(ro) @trusted(rw)
/home/joe       pc001(rw,all_squash,anonuid=150,anongid=100)
/pub            *(ro,insecure,all_squash)
/srv/www        -sync,rw server @trusted @external(ro)
/foo            2001:db8:9:e54::/64(rw) 192.0.2.0/24(rw)/build          buildhost[0-9].local.domain(rw)The first line exports the entire filesystem to machines master and trusty.  In addition to write  access,  all
第一行将整个文件系统导出到主机和可靠的机器。除了写访问,所有uid  squashing  is  turned off for host trusty. The second and third entry show examples for wildcard hostnames
uid压缩为主机可靠关闭。第二个和第三个条目展示了通配符主机名的示例and netgroups (this is the entry `@trusted'). The fourth line shows the entry for the PC/NFS  client  discussed
和netgroups(这是条目“@trusted”)。第4行显示了所讨论的PC/NFS客户机的条目above.  Line  5  exports  the public FTP directory to every host in the world, executing all requests under the
以上。第5行将公共FTP目录导出到世界上的每个主机,执行nobody account. The insecure option in this entry also allows clients with NFS implementations that don't use a
没有人账户。此条目中的不安全选项还允许使用NFS实现的客户端不使用reserved  port  for  NFS.  The sixth line exports a directory read-write to the machine 'server' as well as the
为NFS保留端口。第6行将目录的读写导出到机器“服务器”和`@trusted' netgroup, and read-only to netgroup `@external', all three mounts with the  `sync'  option  enabled.
' @trusted' netgroup和' @external'为只读,这三个选项都启用了' sync'选项。The seventh line exports a directory to both an IPv6 and an IPv4 subnet. The eighth line demonstrates a charac‐ter class wildcard match.
第七行将目录导出到IPv6和IPv4子网。第八行显示一个字符‐ter类通配符匹配。vim /etc/exports 
/data web*(rw) 
/data db*(ro)            (也可以写成网段172.16.1.0/24(rw))systemctl restart nfs

配置文件样例:

/projects     proj*.local.domain(rw)
/usr            *.local.domain(ro) @trusted(rw)
1                2             3        
1.设置定义数据存储目录
2.定义允许哪些主机存储数据   支持通配符识别
定义网段信息  定义地址信息  定义主机名称信息
web*
3.定义存储数据参数
第三个里程:创建存储目录并更改属主属组信息
id nfsnobody  用户是安装nfs软件生成的,使用该用户往目录里存储数据mkdir /data
chown nfsnobody.nfsnobody  /data
第四个里程:编写本地解析配置文件
vim /etc/hosts
172.16.1.7   web01
172.16.1.8   web02
172.16.1.9   web03
第五个里程:启动服务程序
systemctl start rpcbind 
systemctl enable rpcbind 
systemctl start nfs
systemctl enable nfs
检查确认:netstat -lntup|grep 111      默认只监听tcp,但可以调整

客户端部署过程:

需要部署出三台web服务器

第一个里程:下载安装软件
yum install -y   nfs-utils
第二个里程:挂载应用存储设备服务
mount -t nfs 172.16.1.31:/data /mnt     umount  -lf   /mnt       懒惰卸载,强制卸载挂载点

06.存储服务配置文件 (参数)

rw    ---- 是否允许向存储目录中存储数据  存储目录可读可写   默认不允许
ro    ---- 是否允许向存储目录中存储数据  存储目录只读状态   默认async ---- 异步传输数据  客户端(存储数据)   ----服务端  内存  ---- 服务端(磁盘)   默认
安全性降低
sync   ---- 同步传输数据  客户端(存储数据)   ----服务端 (磁盘)
root_squash         ---- 是否将用户信息做映射转换   将root用户身份进行转换
(默认转换为nfsnoboday)
no_root_squash      ---- 是否将用户信息做映射转换   将root用户身份不做转换
all_squash          ---- 是否将用户信息做映射转换   将普通用户身份进行转换
(默认转换为nfsnoboday)
*no_all_squash      ---- 是否将用户信息做映射转换   将普通用户身份不做转换no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限

配置文件中有些参数信息不配置,默认是什么配置信息?

常见存储问题:

1) 客户端存储目录 和 服务端存储目录中数据不一致 孙豪序
在挂载点目录中进行了挂载操作
建议在进行挂载操作时,要在挂载点以外目录进行操作

2) yum安装软件报错 ???
CentOs yum安装软件出现Error: database disk image is malformed
解决方式:
yum clean metadata
yum clean dbcache
yum makecache

3) 无法实现挂载操作
mount.nfs: access denied by server while mounting 10.0.0.31:/data
服务端拒绝客户端进行挂载
原因:
1) 配置文件中允许网段 或者主机 或者域名信息 没有匹配相应客户端
2) 配置文件中指定存储目录 和 挂载存储目录不匹配

作业:

01.4个aquash配置参数,应该应用哪两个参数最好
no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限

02.全网备份项目
03.预习客户端挂载参数 nfs服务有关文件命令
04.预习下周内容
周一:存储服务后续内容/实时同步服务
周二:实时同步服务
周三:全网备份项目
周四:远程服务 ssh
周五:ansible批量管理程序
周六:ansible批量管理程序
周日:ansible批量管理程序

知识梳理总结

1)存储服务概念介绍
a 实现数据共享存储
b 节省网站磁盘成本
2)存储服务工作原理
a 存储数据简单原理
b 存储数据用户映射原理
3)存储服务部署流程
了解 rpc服务或者协议 有什么作用 中介服务
服务端部署流程: 安装软件 – 配置文件(exports)-- 创建存储目录(授权)-- 启动服务
客户端部署流程: 安装软件(nfs-utils) — 网络挂载操作
4)存储服务配置文件
配置文件格式信息 3个部分 ① ②③
配置文件参数信息 ro rw sync async xxx_squash anonuid/anongid

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_898132.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

综合架构网站搭建初步介绍

文章目录 01.知识概述部分02.知识回顾说明ARP解析原理 (动态ARP 静态ARP) 03.综合架构组成说明综合架构组成服务介绍01)防火墙服务器 iptables /扩展 firewalld02)负载均衡服务器 nginx /扩展 lvs haproxy03)网站web服…

综合架构网站存储服务下(NFS)

文章目录 01.课程知识概述部分02.知识回顾说明03.存储服务配置参数04.存储服务常用命令rpcinfo ----查看nfs服务注册信息服务端使用:rpcinfo -p localhost 查看本地客户端使用服务端使用 05.存储服务客户端操作a 客户端挂载操作永久挂载操作:方法一&…

综合架构网站实时同步

文章目录 01.知识概述部分02.知识回顾说明03.实时同步服务监控软件部署:存储服务器部署第一个里程:安装监控数据变化的软件第二个里程:监控命令使用 事件信息:inotify软件采用触发机制进行监控可监听的事件实现永久监控目录中数据…

web网站部署与优化--部署LAMP平台(手工编译安装优化apache、mysql、php脚本,在LAMP平台安装论坛服务)

文章目录 一、 手工编译安装apache服务二、手工编译安装MYSQL三、 手工编译安装php四、 在LAMP架构上安装一个论坛服务 一、 手工编译安装apache服务 首先将实现下载好的软件包拷贝到/opt目录下 [rootlocalhost ~]# cd /opt/ [rootlocalhost opt]# mkdir httpd [rootlocalhos…

web网站部署与优化--虚拟主机的构建实操(基于域名的构建、基于端口的构建、基于IP地址的构建)

文章目录 一、 虚拟主机概述二、 基于域名的虚拟主机2.1 构建虚拟主机步骤2.2 构建过程2.2.1 配置DNS服务器2.2.2 虚拟主机配置文件 三、 基于端口的虚拟主机四、 基于IP地址的虚拟主机 一、 虚拟主机概述 虚拟 Web 主机指的是在同一台服务器中运行多个 Web 站点,其…

web网站部署与优化--LNMP架构(手工编译安装优化nginx、mysql、php脚本,在LNMP平台安装论坛服务)

文章目录 一、 手工编译安装Nginx1.1 编译过程1.2 添加nginx系统服务 二、 手工编译安装mysql 5.7版本cmake过程中报错解决办法编译安装过程 三、手工编译安装phpphp配置文件让nginx支持php功能测试数据库是否正常工作 四、 在LNMP架构上搭建一个论坛服务 一、 手工编译安装Ngi…

Nginx网站服务( Nginx统计模块、Nginx访问控制、Nginx部署虚拟主机 )

文章目录 一、 统计模块验证二、 nginx虚拟主机的创建2.1 基于不同域名2.2 基于不同端口2.3 基于不同IP 三、 Nginx 访问控制3.1 基于授权的访问控制1.生成密码文件2.修改主配置文件对相应目录添加认证配置项 一、 统计模块验证 [rootlocalhost ~]# cd /opt 将软件包拷贝到当前…

网站架构部署与优化--NginxRewrite(Rewrite概述、Nginx 的正则表达式 、Rewrite 的语法 、 Rewrite应用实操)

文章目录 一、 NginxRewrite 概述1.1 Rewrite 跳转场景1.2 Rewrite 跳转实现1.3 Rewrite 实际应用场景 二、 Nginx 的正则表达式三、 Rewrite 语法3.1 flag 标记说明:3.2 Location 分类3.3 Location 优先级相同类型的表达式,字符串长的会优先匹配rewrite…

RHCE ---给openlab搭建web网站

首先先把防火墙关闭并且下载好ssl [rootlocalhost li]# systemctl stop firewalld[rootlocalhost li]# setenforce 0[rootlocalhost li]# yum install mod_ssl 1.基于域名www.openlab.com可以访问网站内容为welcome to openlab 先制作服务器证书 req -newkey rsa:4096 -node…

大型网站架构演进历程

大型网站架构演进历程 Web1.0 静态网站Web2.0应用服务和数据分离使用缓存改善网站性能使用应用服务器集群改善网站的并发处理能力数据库读写分离使用搜索引擎业务拆分分布式服务 Web1.0 静态网站 大型网站都是从小型网站发展起来的 网站架构也是一样 网站刚开始搭建处于雏形阶段…

18个优秀的在线图片编辑服务网站

18个优秀的在线图片编辑服务网站 作者:Jason Ng 说起编辑图片,可能大多数人都会马上想起强大的Photoshop。事实上,除了购买或下载盗版的PS之外,你还可以使用很多优秀在线图片编辑服务,这些网站大多数都是免费的。对于大部分的…

网站被微信浏览器拦截怎么办 微信屏蔽网址打开如何解决

先来认识一下微信屏蔽的原理。按原理逐个攻破,整理如下:微信屏蔽的原理 一、微信系统的两个检测手段:第一是系统的自动检测;第二是微信工作人员的人工检测。 二、 人工的检测很好理解,有用户投诉举报,在多…

安全参透之旅第2章 FOCA网站元数据侦查工具

什么是元数据?就是有关数据的数据。它是有关特定数据集、对象或资源的描述性信息,包括所采用的格式及其创建时间和创建者。 对于参透测试人员,元数据可能很有用,因为它含有跟创建文件的系统有关的信息,比如&#xff1…

kali攻防第6章 SQLMAP介绍及ASP网站渗透

SQLMAP介绍及ASP网站渗透 准备工具 1、kali_linux系统 IP 10.10.10.131 3、Sqlpmap 入注工具 步骤: 1、 -u “检测是否存在注入” 返回数据库的名字 2、 3、 4、 参数解释: 1、user 根据经验 确定这是用户表 2、--columns 猜列表名 根…

kali攻防第7章 SQLMAP介绍之PHP网站渗透

SQLMAP介绍之PHP网站渗透 准备工具 1、KALI攻击系统IP :10.10.10.131 2、受害网站: 3、Sqlmap 入注工具 步骤: 1、检测:Sqlmap -u “” 2、sqlmap -u "" --is-dba 3、sqlmap -u “” --dbs 4、sqlmap -u “” --current-db …

python爬取动态网站实例——以爬取豆瓣电影分类排行榜为例

最近在编写 python 爬虫的时候,发现有时候爬取的网页和实际看到的效果不一致,经过各种搜索之后发现这时因为网页在加载的时候动态加载的结果,所以,为了可以获得相应的结果,需要模拟相应的请求。本文以 豆瓣电影排行榜 …

python爬取有声小说网站实现自动下载实例

最近想下载一些有声小说,但是苦于没有找到批量下载,每次都是单集单集的下载的,觉得很麻烦,就考虑用python写一个爬虫来实现自动搜集小说,自动下载。下面就是开始展开漫漫的爬虫之路。 基础的就不多说了,重…

如何拥有(建)一个自己的网站-虚拟主机建站

如何拥有(建)一个自己的网站-基础 如何拥有(建)一个自己的网站-准备 1.拥有一个虚拟主机 2.登录进入虚拟主机 3.点击进入域名绑定 域名绑定相当于让主机认可来自域名的访问,同时认可它访问主机上存放的内容。 服务器建站也有类似操作。 点击确定 即可 4.域名解析…

如何拥有(建)一个自己的网站-服务器建站

如何拥有(建)一个自己的网站-基础 如何拥有(建)一个自己的网站-准备 上面是一些需要知道的东西 1.拥有一台服务器 可以前往各大厂商购买,比方说腾讯云,阿里云等等,就不推荐了。 2.服务器可以选Linux系统 这里用Debian演示 3.SSH连接到服…