4rr 发表于 2014-4-11 22:47:49

Tigase服务器安装以及集群

安装第一台tigase服务器
安装tigase服务器所需环境。
# yum install java-1.7.0-openjdk.x86_64 java-1.7.0-openjdk-devel.x86_64
下载tigase服务器软件包。
#wget https://projects.tigase.org/attachments/download/1342/tigase-server-5.2.0-b3447.jar
建立一个服务器安装路径。
root@tigase3tmp]# mkdir /opt/tigase-server
开始安装软件。
# java -jar tigase-server-5.2.0-b3447.jar –console
press1 to continue, 2 to quit, 3 to redisplay
按1继续
Theinstalled application needs a JDK. A java runtime environment (JRE)will be not sufficient.
Enterpath: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51.x86_64
输入JDK的路径再按回车键
Thewizards you want to execute
Installationof the Tigase Server

选择:on
Configurationof the Tigase Server

选择:on
press1 to continue, 2 to quit, 3 to redisplay
按1继续
1. I accept the terms of this license agreement.
2. I do not accept the terms of this license agreement.
Choosenumber (1-2):输入1
press1 to continue, 2 to quit, 3 to redisplay
按1继续
Selecttarget path
/opt/tigase-server
设置tigase服务器的安装路径。
r => Redisplay menu
d => Done

Chooseaction:选d
0 Defaultinstallation
1[ ] Default plusextra components
2[ ] Session Manageronly
3[ ] Networkconnectivity only
inputselection:选1
YourXMPP (Jabber) domains
test.com            #设置XMPP域为test.com
YourXMPP (Jabber) domains
admin@test.com
Adminpassword

0 Derby (built-indatabase)
1[ ] MySQL
2[ ] PostgreSQL
3[ ] SQLServer
4[ ] Other...
inputselection:选2         
Advanced configurationoptions

Off
PostgreSQLsuper user account will be used only to create and configure databasefor the Tigase server. It will not be used by the Tigase server lateron.

Super user accountname:
postgres                               #输入postgres数据库超级用户和密码.
WARNING:password will be visible while entering
Superuser password: postgres
WARNING:password will be visible while entering
Retypepassword: postgres

PostgreSQLdatabase details. It will be created automatically if it does notexist.
Databaseaccount:                #输入存放tigase数据的数据库用户名和密码
tigase
Accountpassword:
tigase
Databasename:
tigasedb
Databasehost or IP:
127.0.0.1
Additionaldatabase parameters: []

press1 to continue, 2 to quit, 3 to redisplay
1
PerformingDB tasks

Checkingconnection to the database
ConnectionOK
Checkingif the database exists
ExistsOK
Checkingthe database schema
Newschema loaded OK
Checkingwhether the database needs conversion
Conversionnot needed
Apr05, 2014 3:55:48 AM tigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Table schema found: public, database type: postgresql, databasedriver: org.postgresql.Driver
Apr05, 2014 3:55:48 AM tigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Initialized database connection:jdbc:postgresql://127.0.0.1/tigasedb?user=postgres&password=postgres
Apr05, 2014 3:55:48 AM tigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Table schema found: public, database type: postgresql, databasedriver: org.postgresql.Driver
Apr05, 2014 3:55:48 AM tigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Initialized database connection:jdbc:postgresql://127.0.0.1/tigasedb?user=postgres&password=postgres

Allusers added
Postinstallation actions
Finalizing...completed OK
Loadingsocks5 component schema
Loadingsocks5 schema... completed OK
LoadingPubSub component schema
LoadingPubSub schema... completed OK


Installwas successeful
applicationinstalled on /opt/tigase-server

启动tigase服务并添加到系统启动服务.
# cd /opt/tigase-server/
# ./scripts/tigase.sh start etc/tigase.conf
StartingTigase:
Tigaserunning pid=1217
nohup:redirecting stderr to stdout
# cd /opt/tigase-server/scripts/redhat/init.d
[root@tigase3init.d]# cp tigase /etc/init.d/
[root@tigase3init.d]# cd /etc/init.d/
[root@tigase3init.d]# chmod a+x tigase
[root@tigase3init.d]# useradd tigase
[root@tigase3init.d]# chown -R tigase:tigase /opt/tigase-server/logs
[root@tigase3init.d]# vi tigase
TIGASE_HOME=/opt/tigase-server   安装目录改为:/opt/tigase-server
[root@tigase3init.d]# chkconfig --add /etc/init.d/tigase
[root@tigase3init.d]# chkconfig tigase on
[root@tigase3init.d]# service tigase start
StartingTigase XMPP server
Tigasestarted


安装第二台tigase服务器实现集群
安装部署与第一台tigase服务器一样,只是选择数据库时不是选择本地,而是选择安装在第一台tigase服务器上的数据库,实现一台数据库做了后端集群,也是目前最简单最实用的方法。
安装时不同之处如下:
PostgreSQLdatabase details. It will be created automatically if it does notexist.

Databaseaccount:
Tigase                         #存放tigase数据的用户、密码以及数据库相同
Accountpassword:
tigase
Databasename:
tigasedb
Databasehost or IP:
192.168.3.180                   #设置数据库连接安装在第一台tigase服务器的数据库.

最后输出时显示信息有一点不一样。
PerformingDB tasks

Checkingconnection to the database
ConnectionOK
Checkingif the database exists
ExistsOK
Checkingthe database schema
SchemaOK, accounts number: 7
Checkingwhether the database needs conversion
Conversionnot needed
AddingXMPP admin accountsApr 05, 2014 1:41:17 PMtigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Table schema found: public, database type: postgresql, databasedriver: org.postgresql.Driver
Apr05, 2014 1:41:17 PM tigase.db.jdbc.DataRepositoryImpl initRepository
INFO:Initialized database connection:jdbc:postgresql://192.168.3.180/tigasedb?user=postgres&password=postgres
Allusers added
Postinstallation actions
Finalizing...completed OK
Loadingsocks5 component schema
Loadingsocks5 schema...
Socks5schema exists, skipping schema load
LoadingPubSub component schema
LoadingPubSub schema...
PubSubschema exists, skipping schema load

重启两台服务器查看日志
tigase-console.log tigase.log.0
出现以下日志表示集群成功.
2014-04-0513:51:56.486 ClusterConnectionManager.serviceStarted()INFO: cluster connectionopened: 192.168.3.181, type: connect,id=192.168.3.180_54221_192.168.3.181_5277

如不从启服务有可能出现以下日志
2014-04-0513:51:41.400 ClusterConnectionManager.processHandshake()WARNING: Handshakingpassword doesn't match, disconnecting: null, type: accept, Socket:nullSocket, jid: null

重启服务都不行,就有可能是域名解析的原因.可用hostname–f查看你计算机的FQDN,tigase5.2后安装就实现自动集群,但对计算机的FQDN比较严格.
如:
# hostname -f
tigase3.test.com
# hostname -f
tigase4.test.com
如hostname–f出来是未知主机,那集群将无法实现.改正以下两个地方
/etc/hosts
/etc/sysconfig/network

安装后系统集群成功后默认可以在不同服务器上登录以及添加联系人,但建立room后不能实现不同服务器之前通信.
实现方法如下:
1检查/opt/tigase-server/jars下是否有tigase-acs.jar包,如果没有可到官网下载max包,解压后再复制进去,MAX包是最完整的,一般推荐下这个,然后按需所取即可!
2.修改两台集群服务器的/opt/tigase-server/etc/init.properties文件.
将--comp-class-1= tigase.muc.MUCComponent改为
--comp-class-1= tigase.muc.cluster.MUCComponentClustered
两台集群服务器配置都改成一样.
重新启动tigase服务,测试成功.


页: [1]
查看完整版本: Tigase服务器安装以及集群