老男孩教育32期-08-09次上机测试题

第1章 50台集群服务器全网备份解决方案

1.1基本备份要求

已知3台服务器主机名分别为A(web01)、B(backup) 、C(nfs01)

要求:每天晚上00 点整在Web服务器A上打包备份系统配置文件、网站程序目录及访

问日志并通过rsync命令推送备份服务器B上备份保留(备份思路可以是先在本地按日期

打包,然后再推到备份服务器B上)。

具体要求如下:

1)Web服务器A和备份服务器 B的备份目录必须都为/backup。

2)要备份的系统配置文件包括但不限于:

a.定时任务服务的配置文件(/var/spool/cron/root).

b.开机自启动的配置文件(/etc/rc.local)。

c.日常脚本的目录  (/server/scripts)。

d.防火墙iptables的配置文件(/etc/sysconfig/iptables)。

e.自己思考下还有什么需要备份呢?

3)Web 服务器站点目录假定为(/var/html/www)。

4)Web服务器A访问日志路径假定为(/app/logs)

5)Web服务器保留打包后的7天的备份数据即可(本地留存不能多于7天,因为太多硬盘会满)

6)备份服务器B 上,保留每周一的所有数据副本,其它要保留 6个月的数据副本。

7)备份服务器B上要按照备份数据服务器的IP为目录保存备份,备份的文件按照时间名字保存

===========================================================================================1.1.1准备环境:

1.1.1.1 #服务端环境:

rpm -qa rsync

yum install rsync -y

useradd -s /sbin/nologin -M rsync

id rsync

vim /etc/rsyncd.conf

echo "rsync_backup:oldboy">/etc/rsync.password

chmod 600 /etc/rsync.password

mkdir /backup -p

chown -R rsync.rsync /backup

rsync --daemon

ps -ef|grep rsync|grep -v grep

1.1.1.2 #客户端环境:

echo "oldboy" >/etc/rsync.password

chmod 600 /etc/rsync.password

mkdir /backup -p

==================================客户端推送脚本===========================================

#!/bin/sh

ip=$(ifconfig eth0|awk -F "[: ]+"‘NR==2{print $4}‘)

path="/backup"

[ ! -d ${path}/$ip ] && mkdir -p${path}/$ip &> /dev/null

DATE=`date +%u -d "-1day"`

if [ $DATE -eq 1 ];then

DATE=${DATE}_MON

fi

#tar

cd / && \

tar zcf /$path/$ip/conf_${DATE}.tar.gzvar/spool/cron/root etc/rc.local server/scripts etc/sysconfig/iptables&&\

tar zcf /$path/$ip/www_${DATE}.tar.gzvar/html/www && \

tar zcf /$path/$ip/logs_${DATE}.tar.gzapp/logs && \

#md5sum

find $path -type f -name"*.tar.gz"|xargs md5sum >/$path/$ip/bak_${DATE}.flag

#rsync

rsync -az /$path/[email protected]::backup --password-file=/etc/rsync.password

#delete

find $path/$ip -type f -mtime +7|xargs rm-f

=====================================服务端脚本============================================

#!/bin/sh

ip=$(ifconfig eth1|awk -F "[: ]+"‘NR==2{print $4}‘)

path="/backup"

[ ! -d ${path}/$ip ] && mkdir -p${path}/$ip &> /dev/null

DATE=`date +%u -d "-1day"`

if [ $DATE -eq 1 ];then

DATE=${DATE}_MON

fi

find /backup/ -type f -name"bak_*.flag"|xargs md5sum -c >/$path/$ip/mail.${DATE}.log

mail -s "backup web_${DATE}-lm"[email protected] <$path/$ip/mail.${DATE}.log

find $path -type f ! -name"*MON*" -mtime +180|xargs rm -f

第2章 网站集群后端NFS共享存储搭建及优化解决方案

1、配置 NFS 服务:

要求:

1)在NFS服务端C(nfs01)上共享/data/w_shared及/data/r_shared两个文件目录,允许从NFS客户端A(web01)、B(backup)上分别挂载共享目录后可实现从A(web01)、B(backup)上只读/data/r_shared,可写/data/w_shared。

2)NFS客户端A(web01)上的挂载点为/data/b_w(写),/data/b_r(读),NFS客户端B(backup)上的挂载点为/data/w_你的名字英文(写)  ,/data/r_你名字英文(读)。

3)从NFS客户端B(backup)上的NFS可写挂载点目录创建任意文件,从NFS客户端A(web01)上可以删除这个创建的文件,反之也可以。

4)问答题:如何优化NFS 服务

  • 硬件:sas/ssd磁盘,买多块,硬件raid,指定raid5或raid10.网卡吞吐量要大,至少千兆(多块bond)
  • NFS服务器端配置:/data 10.0.0.0/24(rw,sync,all_squash,anonuid=65534,anongid=65534)
  • NFS客户端挂载优化配置命令:

mount -t nfs -o nosuid,noexec,nodev,noatime,nodiratime,rsize=131072,wsize=13107210.0.0.31:/data/ /mnt   ←兼顾安全性能

  • 对NFS 服务的所有服务器内核进行优化时,执行如下命令:

cat >>/etc/sysctl.conf<<EOF

net.core.wmem_default = 8388608

net.core.rmem_default = 8388608

net.core.rmem_max = 16777216

net.core.wmem_max = 16777216

EOF

sysctl -p

  • 如果卸载的时候提示“umount: /mnt: device is busy”,需要退出挂载目录再进行卸载,如果是NFS Server宕机了,则需要强制卸载,可执行umount -lf /mnt
  • 大型网站NFS网站文件系统的替代软件为分布式文件系统Moosefs(nfs)、GlusterFS(大文件)、FastNFS。

NFS系统应用的优缺点说

====================================服务端环境=============================================

yum install nfs-utils rpcbind -y

mkdir /data/w_shared -p

mkdir /data/r_shared -p

chown -R nfsnobody.nfsnobody /data/

/etc/init.d/rpcbind start

/etc/init.d/nfs start

vim /etc/exports

/data/r_shared 172.16.1.0/24(ro,sync,all_squash)

/data/w_shared172.16.1.0/24(rw,sync,all_squash)

====================================客户端挂载=============================================

[backup]

mount -t nfs 172.16.1.31:/data/r_shared/data/r_luoming/

mount -t nfs 172.16.1.31:/data/w_shared/data/w_luoming/

[web01]

mount -t nfs 172.16.1.31:/data/r_shared/data/b_r

mount -t nfs 172.16.1.31:/data/w_shared/data/b_w

操作示例:

[[email protected] b_w]# pwd

/data/b_w

[[email protected] b_w]# touch oldboy{1..5}.txt

[[email protected] b_w]# ls

oldboy1.txt oldboy2.txt  oldboy3.txt  oldboy4.txt oldboy5.txt

[[email protected] w_shared]# pwd

/data/w_shared

[[email protected] w_shared]# ls

oldboy1.txt oldboy2.txt  oldboy3.txt  oldboy4.txt oldboy5.txt

[[email protected] w_luoming]# pwd

/data/w_luoming

[[email protected] w_luoming]# ls

oldboy1.txt oldboy2.txt  oldboy3.txt  oldboy4.txt oldboy5.txt

[[email protected] b_r]# touch 123.txt

touch: cannot touch `123.txt‘: Read-onlyfile system  ---只读

第3章 解决网站集群后端NFS共享存储单点实现实时数据同步

1、实时数据同步要求:

当用户通过 web 服务器将数据写入到 NFS 服务器C(nfs01)时,同时复制到备份服务器B(backup)

nfs服务端配置文件:

[[email protected] data]# cat /etc/exports

#share /data by lm at 20161228

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

共享目录:

[[email protected] data]# ll -d /data/

drwxr-xr-x 4 nfsnobody nfsnobody 266240 Jan  7 20:52 /data/

nfs服务端脚本:

vim /server/scripts/inotify.sh

#!/bin/sh

Path=/data

Ip=172.16.1.41

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

do

if [ -f$line ];then

rsync-az $line --delete [email protected]$Ip::nfsbackup--password-file=/etc/rsync.password

else

cd $Path&& \

rsync-az /data/ --delete [email protected]$Ip::nfsbackup--password-file=/etc/rsync.password

fi

done

web客户端挂载:

[[email protected] mnt]# df -h

Filesystem        Size  Used Avail Use% Mounted on

/dev/sda3         6.9G  1.5G  5.1G  23%/

tmpfs             491M     0  491M  0% /dev/shm

/dev/sda1         190M   33M  147M 19% /boot

172.16.1.31:/data 6.9G  1.6G  4.9G 25% /mnt

创建文件:

[[email protected] mnt]# touch lidao.txt

nfs服务端查看:

[[email protected] data]# ll lidao.txt

-rw-r--r-- 1 nfsnobody nfsnobody 0 Jan  7 20:58 lidao.txt

查看backup备份服务器:

[[email protected] nfsbackup]# ll lidao.txt

-rw-r--r-- 1 rsync rsync 0 Jan  7 20:58 lidao.txt

时间: 2024-10-17 09:43:18

老男孩教育32期-08-09次上机测试题的相关文章

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 老男孩教育35期-决心书

老男孩教育35期-决心书 我叫李超,来自山西省运城市今年21岁高中毕业两年干了两年厨师行业感觉不适合我觉得挺迷茫,在偶尔的一次春节回家中得知邻居在老男孩教育就读Linux自己也侧面了解了一下Linux觉得还不错觉得很有前景也想来老男孩教育试试想证明一下自己主要的是自己也很想留在北京有一份稳定的工作俗话说:努力不定会成功但是不努力一定会失败我一定会用心学好Linux. 我目前的目标薪水是10K. 为了达到预期的目标,我为自己定了一个严格的要求: 1,上课认真听讲,认真做笔记,课上不会的问题尽量向大

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 老男孩教育35期决心书

老男孩教育35期决心书 我叫李超,来自山西省运城市今年21岁高中毕业两年之前的职业是厨师,干了两年后感觉这个行业不适合我感觉非常迷茫,在偶尔的一次春节回家中打听到邻居在老男孩就读Linux自己也侧面了解了一下这个行业感觉还不错很有前景然后自己也来到了老男孩就读Linux最主要的是自己也很想留在北京俗话说,努力不一定成功,但是不努力一定会失败.我一定会用心学好Linux能有一个稳定点的工作. 目前薪水目标是10K. 为了达到预期的学习目标,我为自己定下了几个严格的要求: 1,上课好好听讲,认真做笔

老男孩教育26期学员学习体会

在老男孩教育学习已经三个月有余,在这里认识了老师,也认识了很多很多为学好Linux而努力拼搏的同学,感慨良多! 头开始报名是同事介绍过来的,心里也是有小怀疑的,毕竟现在的技能学校大多数都是为了挣钱而挣钱!但慢慢学习下来,老男孩老师的一言一行把我自己的顾虑,怀疑全部的打消了,老男孩老师的身体力行为这个不好的社会风气带来了一股正气! 老师的教育完全是自己的实践经验结合理论知识,不像某些机构完全是理论和实践脱离了,去到工作岗位后还得从头学起. 老师教学采用的是互动讨论模式,给别人讲懂了,自己也就记住了

老男孩教育46期-王定康

我叫王定康,出生于江西省九江市,在九江县育英学校读高中.从学校出来后从事电子制造SMT六年.感觉做了那么久的一线员工,什么规划也没有,想换个环境换个工作.后来从朋友哪里听说了老男孩IT教育,自己也查询了关于老男孩教育的资料,看了之后,感觉很有兴趣,想尝试下,就选择了老男孩教育. 五个月学完,目标薪资五位数吧.达到目的给自己买个8000的本本.达不到罚自己比之前更刻苦学习. 为了目标,每天认真听老师讲解,做笔记,复习.下课后,总结今天所学,掌握重要知识点.每周六,日复习一周所学,不懂,不理解的要向

老男孩教育46期-丁文浩

决心书 我叫丁文浩,来自湖北的一个四线城市孝感,在2018.03.06号踏上了老男孩的Linux征途.我的目标薪水是 13K 不达目标..,不好意思,我没想过.16年毕业后我一直稳定在学校分配的工作岗位上实习,工作了一年,转正后薪水也不堪入目,17年初我就关注到我堂哥在老男孩教育培训和出来的发展,觉得非常不错,家里人知道后也都推荐我过去,但是自己心里也一直在打鼓,毕竟如果去了,相当于把我所有的专业全荒废了,而且半年出来就能拿到那么高的工资我一直在怀疑,就这样到处飘着浑浑噩噩荒废了一年,在工厂中看

老男孩教育46期-秦秋香

决心书 我叫秦秋香,来自黑龙江省,高中未毕业,在肇源一中读了一年.至今的工作也换过几个,来老男孩学习之前是一名餐饮收银员,因为之前做过信息员也就是话务员有所接触电脑,还是比较喜欢电脑类工作,尽管没学过也懂得很少,但是还是想转行于IT行业. 选择老男孩教育,也是经过了几家的对比,之所以没有选择其他家教育,主要是老男孩教育思想,方式方法更适合,更有效的学到自己想学的. 想通过这五个月的学习,薪资目标能达到8K-10K,可能不是很多,但是对于我来说是挺理想的.就业以后达到自己的理想薪资奖励自己旅游一次

老男孩教育-Linux46期脱产班学生-决心书

大家好,我叫魏金平,来自于江西南昌,毕业于江西工程职业学院建筑专业,毕业后做了半年的施工员,但由于种种原因,发现与自身目标相差甚远,深思熟虑后,决定投入互联网的怀抱中,自身也认为需要学习一项技能来提高自己的价值.过年期间通过表哥万冲冲的介绍,了解了老男孩教育品牌影响力在行业内遥遥领先,学习氛围浓厚,老师责任心强,符合自身发展需要,于是就来到了老男孩学习.我属于性格沉稳类型的,比较细心,较沉默,交际.语言表达能力较差,我期望薪资10K吧,要想达到这个薪资,对我来说要克服的问题还有很多,不仅要做到技

老男孩教育39期决心书

我叫胡金生,来自于甘肃省 临夏县,今年毕业于兰州石化职业技术学院,我来到老男孩只有一个目的,通过自己的努力,得到自己想要的生活,还有就是,我不能看着那些对我有很大期待的人失望,你要努力,因为你想要的只有 你自己才能给自己,只有通过自己的努力得来的果实,才是最甜,最美的,为了五个月以后能达到自己期望的薪资,所以决心如下: 每天早上六点起床,上课认真听讲,认真做笔记,不睡觉,不玩手机,不做一切与学习无关的事,休息的时候回顾老师讲的重点,中午吃完饭之后,立马进教室复习老师讲的知识点,并认真做好笔记,下

老男孩教育46期-文超

我叫文超 ,来自江西九江,毕业于永安中学 .之前在厦门一家酒吧做营销,对现状的不满 以及对将来的渴望这种情况 其中也少不了表哥的推荐导致我来到老男孩学西Linux运维. 对于自已期望是五个月后拿到10K以上的薪资. 奖励就是一台高配电脑.惩罚我两个月内减肥. 五个月,按照老师教的学习方法吧 预习听讲复习一个不能落下认证落实老师教的学习方法 喜欢的人生格言:努力到无可挑剔 .拼搏到无能为力 原文地址:http://blog.51cto.com/13667096/2090437