设为首页 收藏本站
查看: 699|回复: 0

[经验分享] L8 heartbeat v2使用crm搭建wordpress

[复制链接]

尚未签到

发表于 2019-1-7 10:35:37 | 显示全部楼层 |阅读模式
一,阐述Linux HA Cluster的使用背景;

  HA简介
  1、高可用集群的定义
  高可用集群,英文原文为High Availability Cluster,简称HACluster,简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统 就是集群的节点(node)。
  高可用集群的出现是为了使集群的整体服务尽可能可用,从而减少由计算机硬件和软件易错性所带来的损失。如果某个节点失效,它的备援节点将在几秒钟的时间内接管它的职责。因此,对于用户而言,集群永远不会停机。
  高可用集群软件的主要作用就是实现故障检查和业务切换的自动化。只有两个节点的高可用集群又称为双机热备,即使用两台服务器互相备份。当一台服务器出现故障时,可由另一台服务器承担服务任务,从而在不需要人工干预的 情况下,自动保证系统能持续对外提供服务。双机热备只是高可用集群的一种,高可用集群系统更可以支持两个以上的节点,提供比双机热备更多、更高级的功能,更能满足用户不断出现的需求变化。
2、高可用集群的衡量标准  
  HA(High Available), 高可用性群集是通过系统的可靠性(reliability)和可维护性(maintainability)来度量的。工程上,通常用平均无故障时间(MTTF)来度量系统的可靠性,用平均维修时间(MTTR)来度量系统的可维护性。于是可用性被定义为:HA=MTTF/(MTTF+MTTR)*100%
  具体HA衡量标准:
99% 一年宕机时间不超过4天
  99.9% 一年宕机时间不超过10小时
  99.99% 一年宕机时间不超过1小时
  99.999% 一年宕机时间不超过6分钟
  二,总结Linux HA Cluster的系统组成,HA Cluster的工作模型;
  1,HA Cluster系统组成
  
  Messaging Layer:实现心跳信息传递、集群事务消息传递;
  heartbeat
  v1, v2, v3
  corosync
  cman (RedHat, RHCS)
  keepalived (完全不同上述三种)
  

  CRM:集群资源管理器;
  heartbeat v1 haresources (配置接口:配置文件,文件名为haresources)
  heartbeat v2 crm (在各节点运行一个crmd进程,配置接口:命令行客户端程序crmsh,GUI客户端:hb_gui);
  heartbeat v3, pacemaker (pacemaker可以以插件或独立方式运行;配置接口,CLI接口:crmsh, pcs; GUI: hawk(webgui), LCMC, pacemaker-mgmt);
  rgmanager (配置接口,CLI:clustat, cman_tool; GUI: Conga(luci+ricci))
  

  组合方式:
  heartbeat v1,自带haresources(v2版的crm)
  heartbeat v2,自带crm管理(图形化工具hb_gui安装包)
  heartbeat v3 + pacemaker
  corosync + pacemaker
  cman + rgmanager (RHCS)
  cman + pacemaker
  

  LRM: Local Resource Manager, 由CRM通过子程序提供;
  RA: Resouce Agent资源代理
  heartbeat legacy:heartbeat传统类型的RA,通常位于/etc/ha.d/haresources.d/目录下;
  LSB:Linux Standard Base, /etc/rc.d/init.d目录下的脚本,至少接受4个参数:{start|stop|restart|status};
  OCF:Open Cluster Framework
  子类别:provider
  STONITH:专用于实现调用STONITH设备功能的资源;通常为clone类型;
  

  Messaging Layer通告,CRM指挥LRM,LRM使用RA完成资源管理
  我们的一个DC决定,应该在某个节点上启用高可用服务,这个DC的CRM(通过选举的支配角色CRM),通过Messaging Layer传告给另一个节点的Messaging Layer,这个Messaging Layer再传递给CRM,CRM再指挥着LRM通过RA来完成资源管理。
  

  一些重要概念概述:
  通常我们需要讲多个资源通过约束来限制:web服务,我们需要,webip,webserver服务在同一主机,需要先启动webip再启动webserver,关闭也需要先关闭webserver再关闭webip。这里会使用到如下的资源约束
  vote system:投票系统

  HA中的各节点无法探测彼此的心跳信息时,必须无法协调工作;此种状态即为partitioned cluster;
  

  少数服从多数的原则:quorum
  with quorum > total/2
  without quorum  CREATE USER 'zkl'@'192.168.0.%' IDENTIFIED BY 'zkl';
  Query OK, 0 rows affected (0.31 sec)
  mysql> GRANT ALL ON *.* TO 'zkl'@'192.168.0.%';
  Query OK, 0 rows affected (0.11 sec)
  mysql>flush privileges;
  4,crm配置:图形化界面运行 hb_gui &(需要创建用户并设置密码)
  在需要运行的节点上:
  useradd hacluster
  echo "root"|passwd --stdin hacluster
  
  Resources资源配置:
  定义组资源:myservices
  组内添加资源,依照顺序:
  web网页ip地址:webip        IPaddr -->192.168.0.199 24 eth0
  httpd服务:        webserver    httpd -->httpd
  NFS共享挂载:    mysql_store    Filesystem-->device:192.168.0.202:/mydata/data directory: /mysql/data fstype:nfs
  mysql服务:        mysqld        mysqld

  Colocations配置:
  webserver依据webip规则

  mysqld服务依据mysql_store规则
  
  orders顺序约束配置:详情参考说明(Description)
  
  
  最后如下所示:
  

  5,wordpress配置(在活动节点node1)
  tar zxvf wordpress-4.3.1-zh_CN.tar.gz -C /var/www/html/
  打开网页http://192.168.0.199:/wordpress
  依据内容进行配置
  配置完成后:
  scp -r /var/www/html/wordpress 192.168.0.201:/var/www/html/
  

  6,测试
  node1发表文章,切换到node2也可以看到node1节点:发表文章如下:




  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660259-1-1.html 上篇帖子: 基于heartbeat V2 crm 的lamp高可用 下篇帖子: Heartbeat+DRBD构建高可用环境
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表