1.安装操作系统
2.关闭selinux
#edit /etc/selinux/config
SELINUX=disabled
3.disable firewall
#service iptables stop
#service ip6tables stop
#chkconfig iptables off
#chkconfig ip6tables off
4.configure yum source
#mkdir /yum
#mount /dev/sr0 /yum
#vi /etc/yum.repos.d/rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///yum/Packages
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-source-beta]
name=Red Hat Enterprise Linux $releasever Beta - $basearch - Source
baseurl=file:///yum/Packages
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[Server]
name=Server
baseurl=file:///yum/Server
enabled=1
gpgcheck=0
[HighAvailability]
name=HighAvailability
baseurl=file:///yum/HighAvailability
enabled=1
gpgcheck=0
[LoadBalancer]
name=LoadBalancer
baseurl=file:///yum/LoadBalancer
enabled=1
gpgcheck=0
[ScalableFileSystem]
name=ScalableFileSystem
baseurl=file:///yum/ScalableFileSystem
enabled=1
gpgcheck=0
[ResilientStorage]
name=ResilientStorage
baseurl=file:///yum/ResilientStorage
enabled=1
gpgcheck=0
5.install HA software
#yum -y install corosync*
Installed:
corosync.x86_64 0:1.4.1-15.el6 corosynclib.x86_64 0:1.4.1-15.el6
corosynclib-devel.x86_64 0:1.4.1-15.el6
Dependency Installed:
libibverbs.x86_64 0:1.1.6-5.el6
librdmacm.x86_64 0:1.0.17-0.git4b5c1aa.el6
lm_sensors-libs.x86_64 0:3.1.1-17.el6
net-snmp-libs.x86_64 1:5.5-44.el6
perl.x86_64 4:5.10.1-129.el6
perl-Module-Pluggable.x86_64 1:3.90-129.el6
perl-Pod-Escapes.x86_64 1:1.04-129.el6
perl-Pod-Simple.x86_64 1:3.13-129.el6
perl-libs.x86_64 4:5.10.1-129.el6
perl-version.x86_64 3:0.77-129.el6
pkgconfig.x86_64 1:0.23-9.1.el6
#yum -y install pacemaker*
Installed:
pacemaker.x86_64 0:1.1.8-7.el6
pacemaker-cli.x86_64 0:1.1.8-7.el6
pacemaker-cluster-libs.x86_64 0:1.1.8-7.el6
pacemaker-cts.x86_64 0:1.1.8-7.el6
pacemaker-doc.x86_64 0:1.1.8-7.el6
pacemaker-libs.x86_64 0:1.1.8-7.el6
pacemaker-libs-devel.x86_64 0:1.1.8-7.el6
Dependency Installed:
bzip2-devel.x86_64 0:1.0.5-7.el6_0
cifs-utils.x86_64 0:4.8.1-18.el6
cluster-glue-libs.x86_64 0:1.0.5-6.el6
clusterlib.x86_64 0:3.0.12.1-49.el6
glib2-devel.x86_64 0:2.22.5-7.el6
gnutls.x86_64 0:2.8.5-10.el6
keyutils.x86_64 0:1.4-4.el6
libevent.x86_64 0:1.4.13-4.el6
libgcrypt-devel.x86_64 0:1.4.5-9.el6_2.2
libgpg-error-devel.x86_64 0:1.7-4.el6
libgssglue.x86_64 0:0.1-11.el6
libqb.x86_64 0:0.14.2-3.el6
libqb-devel.x86_64 0:0.14.2-3.el6
libtalloc.x86_64 0:2.0.7-2.el6
libtasn1.x86_64 0:2.3-3.el6_2.1
libtdb.x86_64 0:1.2.10-1.el6
libtirpc.x86_64 0:0.2.1-5.el6
libtool-ltdl.x86_64 0:2.2.6-15.5.el6
libtool-ltdl-devel.x86_64 0:2.2.6-15.5.el6
libuuid-devel.x86_64 0:2.17.2-12.9.el6
libxml2-devel.x86_64 0:2.7.6-8.el6_3.4
libxslt.x86_64 0:1.1.26-2.el6_3.1
libxslt-devel.x86_64 0:1.1.26-2.el6_3.1
nfs-utils.x86_64 1:1.2.3-36.el6
nfs-utils-lib.x86_64 0:1.1.5-6.el6
perl-TimeDate.noarch 1:1.16-11.1.el6
quota.x86_64 1:3.17-18.el6
resource-agents.x86_64 0:3.9.2-21.el6
rpcbind.x86_64 0:0.2.0-11.el6
samba-common.x86_64 0:3.6.9-151.el6
samba-winbind.x86_64 0:3.6.9-151.el6
samba-winbind-clients.x86_64 0:3.6.9-151.el6
tcp_wrappers.x86_64 0:7.6-57.el6
zlib-devel.x86_64 0:1.2.3-29.el6
#yum -y install pcs
#yum -y install lvm2-cluster #如果要使用clvmd需要安装此rpm
Installed:
lvm2-cluster.x86_64 0:2.02.98-9.el6
Dependency Installed:
ConsoleKit.x86_64 0:0.4.1-3.el6
ConsoleKit-libs.x86_64 0:0.4.1-3.el6
avahi-libs.x86_64 0:0.6.25-12.el6
cman.x86_64 0:3.0.12.1-49.el6
cryptsetup-luks.x86_64 0:1.2.0-7.el6
cryptsetup-luks-libs.x86_64 0:1.2.0-7.el6
cvs.x86_64 0:1.11.23-15.el6
cyrus-sasl-md5.x86_64 0:2.1.23-13.el6_3.1
dbus.x86_64 1:1.2.24-7.el6_3
eggdbus.x86_64 0:0.6-3.el6
fence-agents.x86_64 0:3.1.5-25.el6
fence-virt.x86_64 0:0.2.3-13.el6
gettext.x86_64 0:0.17-16.el6
gnutls-utils.x86_64 0:2.8.5-10.el6
hal.x86_64 0:0.5.14-11.el6
hal-info.noarch 0:20090716-3.1.el6
hal-libs.x86_64 0:0.5.14-11.el6
hdparm.x86_64 0:9.16-3.4.el6
ipmitool.x86_64 0:1.8.11-13.el6.1
libedit.x86_64 0:2.11-4.20080712cvs.1.el6
libgomp.x86_64 0:4.4.7-3.el6
libvirt-client.x86_64 0:0.10.2-18.el6
modcluster.x86_64 0:0.16.2-20.el6
nc.x86_64 0:1.84-22.el6
net-snmp-utils.x86_64 1:5.5-44.el6
numactl.x86_64 0:2.0.7-6.el6
oddjob.x86_64 0:0.30-5.el6
openais.x86_64 0:1.1.1-7.el6
openaislib.x86_64 0:1.1.1-7.el6
openssh-clients.x86_64 0:5.3p1-84.1.el6
parted.x86_64 0:2.1-19.el6
perl-Net-Telnet.noarch 0:3.03-11.el6
pexpect.noarch 0:2.3-6.el6
pm-utils.x86_64 0:1.2.5-10.el6
polkit.x86_64 0:0.96-2.el6_0.1
python-suds.noarch 0:0.4.1-3.el6
ricci.x86_64 0:0.16.2-63.el6
sg3_utils.x86_64 0:1.28-4.el6
sg3_utils-libs.x86_64 0:1.28-4.el6
telnet.x86_64 1:0.17-47.el6_3.1
yajl.x86_64 0:1.0.7-3.el6
6.configure HA
#vi /etc/hosts
192.168.56.101 rhcs1
192.168.56.102 rhcs2
192.168.254.101 rhcs1-hb
192.168.254.102 rhcs2-hb
for all node:
# cat /etc/cluster/cluster.conf #cman 使用cluster.conf不再使用corosync.conf
<?xml version="1.0"?>
<cluster config_version="7" name="cluster">
<clusternodes>
<clusternode name="rhcs1-hb" nodeid="1">
<altname name="rhcs1"/>
</clusternode>
<clusternode name="rhcs2-hb" nodeid="2">
<altname name="rhcs2"/>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1">
<multicast addr="239.192.0.249"/>
<altmulticast addr="239.192.0.250"/>
</cman>
</cluster>
#service pacemaker start
#chkconfig pacemaker on
#chkconfig cman on
7.vertify status:
# corosync-cfgtool -s
Printing ring status.
Local node ID 1
RING ID 0
id = 192.168.56.101
status = ring 0 active with no faults
RING ID 1
id = 192.168.254.101
status = ring 1 active with no faults
# pcs status corosync
Nodeid Name
1 rhcs1-hb
2 rhcs2-hb
#ps axf
PID TTY STAT TIME COMMAND
...lots of processes...
1090 ? SLsl 0:01 corosync -f
1143 ? Ssl 0:00 fenced
1169 ? Ssl 0:00 dlm_controld
1216 ? Ssl 0:00 gfs_controld
1295 ? Ss 0:00 dbus-daemon --system
1306 ? SLsl 0:00 clvmd -T30 -I cman
1614 ? S 0:00 pacemakerd
1620 ? Ss 0:00 \_ /usr/libexec/pacemaker/cib
1621 ? Ss 0:00 \_ /usr/libexec/pacemaker/stonithd
1622 ? Ss 0:00 \_ /usr/libexec/pacemaker/lrmd
1623 ? Ss 0:00 \_ /usr/libexec/pacemaker/attrd
1624 ? Ss 0:00 \_ /usr/libexec/pacemaker/pengine
1625 ? Ss 0:00 \_ /usr/libexec/pacemaker/crmd
# pcs status
Last updated: Thu Jul 2 11:54:03 2015
Last change: Thu Jul 2 11:26:09 2015 via crm_resource on rhcs2-hb
Stack: cman
Current DC: rhcs1-hb - partition with quorum
Version: 1.1.8-7.el6-394e906
4 Nodes configured, 2 expected votes
3 Resources configured.
Online: [ rhcs1-hb rhcs2-hb ]
OFFLINE: [ rhcs1 rhcs2 ]
Full list of resources:
8.configure global parameter:
#pcs property set stonith-enabled=false
#pcs property set no-quorum-policy=ignore
#pcs resource rsc defaults resource-stickiness=100
9.create volume group:
#lvmconf --enable-cluster
#vi /etc/sysconfig/cluster
CLVMD_CLUSTER_IFACE=cman
#service clvmd start
#chkconfig clvmd on
#pvcreate /dev/sdb
#vgcreate -cy datavg /dev/sdb
#lvcreate -n datalv -L 1020M datavg
#vgchange -ay datavg
#mkfs.ext3 /dev/mapper/datavg-datalv
10.configure resource
#pcs resource create vip ocf:heartbeat:IPaddr2 \
ip=192.168.56.103 cidr_netmask=24 op monitor interval=30s
#pcs resource create datavg ocf:heartbeat:LVM volgrpname=datavg
#pcs resource create app-fs ocf:heartbeat:Filesystem \
device=/dev/mapper/datavg-datalv directory=/app fstype=ext3
#pcs resource group add app-group vip datavg app-fs
#pcs constraint order start datavg then start app-fs
#pcs constraint order stop app-fs then stop datavg
#crm_verify -L -V
2.关闭selinux
#edit /etc/selinux/config
SELINUX=disabled
3.disable firewall
#service iptables stop
#service ip6tables stop
#chkconfig iptables off
#chkconfig ip6tables off
4.configure yum source
#mkdir /yum
#mount /dev/sr0 /yum
#vi /etc/yum.repos.d/rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///yum/Packages
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-source-beta]
name=Red Hat Enterprise Linux $releasever Beta - $basearch - Source
baseurl=file:///yum/Packages
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[Server]
name=Server
baseurl=file:///yum/Server
enabled=1
gpgcheck=0
[HighAvailability]
name=HighAvailability
baseurl=file:///yum/HighAvailability
enabled=1
gpgcheck=0
[LoadBalancer]
name=LoadBalancer
baseurl=file:///yum/LoadBalancer
enabled=1
gpgcheck=0
[ScalableFileSystem]
name=ScalableFileSystem
baseurl=file:///yum/ScalableFileSystem
enabled=1
gpgcheck=0
[ResilientStorage]
name=ResilientStorage
baseurl=file:///yum/ResilientStorage
enabled=1
gpgcheck=0
5.install HA software
#yum -y install corosync*
Installed:
corosync.x86_64 0:1.4.1-15.el6 corosynclib.x86_64 0:1.4.1-15.el6
corosynclib-devel.x86_64 0:1.4.1-15.el6
Dependency Installed:
libibverbs.x86_64 0:1.1.6-5.el6
librdmacm.x86_64 0:1.0.17-0.git4b5c1aa.el6
lm_sensors-libs.x86_64 0:3.1.1-17.el6
net-snmp-libs.x86_64 1:5.5-44.el6
perl.x86_64 4:5.10.1-129.el6
perl-Module-Pluggable.x86_64 1:3.90-129.el6
perl-Pod-Escapes.x86_64 1:1.04-129.el6
perl-Pod-Simple.x86_64 1:3.13-129.el6
perl-libs.x86_64 4:5.10.1-129.el6
perl-version.x86_64 3:0.77-129.el6
pkgconfig.x86_64 1:0.23-9.1.el6
#yum -y install pacemaker*
Installed:
pacemaker.x86_64 0:1.1.8-7.el6
pacemaker-cli.x86_64 0:1.1.8-7.el6
pacemaker-cluster-libs.x86_64 0:1.1.8-7.el6
pacemaker-cts.x86_64 0:1.1.8-7.el6
pacemaker-doc.x86_64 0:1.1.8-7.el6
pacemaker-libs.x86_64 0:1.1.8-7.el6
pacemaker-libs-devel.x86_64 0:1.1.8-7.el6
Dependency Installed:
bzip2-devel.x86_64 0:1.0.5-7.el6_0
cifs-utils.x86_64 0:4.8.1-18.el6
cluster-glue-libs.x86_64 0:1.0.5-6.el6
clusterlib.x86_64 0:3.0.12.1-49.el6
glib2-devel.x86_64 0:2.22.5-7.el6
gnutls.x86_64 0:2.8.5-10.el6
keyutils.x86_64 0:1.4-4.el6
libevent.x86_64 0:1.4.13-4.el6
libgcrypt-devel.x86_64 0:1.4.5-9.el6_2.2
libgpg-error-devel.x86_64 0:1.7-4.el6
libgssglue.x86_64 0:0.1-11.el6
libqb.x86_64 0:0.14.2-3.el6
libqb-devel.x86_64 0:0.14.2-3.el6
libtalloc.x86_64 0:2.0.7-2.el6
libtasn1.x86_64 0:2.3-3.el6_2.1
libtdb.x86_64 0:1.2.10-1.el6
libtirpc.x86_64 0:0.2.1-5.el6
libtool-ltdl.x86_64 0:2.2.6-15.5.el6
libtool-ltdl-devel.x86_64 0:2.2.6-15.5.el6
libuuid-devel.x86_64 0:2.17.2-12.9.el6
libxml2-devel.x86_64 0:2.7.6-8.el6_3.4
libxslt.x86_64 0:1.1.26-2.el6_3.1
libxslt-devel.x86_64 0:1.1.26-2.el6_3.1
nfs-utils.x86_64 1:1.2.3-36.el6
nfs-utils-lib.x86_64 0:1.1.5-6.el6
perl-TimeDate.noarch 1:1.16-11.1.el6
quota.x86_64 1:3.17-18.el6
resource-agents.x86_64 0:3.9.2-21.el6
rpcbind.x86_64 0:0.2.0-11.el6
samba-common.x86_64 0:3.6.9-151.el6
samba-winbind.x86_64 0:3.6.9-151.el6
samba-winbind-clients.x86_64 0:3.6.9-151.el6
tcp_wrappers.x86_64 0:7.6-57.el6
zlib-devel.x86_64 0:1.2.3-29.el6
#yum -y install pcs
#yum -y install lvm2-cluster #如果要使用clvmd需要安装此rpm
Installed:
lvm2-cluster.x86_64 0:2.02.98-9.el6
Dependency Installed:
ConsoleKit.x86_64 0:0.4.1-3.el6
ConsoleKit-libs.x86_64 0:0.4.1-3.el6
avahi-libs.x86_64 0:0.6.25-12.el6
cman.x86_64 0:3.0.12.1-49.el6
cryptsetup-luks.x86_64 0:1.2.0-7.el6
cryptsetup-luks-libs.x86_64 0:1.2.0-7.el6
cvs.x86_64 0:1.11.23-15.el6
cyrus-sasl-md5.x86_64 0:2.1.23-13.el6_3.1
dbus.x86_64 1:1.2.24-7.el6_3
eggdbus.x86_64 0:0.6-3.el6
fence-agents.x86_64 0:3.1.5-25.el6
fence-virt.x86_64 0:0.2.3-13.el6
gettext.x86_64 0:0.17-16.el6
gnutls-utils.x86_64 0:2.8.5-10.el6
hal.x86_64 0:0.5.14-11.el6
hal-info.noarch 0:20090716-3.1.el6
hal-libs.x86_64 0:0.5.14-11.el6
hdparm.x86_64 0:9.16-3.4.el6
ipmitool.x86_64 0:1.8.11-13.el6.1
libedit.x86_64 0:2.11-4.20080712cvs.1.el6
libgomp.x86_64 0:4.4.7-3.el6
libvirt-client.x86_64 0:0.10.2-18.el6
modcluster.x86_64 0:0.16.2-20.el6
nc.x86_64 0:1.84-22.el6
net-snmp-utils.x86_64 1:5.5-44.el6
numactl.x86_64 0:2.0.7-6.el6
oddjob.x86_64 0:0.30-5.el6
openais.x86_64 0:1.1.1-7.el6
openaislib.x86_64 0:1.1.1-7.el6
openssh-clients.x86_64 0:5.3p1-84.1.el6
parted.x86_64 0:2.1-19.el6
perl-Net-Telnet.noarch 0:3.03-11.el6
pexpect.noarch 0:2.3-6.el6
pm-utils.x86_64 0:1.2.5-10.el6
polkit.x86_64 0:0.96-2.el6_0.1
python-suds.noarch 0:0.4.1-3.el6
ricci.x86_64 0:0.16.2-63.el6
sg3_utils.x86_64 0:1.28-4.el6
sg3_utils-libs.x86_64 0:1.28-4.el6
telnet.x86_64 1:0.17-47.el6_3.1
yajl.x86_64 0:1.0.7-3.el6
6.configure HA
#vi /etc/hosts
192.168.56.101 rhcs1
192.168.56.102 rhcs2
192.168.254.101 rhcs1-hb
192.168.254.102 rhcs2-hb
for all node:
# cat /etc/cluster/cluster.conf #cman 使用cluster.conf不再使用corosync.conf
<?xml version="1.0"?>
<cluster config_version="7" name="cluster">
<clusternodes>
<clusternode name="rhcs1-hb" nodeid="1">
<altname name="rhcs1"/>
</clusternode>
<clusternode name="rhcs2-hb" nodeid="2">
<altname name="rhcs2"/>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1">
<multicast addr="239.192.0.249"/>
<altmulticast addr="239.192.0.250"/>
</cman>
</cluster>
#service pacemaker start
#chkconfig pacemaker on
#chkconfig cman on
7.vertify status:
# corosync-cfgtool -s
Printing ring status.
Local node ID 1
RING ID 0
id = 192.168.56.101
status = ring 0 active with no faults
RING ID 1
id = 192.168.254.101
status = ring 1 active with no faults
# pcs status corosync
Nodeid Name
1 rhcs1-hb
2 rhcs2-hb
#ps axf
PID TTY STAT TIME COMMAND
...lots of processes...
1090 ? SLsl 0:01 corosync -f
1143 ? Ssl 0:00 fenced
1169 ? Ssl 0:00 dlm_controld
1216 ? Ssl 0:00 gfs_controld
1295 ? Ss 0:00 dbus-daemon --system
1306 ? SLsl 0:00 clvmd -T30 -I cman
1614 ? S 0:00 pacemakerd
1620 ? Ss 0:00 \_ /usr/libexec/pacemaker/cib
1621 ? Ss 0:00 \_ /usr/libexec/pacemaker/stonithd
1622 ? Ss 0:00 \_ /usr/libexec/pacemaker/lrmd
1623 ? Ss 0:00 \_ /usr/libexec/pacemaker/attrd
1624 ? Ss 0:00 \_ /usr/libexec/pacemaker/pengine
1625 ? Ss 0:00 \_ /usr/libexec/pacemaker/crmd
# pcs status
Last updated: Thu Jul 2 11:54:03 2015
Last change: Thu Jul 2 11:26:09 2015 via crm_resource on rhcs2-hb
Stack: cman
Current DC: rhcs1-hb - partition with quorum
Version: 1.1.8-7.el6-394e906
4 Nodes configured, 2 expected votes
3 Resources configured.
Online: [ rhcs1-hb rhcs2-hb ]
OFFLINE: [ rhcs1 rhcs2 ]
Full list of resources:
8.configure global parameter:
#pcs property set stonith-enabled=false
#pcs property set no-quorum-policy=ignore
#pcs resource rsc defaults resource-stickiness=100
9.create volume group:
#lvmconf --enable-cluster
#vi /etc/sysconfig/cluster
CLVMD_CLUSTER_IFACE=cman
#service clvmd start
#chkconfig clvmd on
#pvcreate /dev/sdb
#vgcreate -cy datavg /dev/sdb
#lvcreate -n datalv -L 1020M datavg
#vgchange -ay datavg
#mkfs.ext3 /dev/mapper/datavg-datalv
10.configure resource
#pcs resource create vip ocf:heartbeat:IPaddr2 \
ip=192.168.56.103 cidr_netmask=24 op monitor interval=30s
#pcs resource create datavg ocf:heartbeat:LVM volgrpname=datavg
#pcs resource create app-fs ocf:heartbeat:Filesystem \
device=/dev/mapper/datavg-datalv directory=/app fstype=ext3
#pcs resource group add app-group vip datavg app-fs
#pcs constraint order start datavg then start app-fs
#pcs constraint order stop app-fs then stop datavg
#crm_verify -L -V