Shibboleth-IdP冗長化環境構築手順書(Terracotta編)

2011年12月26日
金沢大学

- 目次 -
1. はじめに
1.1. 本章の目的
1.2. 前提条件
2. Terracottaの構築
2.1. ファイヤーウォールを解放する。
2.2. Terracotttaの設定ファイルの編集
2.3. Terracottaのインストール
2.4. Terracottaクライアントの設定
3. 起動・停止
3.1. Terrracottaサーバ、クライアントの起動順
3.2. Terracottaサーバの起動/停止
3.3. tomcat (Terracottaクライアント)の起動/停止


1. はじめに

1.1. 本章の目的

本書は、JavaクラスタリングソフトウェアであるTerracottaを使用したShibboleth-IdPの冗長化環境の構築手順書です。
本書にて、TerracottaのインストールとShibboleth-IdPとの連携ができることを目的とします。

1.2. 前提条件

Terracottaを使ったShibboleth-IdP冗長化環境を構築するにあたり、下記を前提条件とします。
前提条件


ソフトウェア名

バージョン

インストール先

Terracotta

3.6.0

/opt/terracotta

Shibboleth-IdP

2.3.5

/opt/shibboleth-idp

Apache Tomcat

7.0.23

/usr/java/tomcat




2. Terracottaの構築

Terracottaを構築する全てのサーバで実施します。

2.1. ファイヤーウォールを解放する。

Terracottaは3つのポートを使用します。
ClientからServerへのポート (デフォルトは 9510)
ServerからServerへのポート (デフォルトは 9530)
JMXを利用する場合のポート (デフォルトは 9520。本マニュアルでは利用しません。)

2.2. Terracotttaの設定ファイルの編集



Terracottaのインストール

http://www.terracotta.org/http://terracotta.org/downloads/open-source/destination?name=terracotta-3.6.0.tar.gz&bucket=tcdistributions&file=terracotta-3.6.0.tar.gz

  1. tar terracotta-3.6.0.tar.gz

  2. sudo rm terracotta-3.6.0.tar.gz   ←解凍後、削除します。|
  1. ln -s terracotta-3.6.0 terracotta|
  1. ./tim-get.sh install tim-vector 2.7.1
  2. ./tim-get.sh install tim-tomcat-6.0 2.3.0|

    Terracottaクライアントの設定

Terracotta クライアントは tomcat のサービスとして起動します。

  1. vi /etc/init.d/tomcat6


~~(省略)~~

export TC_INSTALL_DIR=/opt/terracotta
export TC_CONFIG_PATH=/opt/shibboleth-idp/conf/tc-config.xml

~~(省略)~~

start(){

*\#    if \[ \-z $(/sbin/pidof java) \]; then{*}

{*}if \[ \-z $(/sbin/pidof tomcat) \]; then{*}

echo "Starting tomcat"

. $TC_INSTALL_DIR/platform/bin/dso-env.sh --q
      export JAVA_OPTS=$TC_JAVA_OPTS $JAVA_OPTS

/usr/java/tomcat/bin/startup.sh
touch /var/lock/subsys/tomcat
else
echo "tomcat allready running"
fi
}


Terrracottaサーバ、クライアントの起動順

  1. Terracotta クライアント|

    Terracottaサーバの起動/停止

  1. /opt/terracotta/bin/start-tc-server.sh -n idpNode1 -f /opt/shibboleth-idp/conf/tc-config.xml &

    Terracottaサーバ :  idpNode2の場合
  2. /opt/terracotta/bin/start-tc-server.sh -n idpNode2 -f /opt/shibboleth-idp/conf/tc-config.xml &|
    Terracottaサーバがクラスタリングされている場合は先に起動したサーバがActiveとなります。

以上。