【一】 安装前环境设定
==========================================================
两台主机硬件环境(不必完全一致):
CPU: Xeon 3G *2 (EM64T)
MEM: 2G
NIC:  Intel 1G *2
eth0: 对外IP
eth1: 对内IP(HA专用)
两台主机的eht1使用双机对联线直接连接。
分区方式:
Filesystem   容量  挂载点
/dev/sda2    9.7G  /
/dev/sda6     45G  /Datas
/dev/sda1     99M  /boot
none2.0G  /dev/shm
/dev/sda3    9.7G  /opt
另外每台主机应预留500M的raw空间或者更多来作为共用空间被HA使用。
操作系统:
RedHat Enterprise 4 Update2 (2.6.9-22 EL)
预安装软件:
@ X Window System
@ GNOME Desktop Environment
@ KDE Desktop Environment
@ Editors
@ Engineering and Scientific
@ Graphical Internet
@ Text-based Internet
@ Authoring and Publishing
@ Server Configuration Tools
@ Development Tools
@ Kernel Development
@ X Software Development
@ GNOME Software Development
@ KDE Software Development
@ Administration Tools
@ System Tools
【二】安装前网络环境设定:
========================================================
node1: 主机名:servers201 ( HA01 )
eth0:  192.168.10.201       //对外IP地址
eth1:  10.0.0.201           //HA心跳使用地址
node2: 主机名:servers202 ( HA02 )
eth0:  192.168.10.202       //对外IP地址
eth1:  10.0.0.202           //HA心跳使用地址
特别注意要检查以下几个文件:
/etc/hosts
/etc/host.conf
/etc/resolv.conf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
/etc/nsswitch.conf
#vi /etc/hosts
node1的hosts内容如下:
127.0.0.1        localhost.localdomain   localhost
192.168.10.201   servers201              HA01
10.0.0.201       HA01
10.0.0.202       HA02
192.168.10.202   server202
node2的hosts内容如下:
127.0.0.1       localhost.localdomain   localhost
192.168.10.202  servers202              HA02
10.0.0.202      HA02
10.0.0.201      HA01
192.168.10.201  server201
#cat /etc/host.conf
order hosts,bind
#cat /etc/resolv.conf
nameserver 61.139.2.69    //DNS地址
#cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=servers201           //主机名
GATEWAY="192.168.10.1"    //网关
GATEWAY="eth0"           //网关使用网卡
ONBOOT=YES               //启动时加载
FORWARD_IPV4="yes"       //只允许IPV4
#cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.10.201
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
TYPE=Ethernet
IPV6INIT=no
#cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
IPADDR=10.0.0.201
NETMASK=255.255.255.0
TYPE=Ethernet
[node1] 与 [node2] 在上面的配置中,除了
/etc/hosts
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
要各自修改外,其他一致。
配置完成后,试试在各自主机上ping对方的主机名,应该可以ping通:
/root#ping HA02
PING HA02 (10.0.0.202) 56(84) bytes of data.
64 bytes from HA02 (10.0.0.202): icmp_seq=0 ttl=64 time=0.198 ms
64 bytes from HA02 (10.0.0.202): icmp_seq=1 ttl=64 time=0.266 ms
64 bytes from HA02 (10.0.0.202): icmp_seq=2 ttl=64 time=0.148 ms
--- HA02 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.148/0.204/0.266/0.048 ms, pipe 2
【三】安装HA 与HA依赖包
===========================================================
rpm -Uvh libnet-1.1.2.1-1.rh.el.um.1.i386.rpm  //可以不装
rpm -Uvh heartbeat-pils-2.0.4-1.el4.i386.rpm
rpm -Uvh heartbeat-stonith-2.0.4-1.el4.i386.rpm
rpm -Uvh heartbeat-2.0.4-1.el4.i386.rpm
rpm -Uvh ipvsadm-1.24-5.i386.rpm
【四】 配置 HA的各配置文件
============================================================
---------------------------
配置心跳的加密方式:authkeys
---------------------------
#vi /etc/ha.d/authkeys
如果使用双机对联线(双绞线),可以配置如下:
#vi /etc/hc.d/authkeys
auth 1
1 crc
存盘退出,然后
#chmod 600 authkeys
---------------------------
配置心跳的监控:haresources
---------------------------
#vi /etc/ha.d/haresources
各主机这部分应完全相同。
server201 IPaddr::192.168.10.200 ipvsadm httpd
指定 server201调用ipvsadm启动http服务,系统附加一个虚拟IP 192.168.10.200 给eth0:0
这里如果server201宕机后,server202可以自动启动http服务,并新分配IP 192.168.10.200给server202的eth0:0
---------------------------
配置心跳的配置文件:ha.cf
---------------------------
#vi /etc/ha.d/ha.cf
logfile /var/log/ha_log/ha-log.log   ## ha的日志文件记录位置。如没有该目录,则需要手动添加
bcast eth1     ##使用eht1做心跳监测
keepalive 2    ##设定心跳(监测)时间时间为2秒
warntime 10
deadtime 30
initdead 120
hopfudge 1
udpport 694    ##使用udp端口694 进行心跳监测
auto_failback on
node server201  ##节点1,必须要与 uname -n 指令得到的结果一致。
node server202  ##节点2
ping 192.168.10.1   ##通过ping 网关来监测心跳是否正常。
respawn hacluster /usr/lib64/heartbeat/ipfail
apiauth ipfail gid=root uid=root
debugfile /Datas/logs/ha_log/ha-debug.log
---------------------------
设置ipvsadm的巡回监测
---------------------------
ipvsadm -A -t 192.168.10.200:80 -s rr
ipvsadm -a -t 192.168.10.200:80 -r 192.168.10.201:80 -m
ipvsadm -a -t 192.168.10.200:80 -r 192.168.10.202:80 -m
执行后进行监测:
#ipvsadm --list
如果返回结果与下相同,则设置正确。
IP Virtual Server version 1.2.0 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.10.200:http rr
-> server202:http               Local   1      0          0
-> server201:http               Masq    1      0          0
【五】 HA服务的启动、关闭以及测试
=================================================
启动HA: service heartbeat start
关闭HA; service heartbeat stop
系统在启动时已经自动把heartbeat 加载了。
使用http服务测试 heartbeat
首先启动httpd服务
#service httpd start
编辑各自主机的测试用html文件,放到/var/www/html/目录下。
启动node1的heartbeat,并执行这个指令进行监控: service heartbeat status
【六】 防火墙设置
====================================================
heartbeat 默认使用udp 694端口进行心跳监测。 如果系统有使用iptables 做防火墙,应记住把这个端口打开。
iptables -P INPUT DROP
       iptables -P OUTPUT ACCEPT
       iptables -I INPUT -p tcp --dport 80 -j ACCEPT
       iptables -I INPUT -p tcp --dport 22 -j ACCEPT
       iptables -I INPUT -p udp --dport 694 -j ACCEPT
iptables -I INPUT -p udp --dport 32770 -j ACCEPT
       service iptables save
#service iptables restart
重新加载iptables。

linux上的 heartbeat 双机热备服务架设相关推荐

  1. Heartbeat双机热备配置

    Heartbeat双机热备配置 简介 Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat ...

  2. linux 红帽双机配置,Redhat Linux安装keepalived实现双机热备

    作者superdebug2012-12-10 14:08信息技术经理, 可以 Redhat Linux安装keepalived实现双机热备 字数 7228阅读 282评论 0赞 0 keepalive ...

  3. linux mysql 5.7 双机热备_2017年5月5日 星红桉liunx动手实践mysql 主主双机热备

    第一步:安装mysql 可参考http://www.runoob.com/mysql/mysql-install.html 心得: rpm -ivh mysql-community-common-5. ...

  4. heartbeat双机热备配置(适用centos6\rhel6)

    该文档环境:rhel6.3 x86_64系统,http://linux-ha.org/wiki/Download,下载的Heartbeat glue agents,其他情况不一定适用,可能会出现各种报 ...

  5. 高可用性HA(High Availability)双机热备

    对于日益承担企事业单位核心业务的NT网络来说,数据的高可用性和系统的连续运转能力极其重要,服务器是企事业单位存放数据的重要设备,如果一旦因为服务器的故障而无法正常运转,就会造成业务停顿,导致不可挽回的 ...

  6. ¤转 Mysql双机热备实现

    ★预备知识 : 1.双机热备 对于双机热备这一概念,我搜索了很多资料,最后,还是按照大多数资料所讲分成广义与狭义两种意义来说. 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服 ...

  7. 磁盘柜双机热备硬件解决方案

    磁盘柜双机热备硬件解决方案       磁盘柜双机热备硬件解决方案 Linux下的高可用性方案 一.概述: IBM EXP300是IBM公司在SCSI产品上的主力存储设备,它采用单独的RAID卡的方式 ...

  8. 高可用性和双机热备浅析

    在用户眼里,业务需要永远正常对外提供服务,这就要求应用系统的高可用(High availability,即 HA).高可用主要是针对架构而言,第一步一般会采用分层的思想将一个庞大的应用系统拆分成应用层 ...

  9. 关于双机热备,你该知道那些问题?

    2019独角兽企业重金招聘Python工程师标准>>> 双机热备这一概念包括了广义与狭义两种意义. 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务.当一台 ...

最新文章

  1. easyui-datagrid行数据field原样输出html标签
  2. gin使用BasicAuth()(验证)中间件
  3. Linux问题分析与性能优化
  4. Apache详细介绍 - [ Apache v2.4.10 for Windows ]
  5. python 线程异步执行踩坑
  6. C++类构造函数初始化列表及初始化成员变量的误区
  7. python turtle 椭圆_【python turtle如何画椭圆】
  8. WordPress内核站群全自动新闻采集发布源码,单站专用
  9. pythonfor循环输入_python的for循环
  10. HTML+CSS详解
  11. oracle xsql 详解(一)
  12. 【canvas】linejoin——miterLimit
  13. Laravel项目问题集锦
  14. exoplay切换全屏_Flutter 实现视频全屏播放逻辑及解析
  15. Jenkins 前端 自动化发版/CICD
  16. scrapy 抓取拉钩 ajax
  17. java试题库管理系统源代码_Java试题库管理源代码
  18. 微信小程序 之 rich-text 长按复制事件
  19. Office Depot使用Apache Spark和 Analytics Zoo上的分布式Keras实现实时产品推荐
  20. 自己适合学习linux云计算运维吗?

热门文章

  1. 使用 Kotlin Script 自定义实现项目开发脚手架
  2. mariadb multi-source replication(mariadb多主复制)
  3. AngularJs学习日记[8]:$http
  4. 雪,是死掉的雨,是雨的精魂
  5. 在linux下,为php增加mbstring扩展
  6. u盘当启动盘(多种方法)
  7. 7-5 全量复制和部分复制
  8. 计算机专业本科毕业答辩问题及回答
  9. java 解析 cim e 模型 架包,基于JAVA平台的CIM模型潮流数据转换方法及装置与流程...
  10. oracle的ocm怎么算通过,Oracle 11g OCM的通过祝贺信