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

[经验分享] 基于heartbeat V2 crm 的lamp高可用

[复制链接]

尚未签到

发表于 2019-1-7 10:33:46 | 显示全部楼层 |阅读模式


实验环境:
    虚拟机ha1:192.168.61.130
     虚拟机ha2:192.168.61.132
     虚拟机nfsserver:192.168.61.136
     vip:192.168.61.100
目的:
    使用heartbeat V2 crm(hb_gui)实现lamp+nfs+wordpress的高可用.
为了实验简便,lamp环境直接用yum配置,配置好的mysql数据库存放位置再重新挂载到nfs

注意事项:
  (a) .节点间时间必须同步:使用ntp协议实现;
            服务端/etc/ntp.conf供参考:
       driftfile /var/lib/ntp/drift
       restrict-6 default kod nomodify notrap nopeer noquery
       restrict  127.0.0.1
       restrict -6 ::1
       restrict 192.168.61.0 mask 255.255.255.0 nomodify
       restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust
       server 127.127.1.0
       fudge 127.127.1.0 stratum 8
       server 220.130.158.71 prefer
       server 220.130.158.51
       includefile /etc/ntp/crypto/pw
            keys /etc/ntp/keys
  
           注意:设置重启服务后一定要等10-15分钟再尝试同步,命令:ntpdata 主机名,对比两
               机时间是否同步命令:data;ssh 192.168.61.130 ‘data’
  
    (b) .节点间需要通过主机名互相通信,必须解析主机至IP地址;
            (1) 建议名称解析功能使用hosts文件来实现;           
            (2) 通信中使用的名字与节点名字必须保持一致:“uname -n”命令,或“hostname”展示出的名字
               保持一致;
                       
         (c) .建立各节点之间的root用户能够基于密钥认证;
             # ssh-keygen -t rsa -P ''
             #ssh-copy-id -i /root/.ssh/id_rsa.pub root@HOSTNAME
                       
         (d) .一定要确保SELINUX关闭,iptables清空
   注意:定义成为集群服务中的资源,一定不能开机自动启动;因为它们将由crm管理;

nfsserver设置共享存储
    1. 建立mysql数据库存储目录:
        mkdir /mysqldata
        mkdir /wordpress
     2. 发布:
        vim /etc/exports添加
        /mysqldata192.168.61.0/24(rw,no_root_sqlash)
        /wordpress192.168.61.0/24(rw,no_root_sqlash)
     3. 启动nfs:
        service nfs start

ha1配置
    1. yum -y install php php-mysqlmysql-server mysql

        安装后的php配置文件(yum 安装的php默认用插件模式):
        /etc/httpd/conf.d/php.conf
        
        安装后的mysql:
        /var/lib/mysql/  默认的数据库文件存放位置

        servicemysqld start
        servicehttpd start

    2.测试php:
        (a). vim/var/www/html/index.php
            添加一下内容:
            
        (b). 浏览网页http://localhost/index.php 显示php状态信息即为成功安装

    3.测试mysql
        输入mysql -u root登陆,顺便修改密码,这里为123456
        SET PASSWORDFOR 'root'@'localhost'=PASSWORD('123456');

    4.转移mysql数据库到nfs

        (a).先停止数据库服务
            servicemysqld stop

        (b).复制原有数据库信息到nfs
            scp -r/var/lib/mysql/* 192.168.61.136:/mysqldata

        (c).删除原有数据库信息
            rm -rf/var/lib/mysql/*

        (d).挂载nfs
            mount -tnfs 192.168.61.136:/mysqldata /var/lib/mysql/
        
        (e).修改权限
            chown -Rmysql:mysql /var/lib/mysql/*

        (f).重新启动mysql服务测试
            servicemysqld start

    5.安装wordpress
        (a).先挂载mount -t nfs 192.168.61.136:/wordpress/var/www/html/

        (b).下载wordpress-4.3.1-zh_CN.tar解压到/var/www/html

        (c).登陆mysql增加wordpress数据库和用户wordpress,密码123456
            mysql -uroot -p
            createdatabase wordpress;
            GRANTALL ON *.* TO wordpress@'127.0.0.1' IDENTIFIED BY '123456';
        (d).浏览器运行http://localhost/wp-admin/install.php安装

            可能会提示以下错误


  把内容复制下来,手动创建wp-config.php就可以了
   再按要求填写一些信息, 安装成功

            

    6.安装heartbeat V2
     (a).先安装epel源,系统源没有libnet
  wget ftp://ftp.pbone.net/mirror/dl.iuscommunity.org/pub/ius/archive/Redhat/6/i386/epel-release-6-5.noarch.rpm
         rpm -ivh epel-release-6-5.noarch.rpm
        
       (b).安装依赖包:
        yuminstall net-snmp-libs libnet PyXML
        rpm-ivh heartbeat-2.1.4-12.el6.x86_64.rpm
          heartbeat-pils-2.1.4-12.el6.x86_64.rpm         
        heartbeat-stonith-2.1.4-12.el6.x86_64.rpm         
          heartbeat-gui-2.1.4-12.el6.x86_64.rpm
        
        (c).编辑ha.cf 文件
              vim /etc/ha.cf内容如下:
              crm on #开启crm,同时会自动禁用haresources
              logfacility local0#日志使用rsyslog中local0设定
              keepalive 1 #监听频率,每1秒
              deadtime 3 #死亡判断时间
              warntime 2 #异常警告时间
              mcast eth0 225.0.0.1 694 1 0 #组播地址设定
              auto_failback on #修复后自动上线
              node    ha1 #节点设置
              node    ha2#节点设置
              ping 192.168.61.2 #第三方仲裁设定

        (d).编辑authkeys文件
              auth 2
              #1 crc
              2 sha1HI! #密钥短语越长越随机越好
              #3 md5Hello!


ha2配置

    1.安装heartbeat V2
        (a).先安装epel源,系统源没有libnet
wget ftp://ftp.pbone.net/mirror/dl.iuscommunity.org/pub/ius/archive/Redhat/6/i386/epel-release-6-5.noarch.rpm
          rpm -ivh epel-release-6-5.noarch.rpm
        
        (b).安装依赖包:
        yuminstall net-snmp-libs libnet PyXML
        rpm-ivh heartbeat-2.1.4-12.el6.x86_64.rpm
          heartbeat-pils-2.1.4-12.el6.x86_64.rpm           
          heartbeat-stonith-2.1.4-12.el6.x86_64.rpm
          heartbeat-gui-2.1.4-12.el6.x86_64.rpm
        
        (c).编辑ha.cf 文件
             vim /etc/ha.cf内容如下:
             crm on #开启crm,同时会自动禁用haresources
             logfacility local0 #日志使用rsyslog中local0设定
             keepalive1 #监听频率,每1秒
             deadtime3 #死亡判断时间
             warntime2 #异常警告时间
             mcasteth0 225.0.0.1 694 1 0 #组播地址设定
             auto_failbackon #修复后自动上线
             node    ha1 #节点设置
             node    ha2 #节点设置
             ping192.168.61.2 #第三方仲裁设定

        (d).编辑authkeys文件
             auth 2
             #1 crc
             2 sha1HI! #密钥短语越长越随机越好
             #3 md5Hello!


    2. yum -y installphp php-mysql mysql-server mysql

        安装后的php配置文件(yum 安装的php默认用插件模式):
        /etc/httpd/conf.d/php.conf
        里面有 /usr/lib64/httpd/modules/libphp5.so 模块文件

        安装后的mysql:
        /var/lib/mysql/  默认的数据库文件存放位置

        servicemysqld start
        mysql -uroot -p 登陆一次,查看数据库是否正确
        servicehttpd start

    3.测试php:
    浏览网页http://localhost/index.php 显示wordpress,可以登陆留言即正常

    4. 运行hb_gui设置资源
  hb_gui需要一个特定用户登录到hb_gui上操作,/etc/passwd下的hacluster,我们必须为它添加密码,
  因为它不允许空密码登录。
  echo "123456" |passwd --stdinhacluster  每个需要运行hb_gui的节点都需要设置。

        输入 hb_gui & 运行
   

    添加资源:
         先添加一个组webservice,按顺序把vip,nfs,mysqld,httpd添加进去










      然后分别启动ha1和ha2的heartbeat:
         serviceheartbeat start
在其中一台启动hb_gui就可以看到当前的节点和资源的分配。其中一台故障,资源都会自动切换到另一台,wordpress访问实现高可用




  





运维网声明 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-660258-1-1.html 上篇帖子: DRBD+Heartbeat+NFS配置高可用性网络(1) 下篇帖子: L8 heartbeat v2使用crm搭建wordpress
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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