ansible 利用脚本一键实现web,nfs,rsync三大服务器配置

准备:

五台服务器 一台管理服务器m01:172.16.1.61、两台应用服务器web01:172.16.1.7和web02:172.16.1.8、一台存储服务器nfs:172.16.1.31、一台实时备份服务器rsync:172.16.1.41

要求:通过m01管理机,实现nfs服务器共享一个目录给两台web服务器

                       实现nfs服务器数据实时同步到rsync服务器

                       实现web01、web02、nfs三台服务器重要文件全网备份到rsync

实战:

一、搭建管理机m01

#!/bin/sh

yum install openssh openssl -y &&\

systemctl restart sshd &&\

systemctl enable sshd &&\

yum install epel-release -y &&\

yum install ansible -y &&\

Yum install exportfs -y &&\

yum install libselinux-python


3、rpm -qa|greprpm -qa|grep libselinux-python 检查是否有这个,如果没有,(yum install libselinux-python)

4、cp /etc/ansible/hosts{,.ori} 先备份ansible的配置文件

5、cat >/etc/ansible/hosts<<EOF

#[ ]为主机列表

#1代表服务端2代表客户端

[oldboy]                         

172.16.1.7

172.16.1.8

172.16.1.31

172.16.1.41


[rsync1]

172.16.1.41


[rsync2]

172.16.1.7

172.16.1.8

172.16.1.31


[nfs1]

172.16.1.31


[nfs2]

172.16.1.7

172.16.1.8


[sersync]

172.16.1.31

EOF

6、编辑脚本:生成并分发公钥,最好创建在/server/scripts/下

Vim fenfa.sh

#!/bin/bash

#yum install sshpass -y

#因为前边已经下载了ansible,自带sshpass

#创建公钥不指定密码,即使用原密码

ssh-keygen -f~/.ssh/id_rsa -P '' -q

for ip in 7 8 31 41

do

  sshpass -p123456 ssh-copy-id -i ~/.ssh/id_rsa.pub "-o StrictHostKeyChecking=no" 172.16.1.$ip

done

#上边为一个for循环,分发给四个服务器公钥

7、vim /etc/ansible/ansible.cfg +71

取消71行的注释,然后找到374行,取消注释,并在行尾添加 -o StrictHostKeyChecking=no

8、sh fenfa.sh 执行编辑过的脚本,分发公钥给对应ip

9、ansible oldboy -m command -a "free -m"   控制测试

10、本地优化ssh   (有问题,待修改)

cat >>/etc/ssh/sshd_config<<EOF

Use DNS no

GSSAPIAuthentication no

PermitEmptyPasswords no

EOF                          修改完参数配置,然后重启

systemctl restart sshd

11、ansible oldboy -m copy -a "src=/etc/ssh/sshd_config dest=/etc/ssh/sshd_config backup=yes”

把优化的ssh发送给其他服务器,backup=yes 备份源文件,。


二、编写nfs(共享目录)服务端及客户端脚本

服务端脚本:nfs1.sh

#!/bin/bash

yum install nfs-utils rpcbind -y &&\

Yum install rpcbind -y

systemctl start rpcbind.service &&\

systemctl enable rpcbind.service &&\

systemctl start nfs &&\

systemctl enable nfs &&\

cat >/etc/exports<<EOF

/data 172.16.1.0/24(rw,async,all_squash)

EOF

mkdir -p /data &&\

chown -R nfsnobody.nfsnobody /data &&\

exportfs -r

#下载安装nfs服务和rpc服务并设置启动和开机自启动(先rpc后nfs)

#编辑nfs配置文件设置共享目录和相对应可共享的主机以及权限

#别忘了自己的共享目录是否原本存在,如果不存在先创建

#在这里并没有创建和指定用户,所以默认使用nfsnobody用户

#设置共享目录的属主属组为nfsnobody

#平滑重启


客户端脚本:nfs2.sh

#!/bin/sh

yum install nfs-utils rpcbind -y &&\

systemctl start rpcbind.service &&\

systemctl enable rpcbind.service &&\

mount -t nfs 172.16.1.31:/data /mnt

#下载安装rpc服务和nfs服务理论上讲只需要下载rpc服务即可

#开启并开机自启动rpc服务

#挂载nfs服务端提供的共享目录到本地的(根据情况指定挂载点)

#在此没有设置开机自动挂载


三、编写rsync(推拉服务)服务端和客户端

1. rsync服务端:rsync1.sh

#!/bin/bash

systemctl stop firewalld &&\

systemctl disable firewalld &&\

yum install rsync -y &&\

cp /etc/rsyncd.conf{,.ori} &&\

cat >/etc/rsyncd.conf<<EOF

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

[backup]

comment = welcome to oldboyedu backup!

path = /backup/

EOF

useradd -M -s /usr/bin/nologin rsync &&\

mkdir -p /backup &&\

chown -R rsync.rsync /backup/ &&\

echo "rsync_backup:123456" >/etc/rsync.password &&\

chmod 600 /etc/rsync.password &&\

systemctl start rsyncd &&\

systemctl enable rsyncd

#关闭防火墙其他基本优化这里不在写出

#下载安装并备份rsync

#根据需求编辑rsyncd.conf

#创建一个不可登陆的用户

#创建backup目录,并设置属主属组为指定用户

#配置密码文件并把权限设置为600

#启动并设置开机自启动rsync服务


编写rsync客户端:rsync2

#!/bin/bash

yum install rsync -y &&\

echo "123456" >/etc/rsync.password &&\

chmod 600 /etc/rsync.password &&\

systemctl restart rsyncd &&\

systemctl enable rsyncd &&\

echo “export RSYNC_PASSWORD=123456” >>/etc/bashrc &&\

exportfs -r

#下载安装rsync服务

#写入rsync服务端密码到配置文件并设置权限为600

#开启并设定开机自启动rsync服务

#写入密码到变量里边,平滑重启

四、编辑sercync实时同步脚本:sersync.sh

!/bin/bash

echo 'export RSYNC_PASSWORD=123456' >>/etc/bashrc &&\

source /etc/bashrc &&\

yum install epel-release -y &&\

yum install inotify-tools -y &&\

touch /server/scripts/monitor.sh

cat >/server/scripts/monitor.sh<<EOF

#!/bin/sh

/usr/bin/inotifywait -mrq --format '%w%f' -e close_write,delete /data|while read line

do

  cd /data && rsync -az --delete ./ rsync_backup@172.16.1.41::backup

done

EOF

#输入rsync推拉密码到变量然后重新启动变量

#下载epel源,下载inotify机制

#创建实时同步命令脚本

#编辑实时同步命令脚本



五、编辑一键实施安装部署各种服务到对应服务器

vim one.ok.sh

!/binsh

ansible rsync1 -m script -a "/server/scripts/rsync1.sh" &&\

ansible rsync2-m script -a "/server/scripts/rsync2.sh" &&\

ansiblenfs1-m script -a "/server/scripts/nfs1.sh" &&\

ansiblenfs2 -m script -a "/server/scripts/nfs2.sh" &&\

ansiblesersync-m script -a "/server/scripts/sersync.sh"


执行一键安装部署脚本  

sh one.ok.sh

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容