heartbeat启动后无反应

在将heartbeat应用到线上后,启动service heartbeat start,发现之后就再没反应了,查看日志tail -f /var/log/ha-log如下:

heartbeat[30680]: 2015/01/27_18:04:29 info: Version 2 support: false

heartbeat[30680]: 2015/01/27_18:04:29 WARN: Logging daemon is disabled --enabling logging daemon is recommended

heartbeat[30680]: 2015/01/27_18:04:29 info: **************************

heartbeat[30680]: 2015/01/27_18:04:29 info: Configuration validated. Starting heartbeat 2.1.3

heartbeat[30681]: 2015/01/27_18:04:29 info: heartbeat: version 2.1.3

heartbeat[30681]: 2015/01/27_18:04:29 WARN: No Previous generation - starting at 1422353070

heartbeat[30681]: 2015/01/27_18:04:29 info: Heartbeat generation: 1422353070

heartbeat[30681]: 2015/01/27_18:04:29 info: No uuid found for current node - generating a new uuid.

heartbeat[30681]: 2015/01/27_18:04:29 info: Creating FIFO /var/lib/heartbeat/fifo.

一直保持在此不动,heartbeat所管理的资源也没有启动。

刚开始没有任何头绪,即使查看debug日志也没有什么作用,还会有什么地方会有报错信息呢?

终于想到service hearbeat status,终于有所提示:

Cannot shmget for process status: Invalid argument

顺着这根线百度,查到是由于kernel.shmmax,是内核参数导致的。因为这台机器是老机器,版本为5.5,而新配置的6.5服务器没有这个问题。

我的机器shmmax数据设置的过大,从而导致创建共享内存失败。

shmmax内核参数定义单个共享内存段的最大值,一般建议使用物理内存的一半,单位为字节。

以2G为例:2048/2*1024*1024=1073741824

在/etc/sysctl.conf中添加kernel.shmmax=1073741824,在系统重启后仍生效。

改完之后,service heartbeat start,仍未启动,再次service hearbeat status报错

Cannot shmget for process status: No space left on device

这是由于shmall共享内存设置过大导致

shmall内核参数定义共享内存页数,一般建议设置为物理内存大小,单位为页,1页=4k

以2G为例:2048*1024*1024/4000= 536870

在/etc/sysctl.conf中添加kernel.shmall=536870,在系统重启后仍生效。

以上全部改完后,再次service heartbeat start,正常启动且顺利接管VIP。

ok,希望给大家带来帮助。

时间: 2024-08-06 13:18:37

heartbeat启动后无反应的相关文章

搭建heartbeat运行后发现nginx及VIP不能正常启动

问题简介 搭建heartbeat运行后发现nginx及VIP不能正常启动,在查看日志后发现nginx已经启动了但是随后有停止了,通过错误日志上的错误我想了半天在重启nginx时发现80端口被占用,随后查看进程发现tomcat占用了80端口,在停止掉tomcat后并重启heartbeat服务后发现问题解决,通过这件事要学习到今后学习及工作中一定要细心,不要因为低级的错误导致工作效率的降低!同时也说明了自己的经验不足,所以在以后的日子还要努力学习! [[email protected] ha.d]#

在已有Windows系统基础上安装ubuntu后无Windows启动项

1. 原系统为windows 2. 清出一个不用的分区给linux,使用windows磁盘管理器将该分区重新划分为两个分区,分别用于root和swap 3. 安装过程中ubuntu提示原系统为非UEFI安装,新系统为UEFI安装,选择“back”,但安装仍自己继续 4. 安装完毕后无windows项 5. 进入ubuntu执行sudo update-grub

opensuse 42 root切换后无声音 完美处理

opensuse 42 root切换后无声音 刚切换到opensuse42上,个人偏爱root:但是切换到root下声卡不能正常工作,这个东西纠结了一晚上,不得已开始各种爬帖子. 问题:yast上检测声卡,测试能通过,且能播放测试音频                           过 开始问题猜想: 1. 驱动不对    于是切换到普通用户下发现声卡工作正常: 2. 可能是root安全问题,声卡未能正常加载. root下切换到yast上检测声卡,测试能通                  

转 Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案

今早刚上班.客户打电话过来说系统访问不了,输入用户名.用户号不能加载出来!听到这个问题,第一时间想到的是不是服务器重新启动了,Oracle数据库的相关服务没有启动的原因.查看服务的时候,发现相关的服务都是启动的状态.第二想法就是查看的程序配置文件是否被修改过.也没有异常:第三个就是用PL/SQL连接Oracle数据库,输入登录名和密码后,提示如下错误:ora-01033:oracle initialization or shutdown in progress: 在网上搜索了一圈,终于发现几个比

STM32F103 ucLinux开发之四(内核启动后的调试)

Stm32-uclinux启动后的调试 1.  修改__pfn_to_page使得能够启动 根据STM32F103 ucLinux开发之三(内核启动后不正常)的描述,内核无法启动是选择了平板内存模式后,下面两个宏定义,导致计算错误,从而Backtrace的. #define __pfn_to_page(pfn)     (mem_map + ((pfn) - ARCH_PFN_OFFSET)) #define __page_to_pfn(page)  ((unsigned long)((page

Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案

一.错误描述 登陆PL/SQL Developer登陆本地数据库时先报没有监听程序,查看服务发现Oracle监听服务没有启动.右击启动监听程序,报错: 错误描述:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了.一些服务自动停止,如果它们没有什么可做的,例如 "性能日志和警报 "服务. 二.原因分析 你安装oracle的时候是连网的,那么listener.ora文件里的HOST=网络给你分配的IP地址,而在你断网的时候就会出现这样的情况.

禁止开机启动后Oracle 无法连接 、 网络适配器错误 处理

禁止开机启动后Oracle 无法连接, 转来:http://blog.sina.com.cn/s/blog_4aeef1220100fmsr.html TNS-12560: TNS: 协议适配器错误 Microsoft Windows [版本 5.2.3790] (C) 版权所有 1985-2003 Microsoft Corp. C:\Documents and Settings\user1>lsnrctl LSNRCTL for 32-bit Windows: Version 9.2.0.7

keepalived启动后iptables自动添加Drop规则

keepalived 在启动后如果参数配置不当,会在iptables中自动添加一条DROP VIP的规则.这里的一些参数可能会造成这个问题. 1.在配置中添加了strict 或 noaccept参数. 2.在全局配置下使用了vrrp_strict 参数.此参数为严格控制VRRP协议,不支持单播模式,注释掉此选项,将不会默认添加DROP规则.

Oracle TNSListener服务启动后自动停止问题

今天忽然发现 TNSListener 服务无法启动,在服务控制台将其启动后,刷新一下,又自动回到停止状态,也没有报任何的错误.而且SPL PLus还可以正常的使用. 从百度里搜到一篇类似的问题,原来是我改过机器名称造成, 解决方法: 方法1.直接修改 listener.ora 我机器上的路径是: Dracleproduct10.2.0db_1NETWORKADMINlistener.ora 修改其中的 HOST 为主机名或者IP 方法2.通过 Net Configuration Assisant