天天看點

Tigase XMPP Server在CentOS部署與配置

版權聲明:本文為部落客chszs的原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chszs/article/details/37929281

Tigase XMPP Server在CentOS部署與配置

作者:chszs,轉載需注明。部落格首頁:

http://blog.csdn.net/chszs

下面講述Tigase XMPP Server在Linux伺服器上的安裝,Tigase包含了所有的标準子產品,且後端存儲使用了MySQL資料庫。

伺服器CentOS 6.5Final x64

1、安裝JDK

Tigase需要JDK 1.6以上版本。另外,需配置JAVA_HOME環境變量。JDK7的安裝過程省略。

2、安裝MySQL

過程省略。

3、下載下傳并安裝Tigase

Tigase的下載下傳首頁有兩種發行版:

一是tigase-server-5.2.1-b3461-dist-max.tar.gz

二是tigase-server-5.2.1-b3461-dist.tar.gz

要弄清楚兩者的差別。

1)下載下傳

$ wget https://projects.tigase.org/attachments/download/1409/tigase-server-5.2.1-b3461-dist.tar.gz

2)解壓

$ tar zvxf tigase-server-5.2.1-b3461-dist.tar.gz

$ mv tigase-server-5.2.1-b3461 tigase

$ cd tigase

$ chmod u+x ./scripts/tigase.sh 

3)配置

在etc子目錄下,有兩個重要的配置檔案,一是init.properties,二是tigase.conf。

先對tigase.conf檔案做一點小修改:

JAVA_HOME="${JDKPath}"

把配置檔案中JAVA_HOME的路徑指向正确的位置。

JAVA_HOME="/home/chuser/jdk7"

再修改init.properties配置檔案,此配置檔案包含了Tigase伺服器初始化的參數設定。需要修改以下内容:

 $ cat etc/init.properties 

--debug=server--comp-class-1 = tigase.muc.MUCComponent

--virt-hosts = cces

我把$HOST_NAME改成了cces

此外,還需要加上資料庫的配置。Tigase支援Derby、MySQL和PostgreSQL三種資料庫。我們使用MySQL,故還需在配置檔案末尾加上:

--user-db-uri = jdbc:mysql://localhost/tigasedb?user=tigase&password=tigase456&useUnicode=true&characterEncoding=UTF-8
--user-db = mysql
--admins = admin@cces
--comp-name-4 = message-archive
--comp-name-3 = proxy
config-type = --gen-config-def
--comp-name-2 = pubsub
--comp-name-1 = muc
--cluster-mode = true
--sm-plugins = +message-archive-xep-0136
--debug = server
--comp-class-4 = tigase.archive.MessageArchiveComponent
--comp-class-3 = tigase.socks5.Socks5ProxyComponent
--comp-class-2 = tigase.pubsub.PubSubComponent           

接着修改tigase.conf配置檔案:

#osgiEnabled=(true|false)
#osgiEnabled=false
OSGI=false
ENC="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
DRV="-Djdbc.drivers=com.mysql.jdbc.Driver:org.postgresql.Driver:org.apache.derby.jdbc.EmbeddedDriver"
#GC="-XX:+UseBiasedLocking -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:ParallelCMSThreads=2 -XX:-ReduceInitialCardMarks"
#EX="-XX:+OptimizeStringConcat -XX:+DoEscapeAnalysis -XX:+UseNUMA"
JAVA_HOME="/home/chuser/jdk7"
CLASSPATH=""
JAVA_OPTIONS="${GC} ${EX} ${ENC} ${DRV} -server -Xms100M -Xmx200M -XX:PermSize=32m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=128m "
TIGASE_CONFIG="etc/tigase.xml"
TIGASE_OPTIONS=" --property-file etc/init.properties "           

4)導入資料庫腳本

修改資料庫腳本檔案db-create-mysql.sh,設定Tigase伺服器要使用的資料庫的:

使用者名、密碼、資料庫名、資料庫管理者使用者名、資料庫管理者密碼、主機名

再執行

$ ./scripts/db-create-mysql.sh tigase tigase456 tigasedb root adminadmin 172.168.72.68

5)啟動Tigase伺服器

# ./scripts/tigase.sh start etc/tigase.conf

Starting Tigase: 

nohup: redirecting stderr to stdout

Tigase running pid=25597

6)關閉Tigase伺服器

# ./scripts/tigase.sh stop etc/tigase.conf 

Shutting down Tigase: 25597

1. Waiting for the server to terminate...

2. Tigase terminated.