高可用性Linux集群构建.docx
《高可用性Linux集群构建.docx》由会员分享,可在线阅读,更多相关《高可用性Linux集群构建.docx(10页珍藏版)》请在冰豆网上搜索。
高可用性Linux集群构建
目录
Pacemaker,Corosync和PCS搭建高可用性负载均衡Linux集群1
1.高可用性的概念:
1
2.构建环境2
3.构建步骤3
3.1安装pacemaker,corosync和pcs3
3.2设置hostname3
3.3修改/etc/hosts,增加以下两行3
3.4修改防火墙设置,打开2224和80端口3
3.5给hacluster用户设置密码,这个是pcs管理的用户。
3
3.6设置pcsd自动启动3
3.7把所有以上步骤在node2机器上运行一次,注意第二步hostname为node24
3.8添加集群节点(可以运行在node1或者node2任意一台机器,不用重复运行)4
3.9安装httpd(下一步替换Nignx)4
3.10修改httpd配置文件4
3.11设置httpd自动启动4
3.12写一个简单html5
3.13在node2上重复3.9-3.12步,注意第上一步的node名称5
3.14添加集群约束5
3.15设置集群开机自动启动5
3.16在node2上重复3.15.6
4.验证集群6
4.1打开浏览器访问http:
//172.25.73.1206
5.集群管理工具Pcs7
Pacemaker,Corosync和PCS搭建高可用性负载均衡Linux集群
1.高可用性的概念:
●一种机制来定义哪些系统可以被用作集群节点
●哪些服务或者应用可以在节点间作失效切换(fail-over)
●节点间内部相互通信的方式
●当失效的节点控制相同的集群资源的情况下,防止资源的冲突
●防止集群裂脑(split-brain)发生
●Fence机制或者更加复杂的I/Ofence机制
●提供集群合作管理的机制
2.构建环境
本文档的构架环境是用的2台VirtualBox虚拟机,安装的CentOS764位操作系统。
机器名称:
node1
IP:
172.25.73.198
机器名称:
node2
IP:
172.25.73.118
3.构建步骤
3.1安装pacemaker,corosync和pcs
root@node1>yum-yinstallcorosyncpacemakerpcs
3.2设置hostname
root@node1>hostnamectlset-hostnamenode1
3.3修改/etc/hosts,增加以下两行
172.25.73.198node1
172.25.73.118node2
3.4修改防火墙设置,打开2224和80端口
root@node1>firewall-cmd--permanent--add-service=high-availability
root@node1>firewall-cmd--add-service=high-availability
root@node1>firewall-cmd--permanent--add-service=http
root@node1>firewall-cmd--add-service=http
root@node1>systemctlstopfirewalld
root@node1>systemctlstartfirewalld
3.5给hacluster用户设置密码,这个是pcs管理的用户。
root@node1>passwdhacluster
3.6设置pcsd自动启动
root@node1>systemctlstartpcsd
3.7把所有以上步骤在node2机器上运行一次,注意第二步hostname为node2
3.8添加集群节点(可以运行在node1或者node2任意一台机器,不用重复运行)
root@node1>pcsclusterauthnode1node2
root@node1>pcsclustersetup--namecluster_webnode1node2
root@node1>pcsclusterstart--all
root@node1>pcspropertysetstonith-enabled=false
root@node1>pcspropertysetno-quorum-policy=ignore
root@node1>pcsresourcecreatevirtual_ipocf:
heartbeat:
IPaddr2ip=172.25.73.120cidr_netmask=32opmonitorinterval=30s
3.9安装httpd(下一步替换Nignx)
root@node1>pyuminstallhttpd
3.10修改httpd配置文件
root@node1>echo"Listen172.25.73.120:
80"|sudotee--append/etc/httpd/conf/httpd.conf
root@node1>touch/etc/httpd/conf.d/serverstatus.conf
root@node1>vi/etc/httpd/conf.d/serverstatus.conf
输入以下内容:
Listen127.0.0.1:
80
SetHandlerserver-status
Orderdeny,allow
Denyfromall
Allowfrom127.0.0.1
3.11设置httpd自动启动
root@node1>systemctlrestarthttpd
3.12写一个简单html
root@node1>vi/var/www/html/index.html
输入以下内容:
node01
3.13在node2上重复3.9-3.12步,注意第上一步的node名称
3.14添加集群约束
root@node1>pcsresourcecreatewebserverocf:
heartbeat:
apacheconfigfile=/etc/httpd/conf/httpd.confstatusurl="http:
//localhost/server-status"opmonitorinterval=1min
root@node1>pcsconstraintcolocationaddwebservervirtual_ipINFINITY
root@node1>pcsconstraintordervirtual_ipthenwebserver
root@node1>pcsconstraintlocationwebserverprefersnode01=60
root@node1>pcsclusterstop--all&&sudopcsclusterstart--all
3.15设置集群开机自动启动
root@node1>sudosystemctlenablepcsd
root@node1>sudosystemctlenablecorosync
root@node1>sudosystemctlenablepacemaker
3.16在node2上重复3.15.
4.验证集群
4.1打开浏览器访问http:
//172.25.73.120
4.2停止node1,集群会failover到node2
[jensd@node01~]$sudopcsclusterstopnode01
node01:
StoppingCluster...
刷新浏览器后结果如下:
5.集群管理工具Pcs
5.1PCSWeb客户端
打开浏览器:
https:
//172.25.73.118:
2224/(使用node1或者node2的IP)
用户名:
hacluster
密码:
3.5设置的密码
5.2导入Cluster,输入一个节点名称或者IP即可
5.3管理集群
5.3.1节点管理
在Node界面可以启动、停止、重启节点
5.3.2集群资源管理
5.3.3栅(Fencen)隔离策略
5.3.3集群配置