ejabberd 集群搭建

本文详细介绍了如何在两个节点上部署Ejabberd集群,并通过修改配置文件、启动服务、检查状态、设置erlang.cookie、实现负载均衡等步骤来确保系统的稳定性和高效运行。
下图,可能有些主机名地方不一样,但是大概意思就是这个意思。


两个节点的前期工作,:
0.防火墙关闭,selinux机制关闭
1 修改两个节点的计算机名。


2. 修改hosts文件 添加两个节点的ip 和域名。


3.重启


图片如下:




 




 4.两个节点安装ejabberd (略,前边写过安装步骤了,yum方式安装,很简单的)


5.修改两个节点的配置文件 /etc/ejabberd/ejabberdctl.cfg 两项需要修改如下




 




这里说一下,ip地址中间使用逗号隔开的,用点的话会报错。网上有人问过这个问题。


6.修改两个节点的vim   /usr/sbin/ejabberdctl 如下


 
 7.修改两个节点的配置文件ejabbred.cfg  如下




8.添加ejabberd配置文件中的hosts的域名到 各自的/etc/hosts,例如:主节点 如下图


9.启动两个节点,查看两个节点的状态。用live模式也是调试模式,能看出错误信息(略,第一次装完不会报错误。)


 


 
10.以下操作全部在第二个节点进行,关闭第二个节点ejabberd。然后删除 rm –rf  /var/lib/ejabberd/spool/*  所有文件。


 
11.集群通讯用的是erlang.cookie,必须cookie一样,用ssh的方式登陆到主节点,然后scp 命令拷贝到 /var/lib/ejabberd/spool/下。一定要注意权限的问题 。




 
12.用命令 erl   -name    ejabberd@slave.mycctv.com   -mnesia  dir   '"/var/lib/ejabberd/spool/"'  -mnesia  extra_db_nodes   "['ejabberd@master.mycctv.com']"  -s   mnesia    -setcookie  JZZIRLIABFAGMGMGYRFR
setcookie 后边跟的是erlang.cookie里的内容。


 
13.mnesia:info().  查看结果。Runningdb=两个节点说明正常 。


 
14.接着在erlang模式下执行 mnesia:change_table_copy_type(schema, node(), disc_copies).  括号后边有点。
15.q(). 退出erlang模式。
16.启动第二个节点 用live 方式 看有没有报错信息 。
17.然后去第一个节点看一下状态。主节点应该能看到第二个几点的启动状态信息。


18.注册用户做测试。在IE输入,http://only.test.com:5280/admin/


19.客户端更改hosts文件 才能访问到。 


20.登陆网页,更改数据库的复制方式,如下




 20.实现负载均衡 。在配置文件里边加一条命令。(略)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值