nekop's blog

OpenShift / JBoss / WildFly / Infinispanの中の人 http://twitter.com/nekop

JBoss AS7版 1台のPC上で複数のJBossサーバーを起動する方法 Linux版

JBoss AS7のstandaloneを使って以前書いた1台のPC上で複数のJBossサーバーを起動する方法 Linux版と同じことをする手順を書いてみる。

IPアドレスの追加定義。

sudo /sbin/ifconfig lo:1 127.0.1.1
sudo /sbin/ifconfig lo:2 127.0.1.2

/etc/hostsで名前定義。

127.0.1.1	node1
127.0.1.2	node2

standaloneをnode1, node2にコピーして起動。

cd $JBOSS_HOME
cp -a ./standalone ./node1
cp -a ./standalone ./node2
cd ./bin
NODENAME=node1; ./standalone.sh -Djboss.node.name=$NODENAME -Djboss.server.base.dir=../$NODENAME -b $NODENAME -bmanagement $NODENAME --server-config=standalone-ha.xml
NODENAME=node2; ./standalone.sh -Djboss.node.name=$NODENAME -Djboss.server.base.dir=../$NODENAME -b $NODENAME -bmanagement $NODENAME --server-config=standalone-ha.xml

ついでにクラスタ

初期状態だとクラスタリングサービスが何も有効になっていないのでそのまま起動してもクラスタ組めるかどうかのテストにはならない。とりあえずクラスタ構成のテストをしたい場合はInfinispanのキャッシュをひとつstart="EAGER"で追加するなどすれば良い。

<cache-container name="my-cache-container" default-cache="default">
  <transport lock-timeout="60000"/>
  <distributed-cache name="default" mode="SYNC" start="EAGER"/>
</cache-container>

と、ここまで書いておいてなんですが、このエントリの本質はJBoss AS7はドメイン機能があるのでこんな面倒なことはしなくていいですよ、というものです。次エントリでドメイン機能使って同じ構成を実現します。