Chinaunix首页 | 论坛 | 博客
  • 博客访问: 398220
  • 博文数量: 104
  • 博客积分: 652
  • 博客等级: 上士
  • 技术积分: 1477
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-04 15:20
文章分类

全部博文(104)

文章存档

2019年(1)

2015年(8)

2014年(6)

2013年(59)

2012年(30)

分类: LINUX

2013-05-24 15:49:06


1.在各节点上配置主机名:
node1:
    #vim /etc/sysconfig/network
        $HOSTNAME=node1
    #vim /etc/hosts
        $# Do not remove the following line, or various programs
        $# that require network functionality will fail.
        $127.0.0.1       localhost
        $::1             localhost
        $192.168.3.1 node1.ck.com node1
        $192.168.3.2 node2.ck.com node2
node2:
    #vim /etc/sysconfig/network
        $HOSTNAME=node2
    #vim /etc/hosts
        $# Do not remove the following line, or various programs
        $# that require network functionality will fail.
        $127.0.0.1       localhost
        $::1             localhost
        $192.168.3.1 node1.ck.com node1
        $192.168.3.2 node2.ck.com node2

2.安装heartbeat:
需要安装的组件():
 (32bit,64请选择其他相应的组件)
#yum localinstall -y --nogpgcheck *.rpm

3.配置主配置文件ha.cf、资源代理配置文件haresources、密钥文件authkeys
#cd /usr/share/doc/heartbeat-2.1.4/
#cp ha.cf haresources authkeys /etc/ha.d/
#cd /etc/ha.d
#vim ha.cf
    logfile /var/log/ha-log    日志文件位置,不启用时会保存在/var/log/meassages
    keepalive 2    每隔一定时间向对方传递一次心跳信息,心跳信息的传递时间,默认2秒
    deadtime 30    在多长时间之内接收不到对方的心跳信息,就认定对方已经down机
    warntime 10    多长时间发出警告
    initdead 120    首次启动时检测不到对方心跳,判定为对方down机的时间,一般为deadtime的两倍
    udpport 694    心跳信息传递使用的端口
    bcast eth0    广播心跳信息的方式
    ucast eth0 X.X.X.X    单播心跳信息的方式
    auto_failback on    资源是否自动转移回来
    
    node node1    配置节点
    node node2

    ping X.X.X.X    测试网络连接状况,不至于自己的down了误认为其他节点down,一般不指向集群中的节点。
    compression bz2    数据在传递时是不是压缩的,以何种方式压缩
    compression_threshold 2    数据压缩的下限,默认单位为K

#vim authkeys  节点中的密钥内容要保持一致,权限要改为600
    auth X    X为加密类型
    X sha1/md5/..    设置X的加密类型
#chmod 600 authkeys
    
    auth 1
    1 sha1 0d628738d0f5087ec43714aad258eef7(随机数使用 dd if=/dev/urandom count=1 bs=512 |md5sum 生成)

#vim haresources 设置资源代理配置
...
    node1(要和系统使用 uname -n 和/etc/sysconfig/network 中HOSTNAME的设置保持一致)   X.X.X.X(配置的网卡别名ip)/16(子网掩码)/eth0(指定在哪块网卡上配置别名ip)/172.16.255.255(配置广播域)   naginx(服务资源名)
    node1    192.168.3.100/16/eth0/192.168.255.255    nginx

4.开启heartbeat服务
集群中nginx服务都设置为开机不启动
chkconfig nginx off
heartbeat服务设置一台节点开机启动,其他的节点通过已开启的节点进行开启,测试得出,如果节点都同时启动heartbeat服务时,资源可能会同时在节点上开启。
#service heartbeat start
开启其他节点heartbeat服务的方法:
#ssh node2 'service heartbeat start'(此处要使用主机名进行打开,用ip的话可能也会启动节点的资源。)

5.hb_gui管理工具
关闭各节点heartbeat服务

在每个节点上配置
#vim /etc/ha.d/ha.cf
    crm respawn

给haclastor添加密码
#passwd haclastor

开启所有节点
此时上面定义的各节点资源都会失效,需要通过hb_gui的图形界面进行配置
#/usr/share/heartbeat/hb_gui &



阅读(1503) | 评论(2) | 转发(1) |
给主人留下些什么吧!~~

chickenlxg2013-05-29 08:43:31

tomer:请问博主:
 我把node1的httpd的资源脚本搞不可执行了,然后停掉httpd服务;资源组切到node2后,为什么httpd也不启动?

你可以看一下你的httpd是yum安装的还是编译安装的,如果是编译安装的话你需要把apachectl拷贝到/etc/init.d目录下改名为httpd

回复 | 举报

tomer2013-05-28 14:32:39

请问博主:
 我把node1的httpd的资源脚本搞不可执行了,然后停掉httpd服务;资源组切到node2后,为什么httpd也不启动?