综合架构day30--开场章节

1.课程介绍部分

  1.备份服务概念介绍
  2.rsync备份服务软件使用方法
  3.rsync备份服务配置文件
  4.rsync备份服务应用方式
  5.rsync备份服务排错过程

  PS:服务的学习方法
    1.安装部署  (yum:需要找到软件包   rpm:需要解决依赖问题 )
    2.如何配置   
    3.如何运行启动服务
    4.如何应用  (命令)
    5.排错和优化

网络相关命令

route/ip route      ---查看系统路由信息/设置系统路由信息
ping                ---测试网络的连通性
  -c 2              ---指定数据包发送数量
  -i 2              ---数据包发送间隔时间
  -q                ---只显示结果
  -f                ---急速ping多个包

批量测试一个网段IP地址:

    [root@oldboyedu scripts]# vim test_host.sh 
    #!/bin/bash
    
    . /etc/init.d/functions
    
    for ip in $(cat /server/scripts/ip_info.txt)
    do
      ping -c 3 $ip &>/dev/null
      if [ $? -eq 0 ]
      then
         action $ip  /bin/true
      else
         action $ip  /bin/false
      fi
    done

网络相关命令

    telnet/nc/nmap                 --- 测试服务端口连通性
    telnet 10.0.0.200 22
    nc 10.0.0.200 22
    nmap -p 23 10.0.0.200          --- 只知端口号而不知是何服务时,可使用此命令查看是何服务
    nmap -p 1-1024 www.baidu.com   --- 扫描一个网站服务器开启的端口信息 
    dig/nslookup                   --- 解析获得域名对应IP地址
    dig www.baidu.com
    nslookup www.baidu.com
    tcpdump                        --- 抓取数据包命令
    tcpdump -i eth0 -c 3 -nn "port 53"

2.系统模板主机克隆说明

a.主机克隆准备工作
  虚拟主机网络配置    添加一块内网网卡
  虚拟主机系统优化
b.主机克隆过程说明
    链接克隆:利用模板机作为克隆主机,生成链接克隆主机
             节省克隆之后的资源    占用少
             克隆主机效率高
             克隆主机会依赖模板主机
    完整克隆:利用模板机作为克隆主机,生成链接克隆主机    企业常用
             浪费克隆之后的资源    占用多
             克隆主机效率较低
             克隆主机与模板主机相互独立

克隆后主机初始化脚本:

vim /server/scripts/init.sh 
#!/bin/bash

Host_name=$1
Host_ip=$2

# 修改主机名称
hostnamectl set-hostname $Host_name
# 修改网卡地址
sed -ri "s#200#$Host_ip#g;/UUID|HWADDR/d" /etc/sysconfig/network-scripts/ifcfg-eth[01]
# 重启网络服务
sleep 2
systemctl restart network

3.备份服务概念介绍

a.对网站服务器数据进行备份存储(恢复丢失数据  回复误修改数据)
b.对网站服务器数据进行对比分析
c.对网站服务器数据进行统一管理    web服务集群   web日志文件

备份服务器应该有几台合适:

同一机房要有多个备份服务器
不同机房要有多个备份服务器
不同地理位置要有多个备份服务器

PS:中石油备份数据架构解决方案---两地三中心

备份服务器备份的是什么数据

1.内部人员产生的数据:脚本文件  代码信息  配置文件(ansible)   数据库文件  日志文件  ---  使用定时任务进行备份
2.外部人员善生的数据:图片信息  附件信息  视频信息  ---  实时数据备份

4.备份服务实现备份数据方法

rsync软件:a fast, versatile, remote (and local) file-copying tool
                   快速      多功能      远程(本地)文件备份工具
官网:https://rsync.samba.org/

rsync软件实现快速备份

全量备份:将所有数据进行完整备份传输   备份传输数据效率较低
增量备份:将变化数据进行备份传输      备份传输数据效率较高
增量备份数据原理:
1.比较数据属性信息:属性信息有改变就会将有变化的文件进行备份
  默认rsync增量传输数据利用属性信息做比较
2.比较数据指纹信息:指纹信息有改变就会将有变化的文件进行备份
  使用rsync -c (-c, --checksum              skip based on checksum, not mod-time & size)   基于指纹信息判断文件的变化
  md5sum  文件路径   (给一个文件生成指纹信息)

rsync软件使用方式

方式一:利用rsync软件实现本地备份(格式与cp命令相同)
格式--Local:  rsync [OPTION...] SRC... [DEST]
[root@backup ~]# cp /etc/hosts /tmp/
[root@backup ~]# rsync /etc/hosts /tmp/hosts.bak
[root@backup ~]# ll /tmp/hosts*
-rw-r--r-- 1 root root 337 8月  12 17:09 /tmp/hosts
-rw-r--r-- 1 root root 337 8月  12 17:09 /tmp/hosts.bak
方式二:利用rsync软件实现远程备份
Access via remote shell:
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
[USER@]  --- 登录远程主机用户信息  默认不指定用户使用当前登录系统用户进行连接
HOST     --- 远程主机IP地址信息或者主机名称信息
SRC      --- 远程主机上要备份传输到本地主机数据信息
DEST     --- 将数据保存本地主机路径信息

Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
[USER@]  --- 登录远程主机用户信息  默认不指定用户使用当前登录系统用户进行连接
HOST     --- 远程主机IP地址信息或者主机名称信息
SRC      --- 本地主机上要备份传输到远程主机数据信息
DEST     --- 将数据保存远程主机路径信息
               
远程备份文件: 本地数据 ---> 远程主机
scp /etc/hosts 172.16.1.31:/tmp
rsync /etc/hosts 172.16.1.31:/tmp

远程备份目录: 本地数据 ---> 远程主机
scp -rp /oldboy 172.16.1.31:/tmp/
rsync -vrp /oldboy 172.16.1.31:/tmp/    ???  全量备份数据

===============================================================
rsync传输目录说明:

传输目录后面有斜线 /oldboy/   表示将目录下面的数据内容进行传输备份
传输目录后面无斜线 /oldboy    表示将目录本身以及下面的数据内容都进行传输备份

===============================================================
问题一: 如何免交互备份数据信息
问题二: 如何实现增量备份数据
问题三: 如何限制进行传输连接数
问题四: 如何实现认证备份数据
开发人员 100人 dev 认证用户备份数据 /backup/dev
运维人员 50人 sa 认证用户备份数据 /backup/sa
数据库 10人 dba 认证用户备份数据 /backup/dba

采用rsync守护进程方式实现数据远程备份

Access via rsync daemon(命令书写格式):
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
      rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
SRC:     本地主机上要备份推送数据信息
[USER@]  备份服务认证用户信息
HOST::   备份服务器IP地址信息或者主机名称信息
DEST     备份服务器模块名称信息

      rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

5.rsync守护进程方式部署流程

服务端部署过程:
第一个里程: 确认软件是否安装/安装软件程序
rpm -qa rsync
yum install -y rsync 

第二个里程: 编写配置文件 (考试题)
vi /etc/rsyncd.conf    --- 学习配置 man rsyncd.conf
uid = rsync            --- 管理备份目录的属主信息
gid = rsync            --- 管理备份目录的属组信息
port = 873             --- 指定rsync守护进程服务端口信息 默认端口为 873
#fake super = yes      --- ???
use chroot = no        --- 和远程传输安全有关参数
max connections = 200  --- 设置最大连接数                               上厕所
timeout = 300          --- 连接超时时间(默认秒)  没有数据传输的时间     
pid file = /var/run/rsyncd.pid     --- 记录服务进程号码文件==pid文件   掌握
                                       判断服务是否开启或关闭 --- shell
lock file = /var/run/rsync.lock    --- 当max connection达到上限, 利用锁文件阻止新的连接建立
log file = /var/log/rsyncd.log     --- 程序日志文件(排错)
ignore errors                      --- 忽略错误信息 提升传输数据效率
read only = false                  --- 设置备份目录权限为可读可写
list = false                       --- ???
hosts allow = 172.16.1.0/24        --- 设置访问策略 白名单
hosts deny = 0.0.0.0/32            --- 设置访问策略 黑名单
auth users = rsync_backup          --- 认证用户信息
secrets file = /etc/rsync.password --- 认证用户密码文件 用户信息:密码信息
[backup]                           --- 模块信息 ???
comment = "backup dir by oldboy"   --- 模块注释说明信息
path = /backup/                    --- 指定备份目录

实际配置信息:
uid = rsync
gid = rsync
port = 873
#fake super = yes
use chroot = no
max connections = 200
timeout = 300
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
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
[backup]
comment = "backup dir by oldboy"
path = /backup

第三个里程: 创建rsync服务虚拟用户
useradd -M -s /sbin/nologin rsync 

第四个里程: 创建密码文件 修改文件权限
echo rsync_backup:oldboy123 >/etc/rsync.password
echo oldboy:oldboy123 >>/etc/rsync.password         --- 密码文件中添加多个认证用户
chmod 600 /etc/rsync.password 

第五个里程: 创建备份目录  修改目录属主属组信息
mkdir /backup
chown rsync.rsync /backup

第六个里程: 启动或重启服务
systemctl start rsyncd
systemctl restart rsyncd 
systemctl enable rsyncd


客户端部署过程:
第一个里程: 测试服务端部署过程
rsync -avz /oldboy [email protected]::backup

6.课程知识总结

1. 网络知识课程补充  网络常用命令
2. 主机克隆知识补充  链接克隆 完整克隆 
3. 备份服务概念介绍  如何实现备份 备份服务架构
4. 备份服务实现方式  rsync软件 全量 增量备份 
5. 备份服务工作方式  本地备份 远程备份 守护进程模式
6. 守护进程模式部署  服务端部署过程****** 服务配置文件信息******

你可能感兴趣的:(综合架构day30--开场章节)