自己的简单HEARTBEAT笔记

HEARTBEAT

系统环境:rhel6 x86_64 selinux and iptables disabled

heartbeat-3.0.4-2.el6.x86_64.rpm              100%  161KB 161.4KB/s   00:00

heartbeat-devel-3.0.4-2.el6.x86_64.rpm        100%  123KB 123.0KB/s   00:00

heartbeat-libs-3.0.4-2.el6.x86_64.rpm         100%  263KB 263.2KB/s   00:00

ldirectord-3.9.5-3.1.x86_64.rpm               100%   88KB  88.0KB/s   00:00

rpm -ivh heartbeat-*

yum install   PyXML cluster-glue libltdl.so.7 resource-agents -y(依赖包,不一定需要下载)

Cd /etc/ha.d/

Less ./README

Rpm -q heartbeat -d

cp /usr/share/doc/heartbeat-3.0.4/{ha.cf,haresources}

Vim ha.cf(以下为需要修改或需要使用到的选项)

logfile /var/log/ha-log

系统运行日志文件,取默认值

logfacility local0

日志等级,取默认值

keepalive 2

心跳频率,自己设定。1:表示 1 秒;200ms:表示 200 毫秒

deadtime 30

节点死亡时间阀值,就是从节点在过了 30 后还没有收到心跳就认为主节点死亡,自己   设定

warntime 10

发出警告时间,自己设定

initdead 120

守护进程首次启动后应该等待 120 秒后再启动主服务器上的资源

udpport 694

心跳信息传递的 udp 端口,使用端口 694 进行 bcast 和 ucast 通信,取默认值

serial /dev/ttyS0

采用串口来传递心跳信息

bcast eth1(eth*根据自己ip所在的设备选择)

采用 udp 广播播来通知心跳

auto_failback on

当主节点恢复后,是否自动切回

node    server3.example.com (主节点)

node    server4.example.com (副节点)

ping 172.25.33.250

respawn hacluster /usr/lib/heartbeat/ipfail(lib可能为lib64,根据实际情况添加)

apiauth ipfail gid=haclient uid=hacluster

默认 heartbeat 并不检测除本身之外的其他任何服务,也不检测网络状况。

所以当网络中断时,并不会进行 Load Balancer 和 Backup 之间的切换。

可以通过 ipfail 插件,设置‘ping nodes‘来解决这一问题,但不能使用一个集群节点作为

ping 的节点。

Vim haresources

server3.example.com IPaddr::172.25.33.100/24/eth1 httpd(使用同网段且未被占用的IP)

Vim authkeys

auth 1

1 crc

#2 sha1 HI!

#3 md5 Hello!

chmod 600 authkeys

另一台副机配置也应与主机相同

/etc/init.d/heartbeat start

检测

浏览器登陆  172.25.33.100  查看页面信息

此时关掉 主机的 HTTPD 然后刷新看是否有变动

再连接 主机的HTTPD 查看信息是否还原由主机接管

寻找之间存在的区别以及其功能特性

时间: 2024-10-13 12:56:02

自己的简单HEARTBEAT笔记的相关文章

Python简单操作笔记

Python 类型转换 str(),repr()|format() : 将非字符类型转成子串 int() : 转为整形 float() : 转为浮点型 list(s) : 将字串s转成列表 tuple(s) : 将字串s转成元组 set(s) : 将字串s转成集合 frozenset(s) : 将字串s转成不可变集合 dict(s) : 创建字典 其d必须是(key,value)的元组序列; chr(x) : 将整形转成字符 ord(x) : 将字符转成整形 hex(x) : 将整形转换成16进

Log4j简单学习笔记

log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常用级别的划分:Debug,Info,Warn,Error,Fatal这5个级别由低到高,如果配置的级别为"INFO"那么"Debug"级别的信息则不会显示"依次类推. 示例代码: @Test public void testLevel() { log.debu

3.2 配置构建Angular应用——简单的笔记存储应用

本节我们会通过构建一个简单的笔记存储应用(可以载入并修改一组简单的笔记)来学习如何应用Angular的特性.这个应用用到的特性有: 在JSON文件中存储笔记 展示.创建.修改和删除笔记 在笔记中使用Markdown格式 同步编辑和预览Markdown 本应用已经包含了基础的HTML和CSS代码,还有一个用Node写的简单的RESTful服务器,用于管理笔记,这样我们就可以专注于Angular而不是API.我们学习的重点是如何把Angular加入其中并学习它的重要特性. 3.2.1 获取项目文件

struts2的简单校验笔记

1.校验文件名的写法:Action name-validator.xml2.校验文件应该放在action 对应的包里面3.校验文件的写法.<validators> <!-- 设置要校验的参数--> <field name="param name"> <field-validator type="requiredstring"> <!--设置参数trim为true--> <param name=&quo

【SAE】MySQL数据库的简单使用笔记

因为SAE的PHP没有文件写权限,所以采用MySQL存储数据.下面是简单的使用笔记. 1.一些常量 用户名 : SAE_MYSQL_USER 密 码 : SAE_MYSQL_PASS 主库域名 : SAE_MYSQL_HOST_M 从库域名 : SAE_MYSQL_HOST_S 端 口 : SAE_MYSQL_PORT 数据库名 : SAE_MYSQL_DB 2.SAE提供的基于MySQL模块的SaeMysql类: <?php $mysql = new SaeMysql(); $sql = &quo

Mongoose简单学习笔记

1.1 名词解释 Schema : 一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力 Model : 由Schema发布生成的模型,具有抽象属性和行为的数据库操作对 Entity : 由Model创建的实体,他的操作也会影响数据库 注意: 1.本学习文档采用严格命名方式来区别不同对象,例如: var PersonSchema; //Person的文本属性 var PersonModel; //Person的数据库模型 var PersonEntity; //Person实体 2.Sch

简单Linq笔记

Linq是.net 3.5才引入的 要引入命名空间System.Linq. Linq  to XML要引入System.Xml.Linq Linq to ADO.NET要引入System.Data.Linq 每个Linq查询都是以from子句开始,Linq查询中,select子句和select子句都是必备子句.Linq查询表达式 必须以select或group子句结束 from字句包括两个基本功能 --1>指定查询将采集的数据源 --2>定义一个本地变量,表示数据源中的单个元素 1,最简单的查

&lt;&lt;C++标准程序库&gt;&gt;中的STL简单学习笔记

0. 内容为个人学习笔记, 仅供参考, 如有错漏, 欢迎指正! 1. STL中的所有组件都是由模板构成的, 所以其元素可以是任意型别的. 组件有: - 容器: 管理某类对象的集合. 不同的容器有各自的优缺点. - 迭代器: 用来在一个对象集群(Collection of Objects) 的元素上进行遍历. 这个CoB可以是容器/容器的一部分. 每种容器都提供了自己的迭代器. - 算法(Algorithm): 用来处理集群内的元素(比如: 查询,修改,排序等). - 适配器(adapter) -

Oracle简单学习笔记

创建用户 1 CREATE USER username identified by password;//这是最简单的用户创建SQL语句. 2 CREATE USER username identified by password default tablespace users temporary tablespace temp;//增加指定表空间的SQL语句. 分配用户权限 1 grant 权限/角色 to 用户;//把权限或角色的权限 分配给 用户. 2 revoke 权限/角色 from