使用ansible配置基础环境

文章目录

  • 1. 安装rsync和nfs-utils
  • 2. 准备rsync客户端的密码文件
  • 3. 创建一个uid和gid为666的www用户
  • 4. 推送全网备份的脚本,并配置好定时任务
  • 5. 全网备份的脚本具体内容

1. 安装rsync和nfs-utils

[root@m01 ~]# ansible all -m yum -a "name=rsync,nfs-utils state=installed"

2. 准备rsync客户端的密码文件

[root@m01 ~]# ansible all -m copy -a "content='1' dest=/etc/rsync.pass owner=root group=root mode=600"

3. 创建一个uid和gid为666的www用户

[root@m01 ~]# ansible all -m group -a "name=www gid=666"
[root@m01 ~]# ansible all -m user -a "name=www uid=666 group=666 create_home=no shell=/sbin/nologin"

4. 推送全网备份的脚本,并配置好定时任务

[root@m01 ~]# ansible all -m copy -a "src=./scripts/rsync_backup_md5.sh dest=/server/scripts/ mode=755"
[root@m01 ~]# ansible all -m cron -a "name='Rsync Bakcup Scripts' hour=01 minute=00 job='/bin/bash /server/scripts/rsync_backup_md5.sh &>/dev/null'"

5. 全网备份的脚本具体内容

#1.定义变量
Host=$(hostname)
Addr=$(ifconfig eth1|awk 'NR==2{print $2}')
Date=$(date +%F)
Dest=${Host}_${Addr}_${Date}
Path=/backup
#2.创建备份目录
[ -d $Path/$Dest ] || mkdir -p $Path/$Dest

#3.备份对应的文件
cd / && \
[ -f $Path/$Dest/system.tar.gz ] || tar czf $Path/$Dest/system.tar.gz etc/fstab etc/rsyncd.conf && \
[ -f $Path/$Dest/log.tar.gz ] || tar czf $Path/$Dest/log.tar.gz  var/log/messages var/log/secure && \

#4.携带md5验证信息
[ -f $Path/$Dest/${Date}.flag ] || md5sum $Path/$Dest/*.tar.gz >$Path/$Dest/${Date}.flag

#4.推送本地数据至备份服务器
export RSYNC_PASSWORD=1
rsync -avz $Path/ [email protected]::backup

#5.本地保留最近7天的数据
find $Path/ -type d -mtime +7|xargs rm -rf

你可能感兴趣的:(ansible)