美文网首页linux tools
集群第一周搭建服务总结

集群第一周搭建服务总结

作者: Diudiu_0588 | 来源:发表于2019-04-20 17:27 被阅读36次

环境: backup nfs01 web01 web02(系统版本为CentOS7.6)
backup 对其他三台进行全网备份,并校验备份文件内容,且发送邮件
nfs 共享目录(静态存储共享) nfs 和backup 实施实时同步备份

1. 准备环境

  准备四台虚拟机。
  需要使用两张网卡:
    外网为10.0.0.0/24网段。(IP自定义)
    内网为172.16.1.0/16网段。(IP自定义)
  主机名分别修改为backup nfs01 web01 web02

2. 各个服务器需要服务的安装

服务 backup nfs01 web01 web02 作用
rsync 有推拉功能,实现定时备份
nfs-utils 实现服务器中目录共享
rpcbind 双方rpc服务的通信获取NFS的端口
sersync 实现实时备份

表格中"●"为需要安装"○"为不需要安装
sersync下载地址,放置在我的云盘中:链接:https://pan.baidu.com/s/1jyjPuFBkeJgvlcV-5EHJ8A 提取码:970q
  下载之后放进nfs的规范目录下/server/tools/下,进行解压
  解压之后移动到/下

3. backup对其他三台进行全网备份

服务端配置:
  1)编辑/etc/rsync.conf 文件,提前备份

uid = rsync
gid = rsync
use chroot = no
fake super = yes
max connections = 200
timeout = 600 
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
auth users = rsync_backup
secrets file = /etc/rsync.password
[data]
path = /data/

创建data模块(上文脚本)
 2)创建rsync用户 因为/etc/rsync.conf文件指定了uid,giu需要
 3)创建模块需要的目录,并给与目录与文件中相同的uid,gid
 4)创建密码文件,在/etc/rsync.password ,给与文件600权限,只有属主可以读取
 5)在密码文件中写入————用户名:密码(破折号后为文本内容)
 6)重启rsync服务

客户端配置:
 1)配置密码文件,与服务端相同的位置
 2)在密码文件中写入————服务端配置的密码(破折号后为文本内容)
  可以再环境变量/etc/bashrc 中添加一行————export 大写的服务器端配置的用户名=服务端配置的密码

配置完成后验证
 使用rsync命令推送文件,查看是否成功。
 rsync -avz 本地目录 服务器端配置的用户名@服务端IP地址::服务端配置的模块名 --password-file=/etc/rsync.password

4. 并校验备份文件内容,且发送邮件

 编写脚本执行定时任务,定是推送需要目录,并进行验证

客户端推送
 在规范目录/server/scripts/下创建脚本文件(文件名自定义),编辑脚本文件

#!/bin/bash
HOSTNAME=`hostname`   
export RSYNC_PASSWORD=123456            
mkdir -p /data/$HOSTNAME
#打包本地文件
cd / &&
tar zcf /data/$HOSTNAME/$(date +%F).tar.gz  server/scripts &>/dev/null
#给打包的文件加指纹
find /data/$HOSTNAME/ -type f -name "*$(date +%F).tar.gz" |xargs md5sum  >/data/$HOSTNAME/$(date +%F).flag
#推送目录到服务端
rsync -az /data/$HOSTNAME/  rsync_backup@172.16.1.21::data/$HOSTNAME
#删除7天之前的文件
find /data/$HOSTNAME -type f  -mtime +7 -name "*.tar.gz" |xargs rm -f

 编写脚本时需要注意:定时任务中可能不调用环境变量,需要在文件中重新定义密码
 完成后在服务端验证,是否收到推送的文件

服务端验证
 在规范目录/server/scripts/下创建脚本文件(文件名自定义),编辑脚本文件

#!/bin/bash
#删除7天前的备份文件
find /data -type f -name "*.tar.gz" -mtime +7 |xargs rm -f
#验证发送的文件是否收到
find /data -type f -name "$(date +%F).flag" |xargs md5sum -c >/var/log/$(date +%F).txt
#邮箱发送
mail -s "$(date +%F)backup tuisongyanzheng" *********@qq.com </var/log/$(date +%F).txt

 手动执行脚本验证是否成功

脚本完成后邮件可能会发送失败,原因:
 1)邮件服务未开启
 启动邮件服务
 2)需要邮箱的授权码
 邮箱授权码,通过自己所使用邮箱,设置下面账户中开启邮箱各种服务,会生成一个授权码。
 在脚本发送邮件的命令中加入授权码或者
 在/etc/mail.rc中尾行添加

set from=邮箱地址
set smtp=所属邮箱的地址
set smtp-auth-user=邮箱地址
set smtp-auth-password=授权码
set smtp-auth=login

把写好的脚本都加入定时任务按照需求进行执行

5. nfs 共享目录(静态存储共享)

服务端配置
 1)先开启rpcbind服务,之后开启nfs服务(顺序不可颠倒),都设置为开机自启动
 2)使用rpcinfo 验证查看是否生成的注册表
 3)编辑nfs的配置文件/etc/exports————共享目录 客户端的IP网段/子网掩码(权限) (括号与网段之间不能有空格)
 4)改变共享目录的属主属组为nfsnobody
 重启nfs服务

客户端配置
 1)客户端开启rpcbind服务
 2)进行共享目录的挂载:
 mount -t nfs 服务端IP:服务端共享目录 挂载点
 3)验证临时挂载是否生效 df -h查看是否挂载上
 4)在开机自动挂载文件中永久挂载/etc/fstab
 服务端IP:服务端共享目录 挂载点 nfs defaults 0 0
 永久挂载需要nfs开启时才会实现,否则客户端的所有服务器开机无法启动
 需要在永久挂载中defaults后面加soft或者hsrd,intr.就可以延迟启动(参数之间以","隔开)
 5)安全加优化的挂载方式如下:
 mount -t nfs -o nosuid,noexec,nodev,noatime,nodiratime,intr,rsize=131072,wsize=131072 服务端IP:服务端共享目录 挂载点
 6)深入挂载
 在服务端和客户端创建相同uid,gid的用户
 在服务端改变共享目录的属主属组,与之前创建的用户名相同
 实现其他匿名用户查看 ,如果只是更改服务端,客户端看到的文件都只有服务端属主属组的uid和gid,而不显示是什么用户

6. nfs 和backup 实时同步备份

 需要nfs01 与backup之间实现实时共享
 上文已经进行了手动推送
 1)配置/application/sersync/conf/confxml.xml
 修改需要的配置
 2)执行命令 /application/sersync/bin/sersync -d

项目完成,在出现各种报错,一般是因为各种小细节处理有问题

相关文章

  • XDH_LESSON6

    服务器集群搭建、管理与快速部署四台ubuntu虚拟机搭建集群服务器。什么叫服务器集群?服务器集群就是指将很多服务器...

  • 集群第一周搭建服务总结

    环境: backup nfs01 web01 web02(系统版本为CentOS7.6)backup 对其他...

  • 搭建时间服务器并配置集群自动时钟同步

    搭建时间服务器并配置集群自动时钟同步 一、搭建时间服务器 (一)为什么要搭建时间服务器 因为Hadoop 对集群...

  • 20160811(公开课)配置小规模服务器集群

    一个域名 负载均衡 访问 多台服务器 服务器集群 分布式集群 小规模集群如何搭建和管理 由4台linux服务器搭建...

  • 分布式容错系统设计

    系统设计上考虑实时数据服务集群和历史数据服务集群。实时数据服务集群采用Zookeeper集群管理技术,搭建...

  • 配置小型服务器集群

    一个域名 负载均衡 多台服务器 服务器集群 分布式集群 小规模集群如何搭建和管理 由4台linux服务器搭建成小规...

  • 基于docker的redis集群搭建

    redis 集群搭建 redis集群搭建包含两个主要步骤:一是搭建若干单节点redis服务器,二是启动集群控制进程...

  • (一) Ceph集群环境准备

    Ceph集群环境准备 基于本机搭建ceph集群及cephfs、cephrgw、cephrbd服务。 集群规划 生产...

  • ELK+kafka+filebeat搭建生产ELFK集群

    ELK+kafka+filebeat搭建生产ELFK集群 ELK 架构介绍 集群服务版本 服务版本java1.8....

  • KAFKA环境搭建

    zookeeper集群搭建 搭建 Zookeeper-3.4.11 集群 常用zk命令:1.启动ZK服务器 2.查...

网友评论

    本文标题:集群第一周搭建服务总结

    本文链接:https://www.haomeiwen.com/subject/ezpkgqtx.html