图形界面配置heartbeat高可用集群
修改ha.cf配置文件,启用crm功能,表示资源配置交给crm管理# vim /etc/ha.d/ha.cf
crm on
使用自带的ha_propagate脚本同步配置文件
# /usr/lib/heartbeat/ha_propagate 安装heartbeat-gui包
# rpm -ivhheartbeat-gui-2.1.4-12.el6.x86_64.rpm
# rpm -ivhheartbeat-gui-2.1.4-12.el6.x86_64.rpm 安装完成启动heartbeat服务
service heartbeat start;ssh node2 'serviceheartbeat start' 连接图形界面需要输入节点的用户名和密码,安装的时候自动建了一个hacluster的用户,设置密码就可以连接了。
# echo "hacluster" | passwd--stdin hacluster
# echo "hacluster" | passwd--stdin hacluster 输入hb_gui启动图形配置界面(使用的终端是Xmanager企业版,如果是CRT,putty是无法打开的)
说明:hb_gui打开默认显示英文,如果想设置成为中文需要修改语言环境LANG="zh_CN.GB18030"
http://s3.运维网.com/wyfs02/M02/6E/1F/wKioL1V0eUKjORayAAGFx7YFSJU487.jpg
打开后的界面
http://s3.运维网.com/wyfs02/M00/6E/1F/wKioL1V0e2rz8rXAAAJPXvB45nw409.jpg
添加新资源
新添加一个资源,资源类型选择普通资源
元素类型说明:
普通资源,资源组:定义资源类型
位置,顺序,协同:定义资源约束
http://s3.运维网.com/wyfs02/M01/6E/1F/wKioL1V0e6LgFOptAAKlhIsB_V4027.jpg
选择资源的详细设置
http://s3.运维网.com/wyfs02/M00/6E/1F/wKioL1V0eUWSMph4AAN6dTssYcY602.jpg
说明添加资源时,带required,unique是必选参数。
http://s3.运维网.com/wyfs02/M00/6E/23/wKiom1V0d6TzWmNcAADcRMgJugU793.jpg
资源添加完成
http://s3.运维网.com/wyfs02/M02/6E/23/wKiom1V0em3RhO1_AAJoOihoKvs131.jpg
启动资源
http://s3.运维网.com/wyfs02/M01/6E/1F/wKioL1V0eUfjfSFdAAJ7mPfOiWs952.jpg
登录node2查看资源启动
# ifconfig
eth0 Link encap:EthernetHWaddr00:0C:29:F1:DD:B2
inet addr:172.16.4.101 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::20c:29ff:fef1:ddb2/64 Scope:Link
UPBROADCAST RUNNING MULTICAST MTU:1500Metric:1
RXpackets:68754 errors:0 dropped:0 overruns:0 frame:0
TXpackets:22869 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RXbytes:16523275 (15.7 MiB)TXbytes:4286115 (4.0 MiB)
eth0:0 Link encap:EthernetHWaddr 00:0C:29:F1:DD:B2
inet addr:172.16.4.1 Bcast:172.16.255.255 Mask:255.255.0.0
UPBROADCAST RUNNING MULTICAST MTU:1500Metric:1
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UPLOOPBACK RUNNINGMTU:65536Metric:1
RXpackets:0 errors:0 dropped:0 overruns:0 frame:0
TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:0 (0.0 b)TX bytes:0 (0.0 b) 添加httpd资源
http://s3.运维网.com/wyfs02/M01/6E/23/wKiom1V0d6bxg2YOAALY5dB9gro635.jpg
添加web并启动后,发现web资源和vip资源在不同的节点这种情况是无法实现web高可用的。
http://s3.运维网.com/wyfs02/M02/6E/1F/wKioL1V0eUni5NT7AAKUwlJvakE984.jpg
这种情况的解决方法有两个一个是定义一个组资源,然后将这两个资源加入到同一个组,另一个是对这两个组定义约束。
设置web高可用
添加一个组资源,方便对资源进行约束
http://s3.运维网.com/wyfs02/M02/6E/23/wKiom1V0d6jTA6PqAABc7dJjqYY442.jpg
设置组名
http://s3.运维网.com/wyfs02/M00/6E/1F/wKioL1V0eUnBgQcIAACErmEX6bE366.jpg
建完组之后,需要建一个VIP资源
http://s3.运维网.com/wyfs02/M00/6E/23/wKiom1V0d6nge6lxAALbe2TKgrk263.jpg
添加Lsb的httpd资源
http://s3.运维网.com/wyfs02/M01/6E/1F/wKioL1V0eUyxH9IxAAK3NNUtIzQ330.jpg启动资源,由于两个资源在一个组内,所以实现了位置约束,都是在一个组内
http://s3.运维网.com/wyfs02/M01/6E/23/wKiom1V0d6zCH2-7AAJ6el9jE8s415.jpg
验证资源
# ifconfig eth0:0
eth0:0 Link encap:EthernetHWaddr00:0C:29:F1:DD:B2
inet addr:172.16.4.1 Bcast:172.16.255.255 Mask:255.255.0.0
UPBROADCAST RUNNING MULTICAST MTU:1500Metric:1
# netstat -lnt | grep :80
tcp 0 0 :::80 :::* LISTEN
资源限制条件
位置约束
定义资源优先运行在那一个节点
http://s3.运维网.com/wyfs02/M02/6E/1F/wKioL1V0eU3BAKPjAABl7YQVvjU595.jpg
定义表达式:节点名字如果是node1.xmfb.com那么就必须运行在这个节点
http://s3.运维网.com/wyfs02/M01/6E/1F/wKioL1V0eU-xzMpVAANc3tTc9kI970.jpg
顺序约束
定义资源启动的先后顺序
http://s3.运维网.com/wyfs02/M01/6E/23/wKiom1V0d66iwdFKAAFzlBxxya8345.jpg
协同约束
资源默认是平均分配到两个节点启动的,如果想让两个资源在同一个节点启动,有两种方法
(1) 将两个资源定义到同一个组
(2) 设置协同约束
http://s3.运维网.com/wyfs02/M02/6E/1F/wKioL1V0eVDA9uc4AADxorl01Ik023.jpg
在限制条件,协同新添加一个条件
http://s3.运维网.com/wyfs02/M02/6E/23/wKiom1V0d6-jx00pAAGf8CuIobM627.jpg
这个时候web和vip资源就运行在一起了
http://s3.运维网.com/wyfs02/M02/6E/23/wKiom1V0d6_zRJOeAAEOnFORF6s147.jpg
定义基于NFS的mariadb集群
需要的资源:
vip
Mariadb
共享存储(NFS)
NFS配置
NFS配置Mysql共享存储目录
# groupadd -r -g 306 mysql
# useradd -r -g 306 -u 306 mysql
# id mysql
uid=306(mysql) gid=306(mysql) =306(mysql)
# mkdir –p /mydata/data
# chown -R mysql.mysql /mydata/data/
# vim /etc/exports
/mydata/data 172.16.0.0/16(rw,no_root_squash) Node1配置
# mkdir /mydata
# groupadd -g 306 mysql
# useradd -g 306 -u 3306 -s/sbin/nologin -M mysql
# mount -t nfs 172.16.4.200:/mydata//mydata/ Node2配置
# mkdir /mydata
# groupadd -g 306 mysql
# useradd -g 306 -u 3306 -s/sbin/nologin -M mysql
# mount -t nfs 172.16.4.200:/mydata//mydata/Node1安装mariadb
安装并初始化
tar xf mariadb-5.5.43-linux-x86_64.tar.gz -C/usr/local/
cd /usr/local/
ln -sv mariadb-5.5.43-linux-x86_64/ mysql
cd mysql/
chown -R mysql:mysql .
scripts/mysql_install_db --user=mysql--datadir=/mydata/data/ 提供主配置文件
# cp support-files/my-large.cnf/etc/my.cnf
# vim /etc/my.cnf
thread_concurrency = 2
datadir = /mydata/data
innodb_file_per_table = 1 提供启动脚本
# cp support-files/mysql.server/etc/rc.d/init.d/mysqld
# chmod +x/etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld off 修改PATH环境变量
# echo "exportPATH=/usr/local/mysql/bin:$PATH" >> /etc/profile.d/mysql.sh
# . /etc/profile.d/mysql.sh 启动Mysql并且创建一个库
# service mysqld start
Starting MySQL....
# mysql
MariaDB [(none)]> create database mydb;
Query OK, 1 row affected (0.03 sec)
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.07 sec) 停止Mysql,卸载NFS
# service mysqld stop
# umount /mydata/Node2安装mariadb
Node2安装mariadb不需要挂载NFS
# umount /mydata/ 安装mariadb;注意这里不需要初始化
tar xf mariadb-5.5.43-linux-x86_64.tar.gz -C/usr/local/
cd /usr/local/
ln -sv mariadb-5.5.43-linux-x86_64/ mysql
cd mysql/
chown -R mysql:mysql . 把node1的配置文件和启动脚本复制到node2
# scp /etc/my.cnf node2:/etc/
# scp /etc/init.d/mysqldnode2:/etc/init.d/mysqld Node2节点添加mariadb启动脚本
# chkconfig --add mysqld
# chkconfig mysqld off 添加PATH环境变量
# echo "exportPATH=/usr/local/mysql/bin:$PATH" >> /etc/profile.d/mysql.sh
# . /etc/profile.d/mysql.sh 挂载NFS
# mount -t nfs 172.16.4.200:/mydata//mydata/ 启动mariadb,并且查看在node1创建的mydb数据库是否同步。
# service mysqld start
# mysql
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.01 sec) 停止mariadb服务,卸载NFS共享
# service mysqld stop
# umount /mydata/配置mariadb+NFS集群
创建组
http://s3.运维网.com/wyfs02/M00/6E/1F/wKioL1V0eVGBxKppAABUjRe8Lw4251.jpg
http://s3.运维网.com/wyfs02/M00/6E/23/wKiom1V0d7CTeVghAACHXxG2mRw196.jpg
创建虚拟VIP
http://s3.运维网.com/wyfs02/M00/6E/1F/wKioL1V0eVLiqhWHAAK4G5mkjrU404.jpg
添加NFS文件系统
http://s3.运维网.com/wyfs02/M01/6E/1F/wKioL1V0eVOyBxyzAALPGA_rXTw927.jpg
添加mariadb,这里选择mysqld
http://s3.运维网.com/wyfs02/M01/6E/23/wKiom1V0d7KA6OFUAAJvDMNYqLg213.jpg
启动HA_Mariadb组资源,资源自动运行在node2节点
http://s3.运维网.com/wyfs02/M02/6E/1F/wKioL1V0eVSzvYxsAAEP8rlOu78091.jpg
验证mariadb高可用集群
查看资源启动
# ifconfig eth0:0
eth0:0 Link encap:EthernetHWaddr00:0C:29:F1:DD:B2
inet addr:172.16.4.1 Bcast:172.16.4.255 Mask:255.255.255.0
UPBROADCAST RUNNING MULTICAST MTU:1500Metric:1
# netstat -lnt | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
# mount | grep /mydata
172.16.4.200:/mydata on /mydata type nfs(rw,vers=4,addr=172.16.4.200,clientaddr=172.16.4.1) 将node2节点设置为备用之后,资源可以正常转移到node1节点
http://s3.运维网.com/wyfs02/M02/6E/23/wKiom1V0d7OBFDftAAEXiUnRxtY224.jpg
页:
[1]