zoukankan      html  css  js  c++  java
  • heartbeat集群安装配置

    安装配置高可用集群需要注意:
    1、节点名称:集群每个节点的名称都得能互相解析
    /etc/hosts
    hosts主机名的正反解析结果必须跟"uname -n"的结果保持一致
    2、时间必须的同步
    使用网络时间服务器同步
    3、并非必须:各节点间能基于ssh秘钥认证通信

    heartbeat V2版本环境测试

    环境准备节点两个
    node1:10.10.10.202
    node2:10.10.10.203
    系统环境CentOS release 6.5 (Final)
    1、建立双机互信
    node1:
    ssh-keygen -t rsa -P ""
    ssh-copy-id -i .ssh/id_rsa.pub root@node2

    node2:
    ssh-keygen -t rsa -P ""
    ssh-copy-id -i .ssh/id_rsa.pub root@node1

    2、添加定时任务,每五分钟同步一次时间
    node1:
    */5 * * * * /usr/sbin/ntpdate 192.168.1.203 &> /dev/null
    node2:
    */5 * * * * /usr/sbin/ntpdate 192.168.1.203 &> /dev/null
    或者:
    ansible webserver -m cron -a "name='heartbeat' job='/usr/sbin/ntpdate 192.168.1.203 &> /dev/null' minute=5"

    3、安装依赖的包
    yum -y install perl-TimeDate PyXML libnet net-snmp-libs gettext

    4、安装heartbeat组件
    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

    5、复制heartbeat的配置文件到/etc/ha.d/目录中
    cp /usr/share/doc/heartbeat-2.1.4/{ha.cf,haresources,authkeys} /etc/ha.d/

    6、修改认证的配置文件
    vim authkeys
    auth 1 #认证方式
    1 sha1 fansik #认证密码
    chmod 600 authkeys #修改权限为600否则服务无法启动

    7、修改主配置文件
    vim ha.cf
    logfile /var/log/ha-log
    keepalive 1 #多少秒探测一次
    deadtime 10 #多久后判定节点挂掉了
    warntime 5 #多久提示一次
    udpport 694 #监听的宽口
    bcast eth0 #探测的网卡接口
    auto_failback on #上线后自动转回
    initdead 120 #第一次上线时的等待时间
    node node1
    node node2
    ping 10.10.10.201
    compression bz2 #心跳信息的压缩算法
    compression_threshold 2 #多大的数据包才压缩,表示大于2k的数据包要压缩

    8、配置资源
    vim haresources
    node1 10.10.10.250/24/eth0 httpd

    9、复制到从节点上一份儿
    scp -p authkeys haresources ha.cf node2:/etc/ha.d/

    10、启动heartbeat的服务
    ansible webserver -m shell -a "/etc/init.d/heartbeat start"

    11、配置nfs是httpd使用公用资源
    使用node3作为nfs服务器:
    mkdir -pv /www/fansik
    /www/fansik 10.10.10.0/24(rw)
    setfacl -m u:apache:rwx /www/fansik
    /etc/init.d/rpcbind start
    /etc/init.d/nfs start
    node1
    node1 10.10.10.250/24/eth0 Filesystem::10.10.10.204:/www/fansik::/var/www/html::nfs httpd
    scp haresources node2:/etc/ha.d/

    12、HA集群的工作模型:
    A/P:two nodes,工作与主备模型;
    N-M:N>M,N个节点,M个服务;活动节点为N,备用N-M个
    N-N:N个节点,N个服务;
    A-A:双主模型;

    13、集群资源管理器
    haresources
    crm
    pacemaker:
    资源粘性:如果所有
    资源约束(3种约束):
    位置约束:资源更倾向于哪个节点上;
    inf:无穷大
    n:
    -n:
    -inf:负无穷,只要有其他任何一个节点在就不会选在该节点
    排列约束:资源运行在同一节点的倾向性;
    inf:
    -inf:
    顺序约束:资源启动次序及关闭次序
    rgmanager(红帽RHCS中的组件):failover domain(故障转移域)

    14、heartbeatv2使用crm(xml方式的配置)资源管理器的方式配置
    crm文件保存位置/var/lib/heartbeat/crm的目录下
    /usr/lib64/heartbeat/haresources2cib.py将haresources(v1版的配置)文件转换成cib方式
    编辑/etc/ha.d/ha.cf文件
    添加crm on
    crm通过mgmtd进程监听在5560/tcp
    同步到node2节点
    /usr/lib64/heartbeat/ha_propagate
    安装heartbeat-gui接口
    yum -y install pygtk2-libglade;rpm -ivh heartbeat-gui-2.1.4-12.el6.x86_64.rpm
    为hacluster设置密码,登录hb_gui是需要用到
    crm_mon查看节点状态
    crm_sh进入crm的shell
    使用heartbeat-gui需要有桌面环境,像我这个最小化安装的就要安装桌面环境
    yum groupinstall "Desktop"
    yum groupinstall "X Window System"
    yum groupinstall "Chinese Support"
    Xshell要讲X11转发到xmanager,通过文件里面的属性-->隧道进行设置
    hb_gui &

    15、通过hb_gui配置web的ha集群
    右键点击资源--》普通资源
    资源id:webip
    类型:IPaddr2
    添加参数:
    ip:10.10.10.250
    nic:eth0
    cidr_netmask:24
    右键点击资源--》普通资源
    资源id:webserver
    类型:httpd lsb
    添加约束协同约束(排列约束)
    标识符:webip_with_webserser
    起始:webip
    目标:webserser
    权重:INFINTY

     

     

     

     

     

  • 相关阅读:
    Spark
    升级测试数据迁移数据库版本不兼容的问题:mysql5.7 timestamp默认值0000-00-00 00:00:00 报错
    Redis
    批处理引擎MapReduce
    分布式协调服务ZooKeeper
    分布式列式存储系统Kudu
    Python入门学习笔记9:Python高级语法与用法-枚举、函数式编程<闭包>
    Python入门学习笔记8:正则表达式与JSON
    Python入门学习笔记7:面向对象
    Python入门学习笔记6:函数
  • 原文地址:https://www.cnblogs.com/fansik/p/6290273.html
Copyright © 2011-2022 走看看