
这篇文章是前几篇文章的总结,我们先简单的总结一下我们前面讲解的内容,前面我们讲解了,lvs(负载均衡器)、heartbeat、corosync、pacemaker、web高可用集群、mysql高可用集群、drdb、iscsi、gfs2、clvm等,唯一没有讲解的就是lvs可用,也就是前端高可用,我们这一篇博文主要讲解内容。高可用集群—redhat 集群套装 conga、高可用集群带存储应用方案、apache, nigios 连接 tomcat 集群或 jobss 集群。二、moebius集群的独特优势格瑞趋势为用户提供的是“一站式”解决方案,带给用户的是一个可以为其提供稳定服务的平台,一个涵盖高可用、数据安全、负载均衡的整体解决方案,而不是一堆零散的“双机”、“灾备”、“复制”、“均衡”软件,或者是它们之间的简单集成。
最近学习KVM虚拟化及负载均衡集群技术,参考了很多帖子,在学习的过程中顺便将练手的过程记录如下,希望能给大家些许帮助!
keepalived+lvs+iscsi+gfs搭建高可用负载均衡web集群,主要参考了这个帖子:
也不知是不是原作者,谨此感谢!
一、环境搭建及虚拟机部署:
1、虚拟机宿主:
主机名 IP地址
WEB 172.16.9.1
RHEL6.2基本服务器和虚拟化
KVM虚拟机采用桥接方式安装
网卡桥接:
[root@Web:/root]$cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0
修改为如下即可:
[root@yzhq root]# cat /etc/sysconfig/sendmail。# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly。shell=/bin/bashpath=/sbin:/bin:/usr/sbin:/usr/binmailto=roothome=/# run-parts01 * * * * root run-parts /etc/cron.hourly02 4 * * * root run-parts /etc/cron.daily22 4 * * 0 root run-parts /etc/cron.weekly42 4 1 * * root run-parts /etc/cron.monthly。
DEVICE="eth0"
NM_CONTROLLED="yes"
ONBOOT=yes
HWADDR=5C:F3:FC:94:88:EC
TYPE=Ethernet
BRIDGE=br0
BOOTPROTO=none
PREFIX=27
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"
注:eth0不要设置IP
[root@yzhq root]# cat /etc/sysconfig/sendmail。# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly。shell=/bin/bashpath=/sbin:/bin:/usr/sbin:/usr/binmailto=roothome=/# run-parts01 * * * * root run-parts /etc/cron.hourly02 4 * * * root run-parts /etc/cron.daily22 4 * * 0 root run-parts /etc/cron.weekly42 4 1 * * root run-parts /etc/cron.monthly。
DEVICE="br0"
ONBOOT=yes
TYPE=Bridge
BOOTPROTO=none
IPADDR=172.16.9.2
GATEWAY=172.16.9.1
DNS1=219.149.6.99
2、虚拟机安装:
安装、克隆总计8台虚拟机
虚拟机 主机名 IP
LVS-MASTER LVS-MASTER 172.16.9.10
LVS-BACKUP LVS-BACKUP 172.16.9.11
Mysql-A Mysql-A 172.16.9.21
Mysql-B Mysql-B 172.16.9.22
Web-A Web-A 172.16.9.31
Web-B Web-B 172.16.9.32
Web-C Web-C 172.16.9.33
Firesystem Firesystem 172.16.9.41
VIP IP 172.16.9.254
root@Web:[/root]~$virt-install \
--name Web-A \
--ram 2048 \
--vcpus=64 \ ##虚拟机CPU个数
an alternative approach if no network is available is to boot from diskboot.img on a usb key as documented in the installation guide and do a hard disk install with iso images on the target computer.。bp d -r http://pan.baidu.com/disk/home#dir/path=/path/to/directory1 http://pan.baidu.com/disk/home#dir/path=/path/to/directory2 ..。bp d http://pan.baidu.com/disk/home#dir/path=/path/to/filename1 http://pan.baidu.com/disk/home#dir/path=/path/to/filename2 ..。
--network bridge=br0 \
--os-variant=rhel6 \
--cdrom /var/lib/libvirt/rhel-server-6.2-x86_64-dvd.iso \
--vnclisten=172.16.9.1 \
--vncport=6901 \
--vnc
安装过程选RHEL6.2基本服务器即可
3、克隆虚拟机:
暂停虚拟机以便克隆
root@Web:[/root]~$virsh suspend Web-A
开始克隆
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=Web-B --file=/var/lib/libvirt/images/Web-B.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=Web-C --file=/var/lib/libvirt/images/Web-C.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=Mysql-A--file=/var/lib/libvirt/images/Mysql-A.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=Mysql-B --file=/var/lib/libvirt/images/Mysql-B.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=Firesystem --file=/var/lib/libvirt/images/Firesystem.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=LVS-MASTER --file=/var/lib/libvirt/images/LVS-MASTER.img
root@Web:[/root]~$virt-clone --connect qemu:///system --original=Web-A --name=LVS-BACKUP --file=/var/lib/libvirt/images/LVS-BACKUP.img
恢复虚拟机
root@Web:[/root]~$virsh resume Web-A
如需强制关闭虚拟机,如下:
root@Web:[/etc/libvirt/qemu]~$virsh destroyWeb-A
虚拟机克隆完毕后,需修改vnc端口
root@Web:[/root]~$vi /etc/libvirt/qemu/Web-B.xml
<graphics type='vnc' port='6902' autoport='no' listen='172.16.9.32'>
<listen type='address' address='172.16.9.32'/>
</graphics>
所有克隆虚拟机的VNC端口修改完毕后,从启libvirtd服务

从启libvirtd服务
root@Web:[/root]~$service libvirtd restart
Stopping libvirtd daemon: [OK]
Starting libvirtd daemon: 15:06:04.222: 51157: info : libvirt version: 0.9.4, package: 23.el6_2.4 (Red Hat, Inc. <>, 2012-01-06-02:50:25, x86-007.build.bos.redhat.com)
/stage[main]/apache::service/service[httpd]/ensure: change from stopped to running failed: could not start service[httpd]: execution of '/sbin/service httpd start' returned 1: starting httpd: [failed]。warning:unknown:write failed:no space left on device(28)in unknown on line 0 warning:unknown:failed to write session data(files).please verify that the current setting of session.save_path is correct...。the getaddrinfo() function converts a hostname and a service name into a listof structures, each containing a potential way to connect() to the namedservice on the named host.。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-101620-1.html
到时候什么国际法
那是因为濒海舰系统是第一次搞