Ansible部署rsync

本文档介绍了如何利用Ansible进行环境准备,包括主机名和IP地址规划,以及通过密钥分发脚本实现受控端的无密码访问。接着详细阐述了如何编写rsync的Ansible角色,实现rsync服务的自动化部署。
摘要由CSDN通过智能技术生成

 一  环境准备

2017年9月9日 21:35:37  seventeenwen

1.1 主机名和主机IP地址规划表


 主机名 IP地址规划
m01  10.0.0.61    172.16.1.61
web01                                          10.0.0.8      172.16.1.8
web02                                          10.0.0.7      172.16.1.7 
nfs                                          10.0.0.31    172.16.1.31 
backup                                          10.0.0.41    172.16.1.41

1.2 通过密钥分发脚本发送给各个受控端

分发脚本:
脚本执行结果
1.3 编辑Ansible的hosts文件

1.4 通过Ansible的测试模块测试


二  开始编写角色

2.1 编写common角色
在每一台服务器上都有一些共有的特性,这些特性可以通过Ansible的common角色来批量的定制化。例如创建同一的目录结构,共有的目录结构
目录名 目录功能
/server/scripts 存放要运行的脚本
/tools 存放主机要安装的工具
common角色的yml文件
        在Ansible的配置文件中可以通过使用with_items:来指定循环,学名叫做 迭代(with_items),不但可以通过with_items来使用批量创建目录还可以批量安装软件包。
执行结果:

2.2 编写rsync角色

rsync的部署流程:
Rsync备份服务部署实践
服务器类型 部署序号 部署步骤说明 Rsync服务端部署 备注说明
服务端 第一步 检查软件是否安装 # 查看软件是否安装
rpm -qa rsync
rpm -qa | grep rsync
# 查看软件安装了哪些信息
rpm -ql rsync
rpm -qf `which rsync`
  第二步 进行服务软件安装 N/A 默认rsync软件已经安装,若没有安装,执行以下命令
yum install rsync -y
  第三步 编写服务配置文件 # 编写rsync配置文件
vim /etc/rsyncd.conf (man rsyncd.conf)
默认配置文件不存在
配置文件进行修改后,需要对服务进行重启
  第四步 添加目录管理用户 # 创建备份目录管理用户
useradd rsync -s /sbin/nologin -M
根据配置文件设置进行管理用户创建
创建的用户为虚拟用户
  第五步 创建程序所需目录 # 创建数据备份目录
mkdir /backup
# 数据目录进行授权
chown rsync.rsync /backup
创建程序目录需要确认相应授权信息
  第六步 进行安全相关配置 # 创建认证文件信息
echo "rsync_backup:123456" >/etc/rsync.password
# 修改认证文件权限
chmod 600 /etc/rsync.password
创建涉及密钥信息文件均要进行授权,提升文件信息安全
  第七步 启停程序服务进程 # 启动rsync程序守护进程
rsync --daemon
# 停止rsync程序守护进程
killall rsync
rsync服务采用输入命令方式启动守护进程
rsync服务采用kill killalll pkill等方式进行停止
rsync服务启动脚本可以进行shell编写或使用xinetd服务
  第八步 检查服务是否启动 # 检查服务进程是否存在
ps -ef | grep rsync
# 检查服务进程端口信息
netstat -lntup | grep rsync
rsync软件服务的默认端口号为873
服务器类型 部署序号 部署步骤说明 Rsync客户端部署 备注说明
客户端 第一步 检查软件是否安装 # 查看软件是否安装
rpm -qa rsync
rpm -qa | grep rsyn
# 查看软件安装了哪些信息
rpm -ql rsync
# 查看某个命令如何安装的
rpm -qf `which rsync`
  第二步 进行服务软件安装 N/A 默认rsync软件已经安装,若没有安装,执行以下命令
yum install rsync -y
  第三步 进行安全相关配置 # 创建认证文件信息
echo "123456" >/etc/rsync.password
# 修改认证文件权限
chmod 600 /etc/rsync.password
创建涉及密钥信息文件均要进行授权,提升文件信息安全
  第四步 进行服务应用测试 # 确认备份数据传输
rysnc -avzP /etc/hosts rsync_backup@172.16.1.41::backup
# 确认备份数据传输,采用免密钥进行传输
rysnc -avzP /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
属于软件命令参数信息
编写rsync角色
config_rsyncd.yml
install.yml
main.yml
模板文件
rsyncd.conf.j2的内容
rsync.password.j2
配置变量。

编写入口文件site.yml

#!/bin/bash
#判断参数是否是0个
if [ $# -eq 0 ];then
    echo “please input ip address: ”
    exit 1
fi
#加载系统函数
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值