由于种种原因,不能做实验,这里简述下GUI的虚拟化集群


nat:宿主机要打开ip_forward功能,这样才能与外网通信。 进入/etc/libvirt/qemu/network/default.xml cp default.xml net1.xml vim net1.xml 修改的地方name=net1,uuid,bridge name,mac,ip address真机的ip,range虚拟机的ip分配范围 cd autostart目录下ln -s ../net1.xml ./ service libvirtd restart 进入虚拟机对应的xml文件,修改网络部分即可

桥接:1.关闭NetworkManager 2.cp ifcfg-eth0 ifcfg-br0 3.vim ifcfg-br0 DEVICE=br0 TYPE=Bridge 4.vim ifcfg=eth0 IPADDR,NETMASK,GATEWAY,DNS全部删掉先 添加:BRIDGE=br0 5.service network restart 进入虚拟机对应的文件,修改网络部分即可 *(修改虚拟机文件是需先关闭虚拟机)

基于GUI的虚拟集群

selinux和iptables关闭,然后做下ntp时间同步

1.yum install -y luci ricci(第二个节点只需要安装ricci)
   或者yum groupinstall -y "High Availablity"(两个节点都做)
	 
2.service luci start(luci是图形化管理)

3.service ricci start(两个节点都设密码)

4./etc/cluster/cluster.conf(主配置文件)
  或者访问https://你机器的ip:8084
	你机器的用户和密码
接下来全是在GUI里配置,鼠标点点	
5.create (创建集群)
   cluster name---集群名称
	 node name 节点名
	 选择download packages自动装包
	 
6.clustat(查看集群状态)

7.fence devices(创建两个虚拟fence设备与真机相关联)
   fence virt
 
8.点击节点名称进入设置,添加一个虚拟fence,取名选择之前创建好的fence(两节点都做)

9.添加failover domain(失效域)
  name 
	restricted(勾选上)
	两个节点勾选上
	
10.resources(资源)
    ip address x.x.x.100 (VIP)
		netmask 24
    再添加一个script
		name  httpd
		full path /etc/init.d/httpd 
		
11.service groups
    service name 
		automatically start this service (勾选上)
		failover domain
		recovery policy 选择一种操作即可
		
		add child resource
		VIP
		http (节点上要先装好包)
		
12 打开网页,访问x.x.x.100 即可访问到某一节点的网站
GUI结束

13.故障切换前,要做一个fence验证(这里给个链接去看下怎么配置,提醒一点)
    1.必须在你的宿主机做此操作,然后将key文件分别复制到对应节点的路径下,路径一定不能错
			

14.命令行添加节点
   1.修改/etc/cluster/cluster.conf
      版本号+1
			下面的节点文件增加一个新节点
			
15.cman_tool version -r(同步版本号)

16.新加节点启动三个服务,cman rgmanager modclusterd

17.clusvcadm -r web名 -m 新节点(将服务迁移到新节点上)

18新节点将fence设备拉取过来

19.发现问题,当连续关闭两个节点后,第三台节点不会向外提供服务,这里就牵扯到权重问题

20.仲裁盘:
   新开一台机器,添加一块磁盘,分区给他100M空间
	 yum install -y scsi*
	 
	 vim /etc/tgt/targets.conf
	 在第38行左右将backing-store的路径改成你的分区,上下两行也同时开启,三行为一个例子。
   service tgtd start
	 chkconfig tgtd on

21.node1-3
     安装iscsi*
     iscsiadm -m discovery -t st -p node4
		 iscsiadm -m node -l
		 mkqdisk -c /dev/你的新盘 -l 仲裁盘名称
		 
22.service luci stop
     rm -f /var/lib/luci/data/luci.db
		 service luci start

GUI
23.直接add一个集群,然后点击最后的configure
     qdisk 添加使用quorum disk
		 by device label--仲裁盘名称
		 
		 heuristics
		 /bin/ping 宿主机ip -c 1  
		 interval 10 (每10秒ping一次)
		 score  1  (ping通加一分)
		 tko  2 (ping两次ping不通就废掉他)
		 
		 minimum total score 1 (最小值为1)
		 
	
24.共享存储
    1.每个节点都去挂接nfs,给对应的用户权限
    2.哪个节点对外提供服务就挂接nfs
       在GUI里,点解resources,添加nfs/cifs mount
			 name --起个名
			 mount point---挂接本地那?
			 host  ---nfs服务器ip(走内网最好)
			 nfs export directory name or cifs share(nfs服务器的哪个文件?)
			 
25.service groups添加resources的nfs名称即可

26.高可用已完成,然而怎么保证高可用的基础上实现负载均衡呢?硬件的负载均衡排除,在linux系统上做lvs也可以做负载均衡,实现成本降低。

27.lvs是基于内核工作,在编译内核时将lvs功能加进去,可以以文件的形式存在,也可以使用模块的方式加载起立使用。软件是用来定义规则,内核用来定义功能。

28.lvs-nat(两个节点都要做)
     vim /etc/sysctl.conf
		 net.ipv4.ip_forward = 1
		 
		 sysctl -p
		 
		 yum groupinstall -y "Load Balancer"(如果没有该组包,自己找yum源)
		 
		 piranha-passed(设密码)
		 
		 service piranha-gui start
		 
29.打开网页ip:3636访问
		GLOBAL SETTINGS
		公网ip
		内网ip
		模式--nat
		router ip 内网ip最后一位改成254
		device eth1:1
    
		REDUNDANCY
		另一台机器的公网内网ip
		
		
VIRTUAL SERVERS
添加规则,打开规则,编辑规则

name
port
protocol
VIP
device eth0:1(子接口)

REAL SERVER
添加两个内网网口

MONITORING SCRIPTS
第一个   /bin/ceshi %h
第三个  yes
在本机
yum install -y links(两台都装)
vim /bin/ceshi
#!/bin/bash
/usr/bin/links -dump 1 $1 > /dev/null 2>&1
if [ 0 -eq $? ] ; then
   echo yes
else
	 echo no
	 fi
	 
chmod +x ceshi

scp /etc/sysconfig/ha/lvs.cf 另一台机器
scp /bin/ceshi 另一台机器

service pulse start(两台都起)

通过eth1登录到机器(两台机器一样)
ifdown eth0

route add default gw x.x.x.1
route add default gw x.x.x.254

service httpd start


fence使用