Chinaunix首页 | 论坛 | 博客
  • 博客访问: 134673
  • 博文数量: 47
  • 博客积分: 2525
  • 博客等级: 少校
  • 技术积分: 630
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-21 20:36
文章分类

全部博文(47)

文章存档

2009年(1)

2008年(46)

我的朋友

分类:

2008-09-22 09:07:55

FailOver架构LVS主辅配置文件的统一化处理

在LVS的日常运维当中,常有修改了主LVS配置后没有同步更新辅LVS配置的情况,会带来一些隐患。因此为了降低出错的概率,操作人员更改LVS配置时,必须按照如下步骤进行,而且这几个步骤一定要作为一个整体的任务来完成,只有五个步骤完全执行了才算是完成一次操作:

一、确定主LVS和辅LVS的真实IP

二、先登录主LVS
    进入/etc/keepalived/目录,确定是否有keepalived.conf.master、keepalived.conf.backup文件和指向keepalived.conf.master的符号链接keepalived.conf。若无,可以将keepalived.conf文件更名为keepalived.conf.master,然后生成附录中所列内容的genbackup.sh脚本,最后执行 sh genbackup.sh 命令即可。此时先不要重启KeepAlived服务!

    把变更概况记录到/etc/keepalived/ChangeLog文件中,基本格式是:
        * 变更日期 变更人员 <电子邮件>
        - 对变更内容的描述,如“暂时注释掉某台真实服务器”、“摘除所有FVSS真实服务器”等。

三、后登录辅LVS
    进入/etc/keepalived/目录,然后把主LVS的/etc/keepalived/keepalived.conf.backup文件复制到辅LVS的/etc/keepalived/目录下,然后做一个指向keepalived.conf.backup的符号链接keepalived.conf,执行 ln -sf keepalived.conf.backup keepalived.conf 命令即可。
    如果主辅LVS之间无法直接SSH/SCP,请更新主LVS上的/etc/hosts.allow文件,将同网段的IP加入允许范围。比如是211.99.216.0/255.255.255.0网段的,为保险起见,请vi /etc/hosts.allow,然后另起一行,添加 sshd:211.99.216.0/255.255.255.0 即可。此后就可以在辅LVS上把主LVS上的文件scp过来了。也可以在辅LVS上编辑 /etc/hosts.allow,允许主LVS的ssh协议登录,以后就可以在主LVS上直接把文件复制到辅LVS上。

四、重启辅LVS的keepalived服务
    执行/etc/init.d/keepalived restart

五、重启主LVS的keepalived服务
    执行/etc/init.d/keepalived restart

附录:
一、/etc/keepalived/genbackup.sh脚本内容
########################################
#!/bin/sh
DIR_SRC="/etc/keepalived"
FILE_SRC="keepalived.conf.master"
FILE_DST="keepalived.conf.backup"

/bin/sed 's/state MASTER/state BACKUP/g' ${DIR_SRC}/${FILE_SRC} | sed 's/priority 100/priority 50/g' > ${DIR_SRC}/${FILE_DST}

/usr/bin/diff -ruNa ${DIR_SRC}/${FILE_SRC} ${DIR_SRC}/${FILE_DST}
########################################

二、/etc/hosts.allow的基本内容
sshd:59.151.19.0/255.255.255.0 218.60.36.0/255.255.255.0 #此行是允许跳板机和办公室直接登录。此行不可更改!
sshd:211.99.216.0/255.255.255.0 #此行与所在节点网段有关,请根据实际情况予以变更!

临时使用的更改/etc/hosts.allow脚本

#!/bin/sh
ip route ls| grep "^[0-9]" | awk '{print "sshd:",$1}' >> /etc/hosts.allow

有机会可以再做得智能化一些,不用重复加入。虽然说重复加入allow entry并不影响什么。大家有什么想法也可以扩展一下。

或者是:
#!/bin/sh
ip route ls| grep "^[0-9]" | awk 'BEGIN{print "sshd: 59.151.19.0/255.255.255.0 218.60.36.0/255.255.255.0"} {print "sshd:",$1} END{}' > /etc/hosts.allow



阅读(731) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~