michellc 发表于 2019-1-3 09:56:54

LVS+Heartbeat+Ldirector+NAS

【小编】在上一篇博客中给大家详细介绍了LVS的几种模型和常见的10种调度算法,并结合小的案例说明了LVS-NAT模型的工作原理,今天小编结合一个大的案例来详细说明LVS的另一种模型DR模型的工作过程,简单了解一下群集的两种架构HA和LB在企业网中的使用.
【实验详细拓扑规划】
http://blog.运维网.com/attachment/201305/160807654.png
【详细配置过程】
Web服务器的LB群集:RealNode1、RealNode2
【RealNode1的相关配置】
①设置Web服务器网卡的ARP忽略和ARP宣告的默认值
echo“net.ipv4.conf.eth1.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.eth1.arp-announce = 2”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-announce = 2”>> /etc/sysctl.conf
②让系统配置立刻生效
http://blog.运维网.com/attachment/201305/161136881.jpg
③网卡参数配置,添加lo:0网卡

http://blog.运维网.com/attachment/201305/161923922.png
http://blog.运维网.com/attachment/201305/161923781.png
http://blog.运维网.com/attachment/201305/161924394.png
http://blog.运维网.com/attachment/201305/161927952.png
④配置Web服务器,添加基于主机头的虚拟主机.

vim/etc/httpd/httpd.conf
http://blog.运维网.com/attachment/201305/161947224.png
【RealNode2的相关配置】
①设置Web服务器网卡的ARP忽略和ARP宣告的默认值
echo“net.ipv4.conf.eth1.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.eth1.arp-announce = 2”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-announce = 2”>> /etc/sysctl.conf
②让系统配置立刻生效
http://blog.运维网.com/attachment/201305/162030416.jpg
  ③网卡参数配置,添加lo:0网卡

http://blog.运维网.com/attachment/201305/162031216.png

http://blog.运维网.com/attachment/201305/162031428.png

http://blog.运维网.com/attachment/201305/162032200.png

http://blog.运维网.com/attachment/201305/162032991.png

④配置Web服务器,添加基于主机头的虚拟主机.
vim/etc/httpd/httpd.conf
http://blog.运维网.com/attachment/201305/162034551.png

DNS服务器LB群集:DNS1、DNS2
【DNS1的相关配置】
①配置本地yum源.
http://blog.运维网.com/attachment/201305/162214817.png
  ②本地yum安装DNS服务器需要的软件包.

yuminstallbindbind-chrootcaching-nameserver
进行DNS相关配置
cd/var/named/chroot/etc/
cp-pnamed.caching-nameserver.confnamed.conf
vimnamed.conf
http://blog.运维网.com/attachment/201305/162217323.png

vimnamed.rfc1912.zones
http://blog.运维网.com/attachment/201305/162218673.png

cd /var/named/chroot/var/named/
cp-plocalhost.zonewpp.com.zone
vimwpp.com.zone
http://blog.运维网.com/attachment/201305/162231164.png

③DNS本地解析测试
http://blog.运维网.com/attachment/201305/162221902.png

④设置Web服务器网卡的ARP忽略和ARP宣告的默认值
echo“net.ipv4.conf.eth1.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.eth1.arp-announce = 2”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-announce = 2”>> /etc/sysctl.conf
⑤让系统配置立刻生效
http://blog.运维网.com/attachment/201305/162230806.jpg

⑥网卡参数配置,添加lo:0网卡
http://blog.运维网.com/attachment/201305/162230673.png

http://blog.运维网.com/attachment/201305/162230570.png

http://blog.运维网.com/attachment/201305/162231910.png

【DNS2的相关配置】
①配置本地yum源.
http://blog.运维网.com/attachment/201305/162939439.png
②本地yum安装DNS服务器需要的软件包.
yuminstallbindbind-chrootcaching-nameserver
进行DNS相关配置
cd/var/named/chroot/etc/
cp-pnamed.caching-nameserver.confnamed.conf
vimnamed.conf
http://blog.运维网.com/attachment/201305/162940192.png

vimnamed.rfc1912.zones
http://blog.运维网.com/attachment/201305/162943838.png

cd /var/named/chroot/var/named/
cp-plocalhost.zonewpp.com.zone
vimwpp.com.zone
http://blog.运维网.com/attachment/201305/162943464.png

③DNS本地解析测试
http://blog.运维网.com/attachment/201305/162945152.png

④设置Web服务器网卡的ARP忽略和ARP宣告的默认值
echo“net.ipv4.conf.eth1.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.eth1.arp-announce = 2”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-ignore = 1”>> /etc/sysctl.conf
echo“net.ipv4.conf.all.arp-announce = 2”>> /etc/sysctl.conf
⑤让系统配置立刻生效
http://blog.运维网.com/attachment/201305/162946366.jpg

⑥网卡参数配置,添加lo:0网卡
http://blog.运维网.com/attachment/201305/162947477.png

http://blog.运维网.com/attachment/201305/162948485.png

http://blog.运维网.com/attachment/201305/162948743.png

Director的HA群集:node1.a.com、node2.a.com
【node1.a.com的相关配置】
①网络参数配置

http://blog.运维网.com/attachment/201305/163207518.png
http://blog.运维网.com/attachment/201305/163207210.png
http://blog.运维网.com/attachment/201305/163208949.png
  ②配置本地yum源.

http://blog.运维网.com/attachment/201305/163208222.png

③下载并导入Heartbeat所需要的RPM软件包
④挂载光盘,并且利用本地yum源安装Heartbeat解决依赖关系.
mount /dev/cdrom/mnt/cdrom
yumlocalinstall -y heartbeat-2.1.4-11.el5.i386.rpm
heartbeat-pils-2.1.4-11.el5.i386.rpm heartbeat-stonith-2.1.4-11.el5.i386.rpm
libnet-1.1.5-1.el4.i386.rpm
perl-MailTools-1.77-1.el5.noarch.rpm
heartbeat-ldirectord-2.1.4-11.el5.i386.rpm--nogpgcheck
⑤编辑修改Director1节点的主机名
http://blog.运维网.com/attachment/201305/163210924.png

http://blog.运维网.com/attachment/201305/163211416.png

http://blog.运维网.com/attachment/201305/163211206.png

⑥编辑Heartbeat的主配置文件
vim/etc/ha.d/ha.cf
http://blog.运维网.com/attachment/201305/163212338.png

http://blog.运维网.com/attachment/201305/163212566.png

http://blog.运维网.com/attachment/201305/163213572.png

⑦编辑Heartbeat的认证文件
vim/etc/ha.d/authkeys
http://blog.运维网.com/attachment/201305/163213581.png

⑧编辑Heartbeat的资源管理文件
vim/etc/ha.d/haresources
http://blog.运维网.com/attachment/201305/163215125.png

⑨拷贝ldirectord服务的配置文件到Heartbeat的主配置目录
cd/usr/share/doc/heartbeat-ldirectord-2.1.4/
cpldirectord.cf/etc/ha.d
vim/etc/ha.d/ldirectord.cf
http://blog.运维网.com/attachment/201305/163215608.png

http://blog.运维网.com/attachment/201305/163219230.png

http://blog.运维网.com/attachment/201305/163220670.png

⑩将LVS服务的启动脚本拷贝到Heartbeat的资源管理目录下
cp/etc/init.d/ipvsadm   /etc/ha.d/resource.d/
service ipvsadm stop
chkconfig ipvsadm off
【node2.a.com的相关配置】
①网络参数配置
http://blog.运维网.com/attachment/201305/163841951.png
http://blog.运维网.com/attachment/201305/163841744.png
http://blog.运维网.com/attachment/201305/163842323.png
  ②配置本地yum源.

http://blog.运维网.com/attachment/201305/163842148.png

③下载并导入Heartbeat所需要的RPM软件包
④挂载光盘,并且利用本地yum源安装Heartbeat解决依赖关系.
mount /dev/cdrom/mnt/cdrom
yumlocalinstall -y heartbeat-2.1.4-11.el5.i386.rpm
heartbeat-pils-2.1.4-11.el5.i386.rpm heartbeat-stonith-2.1.4-11.el5.i386.rpm
libnet-1.1.5-1.el4.i386.rpm
perl-MailTools-1.77-1.el5.noarch.rpm
heartbeat-ldirectord-2.1.4-11.el5.i386.rpm--nogpgcheck
⑤编辑修改Director1节点的主机名
http://blog.运维网.com/attachment/201305/163842542.png

http://blog.运维网.com/attachment/201305/163843111.png

http://blog.运维网.com/attachment/201305/163843902.png

⑥编辑Heartbeat的主配置文件
vim/etc/ha.d/ha.cf
http://blog.运维网.com/attachment/201305/163843207.png

http://blog.运维网.com/attachment/201305/163844934.png

http://blog.运维网.com/attachment/201305/163844213.png

⑦编辑Heartbeat的认证文件
vim/etc/ha.d/authkeys
http://blog.运维网.com/attachment/201305/163845375.png

⑧编辑Heartbeat的资源管理文件
vim/etc/ha.d/haresources
http://blog.运维网.com/attachment/201305/163845961.png

⑨拷贝ldirectord服务的配置文件到Heartbeat的主配置目录
cd/usr/share/doc/heartbeat-ldirectord-2.1.4/
cpldirectord.cf/etc/ha.d
vim/etc/ha.d/ldirectord.cf
http://blog.运维网.com/attachment/201305/163846301.png

http://blog.运维网.com/attachment/201305/163846709.png

http://blog.运维网.com/attachment/201305/163847128.png

⑩将LVS服务的启动脚本拷贝到Heartbeat的资源管理目录下
cp/etc/init.d/ipvsadm   /etc/ha.d/resource.d/
service ipvsadm stop
chkconfig ipvsadm off
NAS-->数据存储服务器--->NFS搭建
①网络参数
http://blog.运维网.com/attachment/201305/164228586.png
  ②NFS的基本配置

vim/etc/exports
http://blog.运维网.com/attachment/201305/164229397.png

servicenfsstart
chkconfignfson
③官方下载wordpress论坛的中文源码包,解压到共享目录/webroot下.
cd/webroot
chmod-Rnfsnobody.nfsnobody    /webroot/wordpress
http://blog.运维网.com/attachment/201305/164230425.png

④配置本地yum源.
http://blog.运维网.com/attachment/201305/164231502.png

⑤本地yum安装Mysql-server服务器需要的软件包.
yuminstallmysql-server
配置本地root用户的登录Mysql数据库的管理密码.
mysqladmin-u root -ppassword “123456”
启动Mysql服务
servicemysqldstart
chkconfigmysqld on
以root的身份登录数据库,授权Web服务器的节点用户以Mysql主机地址的方式连接该数据库.
mysql-uroot-p
mysq>GRANT ALL PRIVILEGES ON *.* TO root@192.168.1.1 IDENTIFIED BY '123456' WITH GRANT OPTION;
msql>GRANT ALL PRIVILEGES ON *.* TO root@192.168.1.2 IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql>GRANT ALL PRIVILEGES ON *.* TO root@192.168.1.3 IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql>flush privileges;
⑥在Web服务器的两个节点上分别挂载NFS的共享目录
【RealNode1】
http://blog.运维网.com/attachment/201305/164233356.png

【RealNode2】
http://blog.运维网.com/attachment/201305/164234610.png

⑦在Web服务器上,切换到挂载目录,添加测试页面.
cd/usr/local/apache/htdocs
vimindex.html
http://blog.运维网.com/attachment/201305/164235406.png

【测试分析】
服务器的高可用和负载均衡测试
Director的两个节点上启动Heartbeat服务,查看Real服务器状态
Director1日志监控
http://blog.运维网.com/attachment/201305/164502599.png
  Director2日志监控

http://blog.运维网.com/attachment/201305/164504270.png

查看主节点的网络参数
http://blog.运维网.com/attachment/201305/164505173.png

watch监控Real服务器状态
http://blog.运维网.com/attachment/201305/164506326.png

Web的负载均衡测试(以Vip的方式访问)
测试一:服务都在线时,访问主站点,并刷新页面,日志监控轮训情况
http://blog.运维网.com/attachment/201305/164559887.png
http://blog.运维网.com/attachment/201305/164600158.png
  测试二:Nide1宕掉时,访问主站点,测试监控机制和测试Node2的可用性

http://blog.运维网.com/attachment/201305/164600218.png

http://blog.运维网.com/attachment/201305/164601342.png

http://blog.运维网.com/attachment/201305/164602107.png

DNS的负载均衡测试(以域名的方式访问)
测试一:以域名的方式访问主站点,日志监控DNS的解析情况.
http://blog.运维网.com/attachment/201305/164705263.png

http://blog.运维网.com/attachment/201305/164705313.png

测试二:停掉一个DNS服务器,以域名的方式访问主站点,测试DNS的LB.
http://blog.运维网.com/attachment/201305/164706593.png
3.1.3 Director的高可用性测试(主备切换测试)
将Director节点node1停掉后,测试Drirector的高可用性
①查看服务器的地址
http://blog.运维网.com/attachment/201305/164811168.png
  ②查看服务器所监控的资源

http://blog.运维网.com/attachment/201305/164812237.png

Web方式进行BBS论坛的搭建和配置
http://blog.运维网.com/attachment/201305/164922209.png
http://blog.运维网.com/attachment/201305/164924664.png
http://blog.运维网.com/attachment/201305/164927776.png
http://blog.运维网.com/attachment/201305/164930767.png
http://blog.运维网.com/attachment/201305/164933767.png
http://blog.运维网.com/attachment/201305/164934975.png
http://blog.运维网.com/attachment/201305/164936117.png
http://blog.运维网.com/attachment/201305/164938161.png
http://blog.运维网.com/attachment/201305/164941427.png
用户以域名方式访问WWW服务器的主站点和BBS论坛测试
DNS指向:192.168.10.5
http://blog.运维网.com/attachment/201305/165013630.png
http://blog.运维网.com/attachment/201305/165016650.png
【总结】通过这个案例我们可以简单地了解一下LVS-DR模型的工作原理上与NAT模型的区别,应用LVS集合Ldirector+Heartbeat实现了基于Director的HA群集,并且实现了对于Real服务器的动态监测,后方的NFS做了简单地NAS存储,实现了Web服务器的数据存储和应用的分离,并且实现了Web和DNS的负载均衡群集.



页: [1]
查看完整版本: LVS+Heartbeat+Ldirector+NAS