LVS和VCS双机管理命令总结
在工作中我们会遇到很多不同类型的命令。在工作时,我们可能没有花太多时间去进行系统的记忆,导致过一段时间会忘记这些命令,等下次用到的时候,又不得不再去查阅资料,影响了工作效率。所以,在工作中,我们应该多做一些笔记,多做一些记忆,多做一些总结,提高自身的知识水平,提高工作效率。以下是我总结的LVS和VCS双机管理命令,和大家一起学习:
LVS常用命令:
rcheartbeat start //启动HeartBeat服务
rcheartbeat stop //停止HeartBeat服务(执行此命令将导致主、备用LVS服务器切换)
rcheartbeat restart //重启HeartBeat服务(执行此命令将导致主、备用LVS服务器切换)
ipvsadm //查看LVS调度策略
VCS常用命令:
hastart //启动当前登录节点的VCS进程
hastop -all -force //强制停止双机各节点上的VCS进程
hagrp -online service_group -sys nodename //在指定节点启动资源组,service_group为需要启动的资源组名称,nodename为指定节点的名称
hagrp -offline service_group -sys nodename //在指定节点停止资源组,service_group为需要启动的资源组名称,nodename为指定指定节点的名称
hagrp -switch service_group -to nodename //双机切换至另一节点,service_group为需要启动的资源组名称,nodename为指定定节点的名称
hagrp -clear service_group -sys nodename //清除资源组的故障状态,service_group为需要启动的资源组名称,nodename为指定节点的名称
hagrp -force nodename //强制启动登录节点的VCS进程,nodename为指定节点的名称
LVS集群详解
试验环境 Red Hat Enterprise Linux 4
软件版本 ipvsadm-1.24.tar.gz
编译安装注意
#pwd
/usr/src
#ln -s kernels/2.6.9-22.EL.i686 linux 如果没有目录则安装RPEM包kernel-devel-2.6.9-22.EL
#rpmbuild -tb ipvsadm-1.24.tar.gz
#rpm -ivh /usr/src/redhat/RPEM/i386/ipvsadm-1.24-6.i386.rpm
正常使用时提示:
[root@lvs boot]# ipvsadm
IP Virtual Server version 1.2.0 (size=65536)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
一、NAT方式
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
RealServer1: 192.168.1.2
RealServer2: 192.168.1.3
nameserver: 192.168.1.1
gateway: 192.168.1.1 (使用正确地址,或者使用本机地址,否则会出现刷新ipvsadm rule时很慢)
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载nat模块
#modprobe iptable_nat
注意:
用lsmod检查,另如果不加载此模块,也可以在第一次访问时成功,但是会在再次访问时出现延迟过长,或访问超时现象。
3.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -m
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -m
rr 轮询方式
-m 设置为NAT方式
4.保存rule
#ipvsadm ——save > /etc/sysconfig/ipvsadm
5.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
6.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.1
nameserver: 192.168.1.1
开启HTTP服务,确认自己能够访问。
RealServer2:
ip: 192.168.1.3
gateway: 192.168.1.1
nameserver: 192.168.1.1
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
7.测试
选择一台主机,ip设置10.0.0.2 ,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
二、Direct Routing方式
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
RealServer1: 192.168.1.2
RealServer2: 192.168.1.3
nameserver: 192.168.1.254
gateway: 192.168.1.254
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -g
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -g
rr 轮询方式
-g 设置为DR方式
3.保存rule
#ipvsadm ——save > /etc/sysconfig/ipvsadm
4.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
4.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore 注释:这四句目的是为了关闭ARP广播响应
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。
RealServer2:
ip: 192.168.1.3
gateway: 192.168.1.254
nameserver: 192.168.1.254
#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
5.测试
在网关作测试即可,其中一块ip设置10.0.0.2 ,另一块设置192.168.1.254。访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
三、IP Tunnel方式
vpn server:
eth0:10.0.0.3 (测试时使用的OPENVPN)
gateway server:
eth0:10.0.0.2
eth1:192.168.1.254
gatewat server2:
eth0:10.0.0.4
eth1:172.0.0.254
LVS Director Servers:
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
nameserver: 192.168.1.254
gateway: 192.168.1.254
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
tun0: 20.0.0.1 (这个是连接到vpn后有服务器分配到的)
RealServer2:
ip: 172.0.0.1
gateway: 172.0.0.254
nameserver: 172.0.0.254
tun0: 20.0.0.2 (这个是连接到vpn后有服务器分配到的)
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.1:80 -i (RS1的地址指定,也可以选择本地地址192.168.1.2)
#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.2:80 -i
rr 轮询方式
-i 设置为IP Tunnel方式
3.保存rule
#ipvsadm ——save > /etc/sysconfig/ipvsadm
4.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
5.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
tun0: 20.0.0.1
#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore 注释:这四句目的是为了关闭ARP广播响应
#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。
RealServer2:
RealServer2:
ip: 172.0.0.1
gateway: 172.0.0.254
nameserver: 172.0.0.254
tun0: 20.0.0.2
#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
6.测试
在网关作测试即可,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
个人最新工作总结——华为IPTV中间件LVS双机测试总结---欢迎讨论指正
对中间件双机测试的总结。
在中间件测试当中,我负责双机的验证测试,由于中间以前双机测试是空白,所以在刚开始时,我压力比较大也遇到了一些困难,现在把前一段时间的工作做下梳理,可以让大家方便快速的了解中间件双机的一些策略。
中间件部署双机的部件有:1.ACS做认证鉴权———采用LVS调度策略实现双机的切换管理。 2.管理端和数据采用CVS进行双机的调度管理。
采用双机的目的:保证系统的稳定性和可靠性,说的通俗点就是用两台机器去提供一种服务,当其中一台出现故障时,不影响系统的正常运行,当然其中两台机子同时有条不紊的工作,当然需要一些调度的方法和策略了。
lvs的策略:
虽然都涉及到调度,但 lvs与中间件的EDS调度不同,EDS调度中,机顶盒配置的是EDS地址,EDS通过自己的调度算法,把合适的EPG地址返回给机顶盒,然后机顶盒再根据返回的地址再去访问EPG,而在ACS双机中EPG去访问ACS,首先访问的是lvs的心跳地址,然后lvs根据两台机子的权重,把EPG的访问地址直接修改成目标地址,而不是返回地址给EPG。
2. 安装: heartbeat
依次安装:
rpm -ivh libnet-1.1.2.1-1.rh.el.um.l.i368.rpm
rpm -ivh heartbeat-pils-1.2.3.cvs.20050927-1.rh.el.um.1.i386.rpm
rpm -ivh heartbeat-stonith-1.2.3.cvs.20050927-1.rh.el.um.1.i386.rpm
rpm -ivh heartbeat-1.2.3.cvs.20050927-1.rh.el.um.1.i386.rpm
我们IPTV-mem的lvs调度采取这样的策略,按照权重去调度,两台正常的ACS都装有heartbeat心跳,它们相互起线程去检测,主机是否启动,检测的内容包括提供业务的网卡是否启动。相关提供服务的进程是否在。当检测周期内检测到异常时,对方的初始权重减一,当权重减为0时视为不可用不在调动,如下一周期检测到正常则恢复初始权重,当epg放问ACS时,按照当时的权重比例来调度。
这里是自己在中间件测试当中的一些总结,希望对大家了解中间件双机策略提供一些帮助。