Linux システムでの始動/シャットダウンの統合
前のセクションで説明した始動コマンドとシャットダウン・コマンドは、init スクリプトを使用することで、Linux システムで使用されている始動メカニズムに簡単に統合することができます。init スクリプトは、Linux システムの /etc/init.d ディレクトリーに格納されているファイルで、通常は Linux システム上のさまざまなラン・レベル固有のディレクトリーから、シンボリック・リンクを通じて起動されます。init スクリプトを処理するためのメカニズムは、Linux システムの種類によって異なりますが、ほとんどの Linux システムでは、従来のシステム V 初期化メカニズムとの互換性が維持されています。そのため、Watson™ Explorer Engine には、サンプルの init スクリプト velocity.sysvinit が組み込まれています。このスクリプトは、すべての Watson Explorer Engine インストール済み環境の examples/init.d ディレクトリーに置かれています。このスクリプトには、ご使用のシステムの始動/シャットダウン・メカニズムに合わせてカスタマイズできるように、多数のコメントが記載されています。これらのコメントのうち大部分を除いたこのスクリプトの内容は、以下のようになります。
#!/bin/sh # # You will have to set VIVISIMO_INSTALL_DIR to the location where # Watson Explorer is installed on your system. # VIVISIMO_INSTALL_DIR=/opt/ibm/WEX/Engine VNAME="Watson Explorer" PATH=${VIVISIMO_INSTALL_DIR}/bin:/sbin:/bin:/usr/sbin:/usr/bin check() { if [ ! -f ${VIVISIMO_INSTALL_DIR}/bin/velocity-startup ] || ¥ [ ! -f ${VIVISIMO_INSTALL_DIR}/bin/velocity-shutdown ] ; then echo " Could not find ${VNAME} admin commands in $VIVISIMO_INSTALL_DIR/bin - exiting." exit 1 fi } case "$1" in start) check ${VIVISIMO_INSTALL_DIR}/bin/velocity-startup --yes ¥ --start-scheduler --start-query-service | ¥ grep -v '^$' | sed -e 's;^; ;g' ;; stop) check ${VIVISIMO_INSTALL_DIR}/bin/velocity-shutdown --yes | ¥ grep -v '^$' | sed -e 's;^; ;g' ;; *) echo " Usage: $0 {start|stop}" exit 1 esac exit 0
このサンプル・スクリプトで行う必要が生じる可能性がある唯一の変更は、システム上の Watson Explorer Engine インストール・ディレクトリーの場所を指定する VIVISIMO_INSTALL_DIR 変数の値の変更です。
このスクリプトを Linux システムの始動およびシャットダウンのシーケンスに統合するには、このスクリプトをシステムの /etc/init.d ディレクトリーにコピーして、Watson Explorer Engine を始動するラン・レベルに関連付けられているディレクトリーからこのスクリプトへのシンボリック・リンクを作成します。これらのディレクトリーは、通常、システムのデフォルトのラン・レベルに応じて、/etc/rc2.d ディレクトリー、/etc/rc3.d ディレクトリー、または /etc/rc5.d ディレクトリーです。始動リンク (「S」で始まる) とシャットダウン・リンク (「K」で始まる) の両方を作成する必要があります。推奨されるリンク・ネームは S90de_engine と K95de_engine です。Watson Explorer Engine を始動する前に、Watson Explorer Engine に関連するネットワーク、ローカル・ファイル・システム、リモート・ファイル・システム、および Watson Explorer Engine を統合する Web サーバーがすべて使用可能でなければなりません。同様に、これらの他のサービスがすべてシャットダウンされる前に Watson Explorer Engine をシャットダウンする必要があります。