您的位置:首页 > Web前端

IBM x3650M3+GFS+IPMI fence生产环境配置一例

2014-08-25 23:57 190 查看

一、环境介绍与说明

1. 操作系统及网络环境准备

两台IBM X3650M3, 一台DS3400光纤存储。
操作系统: CentOS 5.9 x64,安装有图形界面,开发包,开发库,老的软件开发工具。
为了避免环境干扰,关闭selinux, 关闭防火墙,本文出自:http://koumm.blog.51cto.com
Haproxy+Keepalived+Jboss集群实施架构一例是在本文基础上延伸。

1) 节点1规划及网络情况如下:

说明:IBM服务器采用ipmi lan方式实现内部fence设备,需要将专用IMM2口或标注有SYSTEM MGMT网口接入交换机, 与本地IP地址同段。
主机名: node1
ipmi地址: 10.10.10.85/24
eth1: 192.168.233.83/24
eth1:0 10.10.10.87/24

2) 节点1规划及网络情况如下:

IBM服务器需要将专用IMM2口或标注有SYSTEM MGMT网口接入交换机。
主机名: node2
ipmi地址: 10.10.10.86/24
eth1: 192.168.233.84/24
eth1:0 10.10.10.88/24

3)node1, node2 hosts文件配置

# cat /etc/hosts
192.168.233.83 node1
192.168.233.84 node2
192.168.233.90 vip
10.10.10.85 node1_ipmi
10.10.10.86 node2_ipmi

2. 配置YUM安装源

(1) node1, node2 挂载光盘或ISO, 两节点上都需要配置。

# mount /dev/cdrom /mnt
# mount -o loop centos59.iso /mnt

(2) 配置YUM客户端

说明: 通过本地光盘做为yum安装源。
# vi /etc/yum.repos.d/centos59.repo
[centos59]
name=Centos59
baseurl=file:///mnt/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

3. Ipmi口的配置安装ipmi工具, IP地址也可以通过BIOS中进行配置

(1) 检查主机是否有相关IPMI硬件支持

[root@node1 ~]# dmidecode |grep -C 6 IPMI |tail -n 7
IPMI Device Information
Interface Type: KCS (Keyboard Control Style)
Specification Version: 2.0
I2C Slave Address: 0x10
NV Storage Device: Not Present
Base Address: 0x0000000000000CA2 (I/O)
Register Spacing: Successive Byte Boundaries

(2) 安装ipmi管理工具

# yum install OpenIPMI OpenIPMI-devel OpenIPMI-tools OpenIPMI-libs
# service ipmi start
# chkconfig ipmi on

(3) 进行IPMI的基本网络配置:以下指令分别配置了IP地址、掩码、网关、允许进入开关。

node1,node2 IPMI接口IP配置
原始IPMI地址配置如下:



node1 IPMI接口IP配置




node2 IPMI接口IP配置

ipmitool lan set 1 ipaddr 10.10.10.86
ipmitool lan set 1 netmask 255.255.255.0
#ipmitool lan set 1 defgw ipaddr 10.10.10.254
ipmitool lan set 1 access on
ipmitool lan print 1

(3)开启默认用户、设置默认密码:

# 显示当前用户列表
ipmitool user list 1
ipmitool user set password 2 passwd
说明:2为用户UID,这里使用IBM默认用户名与密码USERID/PASSW0RD

(4) 测试IMPI,在服务器上配置好IPMI后,测试ipmi地址。

查看本机状态
[root@node1 ~]# ipmitool -H 10.10.10.85 -U USERID -P PASSW0RD power status
Chassis Power is on
查看节点2状态
[root@node1 ~]# ipmitool -H 10.10.10.86 -U USERID -P PASSW0RD power status
Chassis Power is on
远程重启节点2服务器
[root@node1 ~]# ipmitool -H 10.10.10.86 -U USERID -P PASSW0RD power reset
Chassis Power is on
正常返回结果会是:Chassis Power is on
其它测试命令如开机,关机,重启,如下命令可以用于远程管理。
ipmitool -H 10.10.10.86 -U USERID -P PASSW0RD power on
ipmitool -H 10.10.10.86 -U USERID -P PASSW0RD power off
ipmitool -H 10.10.10.86 -U USERID -P PASSW0RD power reset

二、挂载IBM DS3412光纤存储

1. 查看HBA的WWN号码,查看有多少块HBA

node1, node2 挂载了一个1TB的磁盘, 集群文件系统,100M仲裁盘
node1上WWN号查看,HBA卡安装卡槽位置随各机而异。
cat /sys/class/fc_host/host5/port_name
0x10000000c9a55a09
node2上WWN号查看
cat /sys/class/fc_host/host5/port_name
0x10000000c9a56308

2. 划分存储并挂载

1)解压IBM存储管理软件

本文采用IBM DS3400存储带内管理方式连接IBM存储,全程远程配置。
# tar zxvf SM10.70_Linux_Single-10.70.x5.25.tgz
# cd Linux10p70_single
# cd Linux/
# ls
SMagent-LINUX-10.02.A5.08-1.i386.rpm SMesm-LINUX-10.70.G5.07-1.noarch.rpm SMutil-LINUX-10.00.A5.16-1.i386.rpm
SMclient-LINUX-10.70.G5.25-1.noarch.rpm SMruntime-LINUX-10.70.A5.00-1.i586.rpm
#

2)安装管理软件包,客户端会自动安装在/opt/IBM_DS目录下面。

# rpm -ivh SMclient-LINUX-10.70.G5.25-1.noarch.rpm SMruntime-LINUX-10.70.A5.00-1.i586.rpm SMesm-LINUX-10.70.G5.07-1.noarch.rpm
Preparing... ########################################### [100%]
1:SMesm ########################################### [ 33%]
2:SMruntime ########################################### [ 67%]
3:SMclient ########################################### [100%]
SMmonitor started.
#

3)直接启动带内管理监控程序

# cd /opt/IBM_DS/agent



#

4)启动存储客户端连接存储进行配置管理(图形界面,可开启VNC进行配置),终端窗口中操作如下。

# cd /opt/IBM_DS/client
# ./SMclient



3. node1,node2分别安装rdac多路径软件包

(1) 编译安装rdac软件包

# rdac-LINUX-09.03.0C05.0652-source.tar
# tar zxvf rdac-LINUX-09.03.0C05.0331-source.tar.gz
# chmod -R +x /tmp/linuxrdac-09.03.0C05.0331
# cd linuxrdac-09.03.0C05.0652
# make clean
# make
# make install

(2) 更改启动文件





(3)重启服务器

# reboot

三、RHCS软件包的安装

192.168.233.83 node1 (管理机)
192.168.233.84 node2

1. 在node1上安装luci及RHCS软件包

安装 ricci、rgmanager、gfs、cman

(1) node1(管理节点)安装RHCS软件包,luci是管理端软件包,只在管理端安装。

yum install luci ricci cman cman-devel gfs2-utils rgmanager system-config-cluster -y

(2) 配置RHCS服务开机启动

chkconfig luci on
chkconfig ricci on
chkconfig rgmanager on
chkconfig cman on
service rgmanager start
service ricci start
service cman start
[root@node1 cluster]# service cman start
Starting cluster:
Loading modules... done
Mounting configfs... done
Starting ccsd... done
Starting cman... failed
/usr/sbin/cman_tool: ccsd is not running
[FAILED]

2. 在node2 上安装RHCS软件包

(1) node2安装RHCS软件包

yum install ricci cman cman-devel gfs2-utils rgmanager system-config-cluster -y

(2) 配置RHCS服务开机启动

chkconfig ricci on
chkconfig rgmanager on
chkconfig cman on
service rgmanager start
service ricci start
service cman start
[root@node2 cluster]# service cman start
Starting cluster:
Loading modules... done
Mounting configfs... done
Starting ccsd... done
Starting cman... failed
/usr/sbin/cman_tool: ccsd is not running
[FAILED]
***************************************
Starting cluster:
Loading modules... failed
FATAL: Module lock_dlm not found. [FAILED]
这是因为还没有加入集群没有产生配置文件/etc/cluster/cluster.conf
***************************************
配置故障一例:因手动指定多播地址,造成集群节点之后无法通迅。
Aug 20 14:55:17 node1 ccsd[9977]: Cluster is not quorate. Refusing connection.
Aug 20 14:55:17 node1 ccsd[9977]: Error while processing connect: Connection refused
Aug 20 14:55:17 node1 ccsd[9977]: Cluster is not quorate. Refusing connection.
Aug 20 14:55:17 node1 ccsd[9977]: Error while processing connect: Connection refused
***************************************

四、RHCS集群管理端配置

1. 在node1管理节点上安装启动luci服务

说明:在管理节点上进行操作。

(1) luci初始化

# luci_admin init
Initializing the luci server
Creating the 'admin' user
Enter password:
Confirm password:
Please wait...
The admin password has been successfully set.
Generating SSL certificates...
The luci server has been successfully initialized

(2) 启动luci服务

# service luci start

(3) 配置管理地址

https://192.168.233.83:8084
admin/111111

五、RHCS集群配置

1. 添加集群

登录进管理界面,点击cluster->Create a New Cluster->填入如下内容:
Cluster Name: rhcs
node1 密码
node2 密码
选中如下选项,然后提交,集群会经过install,reboot,config,join两步过程才能成功。
Use locally installed packages.
Enable shared storage support
check if node passwords are identical
说明:
(1) 这步会生成集群配置文件/etc/cluster/cluster.conf
(2) 也可以直接创建该配置文件。

2. 两节点分别启动集群服务

分别ssh到 node1,node2上,再次启动cman服务。



3. 添加fence设备

说明:
RHCS要实现完整的集群功能,必须要实现fence功能。
正是由于有了fence设备可以使用,才得以完整测试RHCS HA功能。
(1)登录进管理界面,点击cluster-> Cluster List->
(2)分别选择node1,node2进行如下操作:
(3)选择"Add a fence device to this level",选择IPMI LAN。



4. 添加Failover Domains 故障转移域

Failover Domains -> Add
名字:rhcs_failover
勾选Prioritized,
No Failback具体情况自己设定;
勾选两台节点,
设定其优先级。
点击提交。

5. 配置GFS服务

(1) GFS服务配置




(2) 在任意一节点对磁盘进行分区,划分出sdb1。然后格式化成gfs2.

node1节点上:



node2节点上:直接在节点2上就看到了LVM配置信息



(3) 格式化GFS文件系统

node1节点上,只用在一个节点上操作就可以了。



说明:
rhcs:gfs2这个rhcs就是集群的名字,gfs2是定义的名字,相当于标签吧。
-j是指定挂载这个文件系统的主机个数。

6. 挂载GFS文件系统

node1,node2 上创建GFS挂载点
# mkdir /cluster

(1)node1,node2手动挂载测试,挂载成功后,创建文件测试集群文件系统情况。

# mount.gfs2 /dev/vg/cluster /cluster

(2)node1,node2配置开机自动挂载

# vi /etc/fstab
/dev/mapper/vg-cluster /cluster gfs2 defaults 0 0

(3) node1查看挂载情况

[root@node1 ~]# mkdir /cluster
[root@node1 ~]# mount.gfs2 /dev/vg/cluster /cluster
[root@node1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
107G 9.2G 93G 10% /
/dev/sda1 99M 17M 77M 18% /boot
tmpfs 12G 0 12G 0% /dev/shm
/dev/mapper/vg-cluster
1.0T 389M 1.0T 1% /cluster
[root@node1 ~]#

(4) node2查看挂载情况:

[root@node2 ~]# mount.gfs2 /dev/vg/cluster /cluster
[root@node2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
107G 9.2G 93G 10% /
/dev/sda1 99M 17M 77M 18% /boot
tmpfs 12G 0 12G 0% /dev/shm
/dev/mapper/vg-cluster
1.0T 389M 1.0T 1% /cluster
[root@node2 ~]#

7. 配置表决磁盘

说明:
#表决磁盘是共享磁盘,无需要太大,本例采用/dev/sdc1 100M来进行创建。
[root@node1 ~]# fdisk -l
Disk /dev/sda: 145.9 GB, 145999527936 bytes
255 heads, 63 sectors/track, 17750 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 17750 142472452+ 8e Linux LVM
Disk /dev/sdb: 1099.5 GB, 1099511627776 bytes
255 heads, 63 sectors/track, 133674 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 133674 1073736373+ 8e Linux LVM
Disk /dev/sdc: 104 MB, 104857600 bytes
4 heads, 50 sectors/track, 1024 cylinders
Units = cylinders of 200 * 512 = 102400 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 1 1024 102375 83 Linux
[root@node1 ~]#

(1) 创建表决磁盘, 只在节点1上进行操作。




(2) 查看表决磁盘信息

1) node1节点1上查看表决磁盘信息

[root@node1 ~]# mkqdisk -L
mkqdisk v0.6.0
/dev/disk/by-id/scsi-3600a0b80007573a5000006f153e7e43c-part1:
/dev/sdc1:
Magic: eb7a62c2
Label: qdisk
Created: Tue Aug 19 22:09:48 2014
Host: node1
Kernel Sector Size: 512
Recorded Sector Size: 512
[root@node1 ~]#

2) node2节点1上查看表决磁盘信息

[root@node2 cluster]# mkqdisk -L
mkqdisk v0.6.0
/dev/disk/by-id/scsi-3600a0b80007573a5000006f153e7e43c-part1:
/dev/sdc1:
Magic: eb7a62c2
Label: qdisk
Created: Tue Aug 19 22:09:48 2014
Host: node1
Kernel Sector Size: 512
Recorded Sector Size: 512
[root@node2 cluster]#

(3) 配置表决磁盘qdisk,IP通常采用网关地址,要能够ping通,一定要注意网关是否禁ping。

# 进入管理界面 cluster-> cluster list -> 点击Cluster Name: rhcs;
# 选择"Quorum Partition",选择"use a Quorum Partition"
interval : 2
votes : 2
TKO : 10
Minimum Score: 1
Device : /dev/sdc1
Path to program : ping -c3 -t2 192.168.233.254
Interval : 3
Score : 2
# 点击apply

(4) node1, node2上启动qdisk服务

chkconfig qdiskd on
service qdiskd start

1) node1节点1上查看集群




2) node2节点1上查看集群




8. 集群配置文件如下:

<?xml version="1.0"?>
<cluster alias="rhcs" config_version="12" name="rhcs">
<fence_daemon clean_start="0" post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="node2" nodeid="1" votes="1">
<fence>
<method name="1">
<device name="node2_ipmi"/>
</method>
</fence>
</clusternode>
<clusternode name="node1" nodeid="2" votes="1">
<fence>
<method name="1">
<device name="node1_ipmi"/>
</method>
</fence>
</clusternode>
</clusternodes>
<fencedevices>
<fencedevice agent="fence_ipmilan" auth="PASSWORD" ipaddr="10.10.10.85" login="USERID" name="node1_ipmi" passwd="PASSW0RD"/>
<fencedevice agent="fence_ipmilan" auth="PASSWORD" ipaddr="10.10.10.86" login="USERID" name="node2_ipmi" passwd="PASSW0RD"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="rhcs_failover" nofailback="0" ordered="1" restricted="0">
<failoverdomainnode name="node2" priority="2"/>
<failoverdomainnode name="node1" priority="1"/>
</failoverdomain>
</failoverdomains>
<resources/>
</rm>
<quorumd device="/dev/sdc1" interval="2" min_score="1" tko="10" votes="2">
<heuristic interval="3" program="ping -c3 -t2 192.168.233.254" score="2"/>
</quorumd>
<cman expected_votes="4"/>
</cluster>

本文出自 “koumm的linux技术博客” 博客,请务必保留此出处http://koumm.blog.51cto.com/703525/1544971
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: