版權聲明:本文為部落客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.