SUSE Linux搭建企业服务器的双机配置过程当集群中的某个节点由于软件或硬件原因发生故障时,集群系统可以把资源切换到其他健康的节点上,使整个系统能连续不间断的对外提供服务,从而为机构24x365的关键业务提供了可靠的保障,达到了系统99.999%的高可用性和可靠性。
SuSE Enterprise Linux 10.0是内置Linux 2.6.16内核的企业级服务器,较之SuSE Enterprise Linux 9.0,它在性能、可扩展性、易管理性和安全等方面都予以加强,并有众多硬件和应用软件支持。
最近,笔者使用SuSE Enterprise Linux 10.0作为系统平台(使用其它Linux平台在安装部署时可能有小差异),在其上采用HeartBeat、Mon和Rsync等开源软件打造了一个高可用系统,挖掘了SuSE Linux的高可用性。
下面我为大家详细介绍如何在Suse Linux搭建双机的配置过程。
一、HeartBeat、Mon、Rsync简介二、安装环境首先,需要准备两台PC服务器,每台服务器有两块网卡,其物理网络图如图 1安装环境图1 网络拓扑图虽然在YaST2控制中心里有"高可用性"图形化的配置向导,我们这里不介绍一个过程,中在讲述原理和方法,主要是基于命令行的配置方式。
首先在PC服务器上安装SuSE Enterprise Linux 10.0系统,并将eth0配置为192.168.8.*网段,eth1配置为10.1.1.*网段,eth0链接对外的交换机,eth1用于两台机器的对连。
修改/etc /hosts文件,修改内容如下:1.10.1.1.1 linux12.10.1.1.2 linux23.192.168.8.92 svr14.192.168.8.93 svr25.192.168.8.112 svr注意,10.1.1.*为心跳线IP地址,192.168.8.*为对外IP,192.168.8.112为浮动IP。
并且,拷贝hosts文件到linux2上:1.#scp /etc/hosts 10.1.1.2:/etc同时,关闭不需要的服务如下:1.chkconfig -s alsasound off2.chkconfig -s nfs off3.chkconfig -s nfsboot off4.chkconfig -s portmap off5.chkconfig -s slpd off6.chkconfig -s smbfs off7.chkconfig -s setserial off8.chkconfig -s splash off9.chkconfig -s splash_early off10.chkconfig -s splash_late off11.chkconfig -s xdm off12.chkconfig -s fbset off13.chkconfig -s cups off14.chkconfig -s nscd off15.chkconfig -s random off最后,修改启动级别为3。
找到/etc/inittab文件的如下几行:1.#The default runlevel is defined here id:5:initdefault:将其改为如下:1.#The default runlevel is defined here id:3:initdefault:三、安装HeartBeat通过yast2工具添加heartbeat,如图片 2安装HeartBeat图2 heartbeat安装1)安装HeartBeat软件包。
可以通过SuSE的光盘进行安装,安装命令如下:1.#rpm -Uvh heartbeat-1.2.2-0.6.i586.rpm libnet-1.1.1-42.1.i586.rpmheartbeat-pils-1.2.2-0.6.i586.rpm heartbeat-stonith-1.2.2-0.6.i586.rpm2)修改HeartBeat的配置文件①主配置文件/etc/ha.d/ha.cf将/usr/share /doc/packages/heartbeat/目录下ha.cf、authkeys、haresources 三个文件考入/etc/ha.d/目录下,再将主配置文件/etc/ha.d/ha.cf修改如下:1.node linux12.node linux23.keepalive 24.deadtime 305.warntime 106.initdead 1207.auto_failback on8.bcast eth19.ping 10.1.1.110.ping 10.1.1.211.respawn hacluster /usr/lib/heartbeat/ipfail②认证方式文件/etc/ha.d/authkeys修改认证方式文件/etc/ha.d/authkeys如下:1.auth 22. 2 crc③资源配置文件/etc/ha.d heresources假设现在正在进行Apache服务的HA系统,这里设置的服务必须在/etc /ha.d/resource.d和/etc/rc.d/init.d下有响应的脚本。
修改资源配置文件/etc/ha.d/haresources如下:1.linux1 192.168.8.112 apache2④拷贝配置文件到linux21.#scp /etc/ha.d/ha.cf 10.1.1.2:/etc/ha.d2.#scp /etc/ha.d/authkeys 10.1.1.2:/etc/ha.d3.#scp /etc/ha.d/haresources 10.1.1.2:/etc/ha.d3)启动HeartBeat服务:1.#chkconfig -s heartbeat on2.#chmod 600 /etc/ha.d/authkeys3.#/etc/init.d/heartbeat start系统显示信息如下:1.Starting High-Availability servicesheartbeat:2010/4/01_23:05:19 info: Neither logfile nor logfacility found.2.heartbeat: 2010/4/01_23:05:19 info: Logging defaulting to /var/log/ha-log3.heartbeat: 2010/4/01_23:05:19 info:**************************4.heartbeat: 2010/4/01_23:05:19 info:Configuration validated.Starting heartbeat 1.2.25.done通过运行"ps -ef|grep heartbeat"命令来查看进程:1.root 4240 1 0 23:25 ? 00:00:01 heartbeat:heartbeat:master control process2.nobody 4242 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:FIFO reader3.nobody 4243 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:write:bcast eth14.nobody 4244 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:read:bcast eth15.nobody 4245 4240 0 23:05 ?00:00:00 heartbeat:heartbeat:write:ping 10.1.1.16.nobody 4246 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:read:ping 10.1.1.17.nobody 4247 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:write:ping 10.1.1.28.nobody 4248 4240 0 23:05 ? 00:00:00 heartbeat:heartbeat:read:ping 10.1.1.29.haclust 4254 4240 0 23:07 ? 00:00:00 /usr/lib/heartbeat/ipfail1 安装Apache1)安装Apache和相关软件包如下:1.#rpm -Uvh apahe2-2.0.49-27.8.i586.rpm apache2-prefork-2.0.49-27.8.i586.rpm libapr0-2.0.49-27.8.i586.rpm2.#SuSEconfig --module apache22)启动Apache:1./etc/init.d/apache2 start并运行"ps -ef|grep apache"查看进程:1.root 4387 1 10 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf2.wwwrun 4388 4387 0 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf3.wwwrun 4389 4387 0 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf4.wwwrun 4390 4387 0 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf5.wwwrun 4391 4387 0 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf6.wwwrun 4392 4387 0 23:33 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf3)创建并编辑一个index.html文件:1.#vi /srv/www/htdocs/index.html在其中输入"linux ha"的字样,并保存退出。