免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1979 | 回复: 0
打印 上一主题 下一主题

ejabberd集群安装和配置 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-12-20 18:03 |只看该作者 |倒序浏览

(1)安装erlang.下载otp_src_R11B-3.tar.gz文件,解压,命令tar xvzf  otp_src_R11B-3.tar.gz ,cd otp_src_R11B-3,进入otp_src_R11B-3目录后依次执行1)./configure 2)make 3)make install 命令。
(2) 安装ejabberd.从下载ejabberd-1.1.3.tar文件,解压,命令tar xvf ejabberd-1.1.3.tar,
cd ejabberd-1.1.3,cd src进入src目录后依次执行1)./configure 2)make  3)make install 命令。
(3) 配置ejabberd。
1)所需的配置文件及目录。配置文件:/etc/ejabberd/ejabberd.cfg   日志目录:/var/log/ejabberd/  域名文件:/root/.hosts.erlang(若没有手动创建) Cookie文件:/root/.erlang.cookie(若没有手动创建)。
2)修改ejabberd.cfg文件。%Hosts name 项中”localhost” 改成本机的域名如test.test.com。3)在/root/.hosts.erlang文件填入本机域名,如:test.test.com.(注意结尾要有“.”),设置服务器的cookie信息,随意设置,但是如配置集群,则需要各个服务器的cookie一致。如:TRHCGTSWFLCBVPMVJYYR。
3)启动ssl加密:
cd /etc/ejabberd
openssl req -new -x509 -newkey rsa:1024
-days 3650 -keyout privkey.pem -out server.pem
openssl rsa -in privkey.pem -out privkey.pem
cat privkey.pem >> server.pem
rm privkey.pem
Now edit your ejabberd.cfg file and specify the correct location of your
server.pem:
{listen, [{5222, ejabberd_c2s, [{access, c2s}, {shaper, c2s_shaper},
starttls, {certfile, "/etc/ejabberd/server.pem"}]},
{5223, ejabberd_c2s, [{access, c2s}, {shaper, c2s_shaper},
ssl, {certfile, "/etc/ejabberd/server.pem"}]},

(4)启动ejabberd.
erl -pa /var/lib/ejabberd/ebin \
     
-name ejabberd@first\
     
-s ejabberd \
     
-ejabberd config \"/etc/ejabberd/ejabberd.cfg\" \
                log_path
\"/var/log/ejabberd/ejabberd.log\" \
   
-sasl sasl_error_logger
\{file,\"/var/log/ejabberd/sasl.log\"\} \
     
-mnesia dir \"/var/lib/ejabberd/spool\"

(5)配置集群。(假设主服务器为域名first,次服务器域名为second)
1)second服务器上的/root/.erlang.cookie文件内容要与first上的一致。
2)second服务器上的ejabberd.cfg文件修改域名为
{hosts,
["second","first"]}
3)在second上运行erl -name ejabberd@second -mnesia extra_db_nodes "['ejabberd@first']" -s mnesia4)在second上检查共享是否成功。命令mnesia:info(). (注意要有“.” 才能执行)如出现running db nodes = [ejabberd@first,ejabberd@second就说明共享成功,在用nodes()验证是否与first相连。正确相连则显示ejabberd@first5)在second服务器上运行mnesia:change_table_copy_type(schema, node(), disc_copies). (注意有“.”才能运行)拷贝数据库表。6) mnesia:add_table_copy(acl,node(),disc_copies). (注意有“.”才能运行)拷贝acl表。7)退出q().(注意有“.”才能运行)8)在second重新启动ejabberd. erl -pa /var/lib/ejabberd/ebin      \ -name ejabberd@second  \ -s ejabberd      \ -ejabberd config \"/etc/ejabberd/ejabberd.cfg\" \          log_path \"/var/log/ejabberd/ejabberd.log\"     \  -sasl sasl_error_logger \{file,\"/var/log/ejabberd/sasl.log\"\}备注:用户实际操秩序更改服务器域名。

方法2:集群设置成同一个域名的
(1)      修改% Host name:时做如下修改{hosts, ["first(或者 second)","xxxx.xxxx.com"]}.其他服务器与此方法相同。
(2)      其他与上面的方法相同。
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/36085/showart_446624.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP