WildFly

2014/6/24更新

対応バージョン: 8.1.0.Final

公式サイト

準備

導入OS

Ubuntu 14.04

JREインストール

% sudo apt-get install default-jre

管理用アカウント作成

% sudo groupadd -r wildfly
% sudo useradd -r -g wildfly -s /bin/false -d /nonexistent wildfly

インストール

配布ファイル展開

% tar xvf wildfly-8.1.0.Final.tar.gz

ポート設定

運用したい環境によって以下の4種類の設定ファイルが用意されている。

wildfly-8.1.0.Final/standalone/configuration/standalone.xml

Web Profile用

wildfly-8.1.0.Final/standalone/configuration/standalone-ha.xml

Web Profile(HA)用

wildfly-8.1.0.Final/standalone/configuration/standalone-full.xml

Full Profile用

wildfly-8.1.0.Final/standalone/configuration/standalone-full-ha.xml

Full Profile(HA)用

この中から必要な設定ファイルを選んでサービスポート、管理者ポートを設定する。デフォルトはそれぞれ8080、9990。

<socket-binding name="http" port="${jboss.http.port:8080}"/>

<socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>

デフォルトポートからのオフセットを指定することもできる。以下のように設定するとサービスポート、管理者ポートはそれぞれ9080、10990になる。

(変更前)

<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">

(変更後) ... 最後のport-offset値を0から1000にする

<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:1000}">

インストール

% sudo cp -r wildfly-8.1.0.Final /usr/local/wildfly
% sudo chown -R wildfly:wildfly /usr/local/wildfly

インストール物 (man,infoは除く)

/usr/local/wildfly/*/*

動作確認

デーモン起動

% sudo -u wildfly /usr/local/wildfly/bin/standalone.sh

待ち受けポートがLISTENになっているか確認

% ss -anp|egrep '(Netid|:8080|:9990)'
Netid State   Recv-Q Send-Q  Local Address:Port  Peer Address:Port 
tcp   LISTEN  0      50          127.0.0.1:9990             *:*     
tcp   LISTEN  0      50          127.0.0.1:8080             *:* 

管理者アカウントを追加

管理者ポートにアクセスしてサービスの管理をするアカウントを作成する。

% sudo /usr/local/wildfly/bin/add-user.sh
What type of user do you wish to add? 
 a) Management User (mgmt-users.properties) 
 b) Application User (application-users.properties)
(a): <--- リターン

Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : <--- ユーザ名
...
Password : <--- パスワード
...
Re-enter Password : <--- パスワード再入力
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]: <--- リターン
About to add user 'xxxxx' for realm 'ManagementRealm'
Is this correct yes/no? <--- yes
Added user 'xxxxx' to file '/usr/local/wildfly/standalone/configuration/mgmt-users.properties'
Added user 'xxxxx' to file '/usr/local/wildfly/domain/configuration/mgmt-users.properties'
Added user 'xxxxx' with groups  to file '/usr/local/wildfly/standalone/configuration/mgmt-groups.properties'
Added user 'xxxxx' with groups  to file '/usr/local/wildfly/domain/configuration/mgmt-groups.properties'
Is this new user going to be used for one AS process to connect to another AS process? 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? <--- yes
To represent the user add the following to the server-identities definition <secret value="********" />

Webブラウザでサービスポート、管理者ポートにそれぞれアクセスする

サービスポート

localhost:8080

管理者ポート (先ほど作成したアカウントでユーザ認証)

localhost:9990

initスクリプト設置

initスクリプトは/usr/local/wildfly/bin/init.d配下にDebian用とRedhat用の2種類が用意されているので環境に応じたスクリプトを利用する。

wildfly-init-debian.sh
wildfly-init-redhat.sh

UbuntuはDebian系なのでここではDebian用のスクリプトをインストールする。

% sudo vi /usr/local/wildfly/bin/init.d/wildfly-init-debian.sh

(変更前)
JBOSS_HOME="/opt/wildfly"

(変更後)
JBOSS_HOME="/usr/local/wildfly"

% sudo install -o root -g root -m 755 /usr/local/wildfly/bin/init.d/wildfly-init-debian.sh /etc/init.d/wildfly

% sudo update-rc.d wildfly defaults 85 15

(*) 起動・停止の順番(85、15)は他のサービスとの順序性を考慮して適宜変更する。