NetCANS管理者ガイド

NetCANSとはCANSをネット上で実行できるWebアプリケーションです。 WebクライアントのWebブラウザからWebサーバーに計算をさせ、 結果をWebで表示させることができます。 Webアプリケーションを実装するためのソフトウェアとして、 (株)KGT社のMASTを利用しています。 NetCANSは汎用性が高く、他のコマンドベースのUNIXアプリを組み込むことも 比較的容易です。


基本事項

この節では、MAST+NetCANSの管理をするにあたって、必要な設定事項を 順に述べます。

1. 動作環境

OS:Red Hat 7.2, 7.3
必要ソフトウェア:KGT社MAST(AVS, vncを含む), Fortranのコンパイラ, JAVAの統合環境, CANS(netCDFを含む)
※2002年、現在、KGT社MASTは300万ぐらいする有料ソフトウェアです。

2. 管理者情報

NetCANSを利用するにあたり、MASTを走らせるサーバーとMASTの管理用のユーザを 用意します。MASTのインストール時には、root権限が必要ですが、管理はrootで ある必要はありません。 機能の追加などの作業を安定して行なうために、MAST用管理アカウントを作成すると 便利でしょう。
・設定例
MAST+NetCANSサーバー:netlab
管理者アカウントの例:mastroot

3. 基本パス

MASTやNetCANSはどこにインストールされるか説明します。
MASTパス    :$MAST_HOME=/opt/KGT/mast-1.0
NetCANS作業パス :$HOME=/opt/netcans
※MASTパスはMASTのバージョンによります。

4. 基本ディレクトリ

NetCANS作業パスには、4つのディレクトリがあります。
bin      :NetCANS 管理用コマンド
cans-source  :CANSソース+NetCANS用課題集
netcans_shell :NetCANS 実行コマンドシェルスクリプト
netcans_vscript:NetCANS 可視化スクリプト
netlab_sample :NetCANS ソース

5. 環境設定ファイル:$HOME/netlab_sample/env_sh

NetCANSを更新・修正などメンテするためには、管理者アカウントで ログインしたときに、環境設定ファイルを読み込む必要があります。 以下は設定の例です。
#!/bin/csh
setenv JAVA_HOME /usr/java/jdk1.3.1_04
setenv MAST_HOME /opt/KGT/mast-1.0
setenv TOMCAT_HOME /opt/KGT/mast-1.0/tomcat
setenv ANT_HOME /opt/KGT/mast-1.0
setenv HOME /opt/netcans
setenv PATH $PATH:$HOME/bin
※jdkやMASTのバージョンにあわせてパスを変更

6. 実行・停止コマンド等

MAST+NetCANSを実行・停止・メンテする際には、複数のコマンドを実行する 必要があります。$HOME/binには実行・停止・メンテを単一のコマンドで おこなえるものがそろえられています。
MASTの起動:mast_start
MASTの停止:mast_stop
MASTの再起動・メンテ:mast_restart
シェルコマンドの追加:mast_addshell
可視化スクリプト追加:mast_addvscript

※参考:起動・停止コマンド等の中身について

7. 基本URL

デフォルトの設定におけるNetCANSのURLとMAST管理用のURLは以下の通りです。 netlab.XXX.XXX.XXXは、MASTをインストールしたホスト名が相当します。

NetCANS

http://netlab.XXX.XXX.XXX:8080/netlab_sample/vtl/login
MAST管理用
http://netlab.XXX.XXX.XXX:8080/mast/modules/login
※MASTのデフォルトの設定では8080ポートを使用します。
※firewall等の設定によっては、8080ポートにアクセスできない場合があります。

NetCANSの設定:パッケージの追加手順

パッケージの追加はMAST管理者で行います。

(0)環境ファイルの読み込み

source $HOME/netlab_sample/env_sh
※.cshrcで自動設定しておくと便利です。

(1)パッケージの変更

以下のNetCANSのファイルを設定する。
$HOME/cans-source/cans2d/mdXXX
例1、パラメータ入力なし
$HOME/cans-source/cans2d/md_kh
例2、パラメータ入力あり
$HOME/cans-source/cans2d/mdn_kh
※mdnで始まる課題が、NetCANSに拡張した課題です。

(2)シェルスクリプトの作成

パッケージを実行するためのシェルスクリプトを作成します。
$HOME/netcans_shell/md_XXX

例1、パラメータ入力なし

#!/bin/csh
cd $1
setenv NETCANS /opt/netcans/cans-source
cp $NETCANS/lib* .
cp $NETCANS/cans2d/md_XXX/* .
echo '*** start ***'
make FFLAGS=-O2 CANS_LIB_DIR=.
exit 0
※$1のディレクトリにファイルを出力します。
※NETCANSのパスは、インストールした環境に合わせて設定してください。

例2、パラメータ入力あり

#!/bin/csh
cd $1
touch 'para.txt'
echo $2 >> para.txt
echo $3 >> para.txt
echo $4 >> para.txt
echo $5 >> para.txt
setenv NETCANS /opt/netcans/cans-source
cp $NETCANS/lib* .
cp $NETCANS/cans2d/mdn_XXX/*.f .
cp $NETCANS/cans2d/mdn_XXX/Makefile .
echo '*** start ***'
make FFLAGS=-O2 CANS_LIB_DIR=.
exit 0
※$2-$5がパラメータとして、WEBから入力されます。
※それを利用して、Fortranプログラムで入力するpara.txtを作成します。

(3)設定の変更

$HOME/netlab_sample/src/etc/command_list.xml
$HOME/netlab_sample/src/etc/vtemplates/vis101.vm
※command_list.xmlとvis101.vmに上記で作成したコマンドを記述します。

(4)変更の反映

mast_addshell
mast_restart

NetCANSの設定:可視化スクリプトの追加手順

可視化スクリプトの追加もMAST管理者で行います。

(0)環境ファイルの読み込み

source $HOME/netlab_sample/env_sh

(1)AVSのvファイルの用意

UViewer2DかUViewer3Dを使って描画を行い、vファイルを保存します。

(2)AVSのvファイルの編集

a. ファイルパスの変更

filename = "${filename}/out.cdf"
※outputファイルは$1=${filename}のディレクトリに出力されます。

b. Uviewerのportの追加

link link => .Uviewer2D.Scene_Selector.curr_view;
※MASTが画像を取ることで必要な設定。

c. vファイルの拡張子変更

vファイルの拡張子を"XXX.v"から"XXX.vm"とし、ファイルをコピーします。
cp XXX.vm $HOME/netcans_vscript/.

(3)設定の変更

$HOME/netlab_sample/src/etc/VizScriptConfig.xml
$HOME/netlab_sample/src/etc/vtemplates/vis101.vm
※VizScriptConfig.xmlとvis101.vmに上記で作成したコマンドを記述します。

(4)変更の反映

mast_addvscript
mast_restart

一般的な実行プログラムパッケージの追加手順

例として、Net kempoの設定をあげます。 Net kempoとは、kempoと呼ばれる粒子シミュレーションプログラムを NetCANSのインターフェイスで動かすものです。 パッケージの追加はMAST管理者で行います。

(0)環境ファイルの読み込み

source $HOME/netlab_sample/env_sh
※.cshrcで現在は設定してあります

(1)パッケージの変更

以下のkempoのファイルを設定する。
NetKempoパス:$KEMPO=$HOME/kempo

(2)シェルスクリプトの作成

パッケージを実行するためのシェルスクリプトを作成します。
$HOME/netcans_shell/kempo12sh

#!/bin/sh
#
# $1 : Default AVS data file path
#
cd $1
cp $HOME/kempo/kempo12 .
cp $HOME/kempo/data-file.inp .
echo '*** start ***'
./kempo12 < ./data-file.inp
echo '***  end  ***'
exit 0
※$1のディレクトリにファイルを出力します。

(3)設定の変更

$HOME/netlab_sample/src/etc/command_list.xml
$HOME/netlab_sample/src/etc/vtemplates/vis101.vm
※command_list.xmlとvis101.vmに上記で作成したコマンドを記述します。

(4)変更の反映

mast_addshell
mast_restart

NetCANSのインストール

(1)ソースファイル展開

cd /opt
tar xvf netcans.tgz
※ここで、$HOMEを/opt/netcansとします。
※移動したdirectoryでnetcansといったdirectoryを作成します。
※そこの中でファイルが展開されます。

(2)環境ファイル読み込み

source $HOME/netlab_sample/env_sh

(3)コンパイル

a. NetCANSのコンパイル

cd $HOME/netlab_sample/build
./build clean install

b. 必要に応じてCANSのコンパイル

cd $HOME/cans-source
make FFLAGS=-O2

b. 必要に応じてNetCDFのインストール

http://www.unidata.ucar.edu/packages/netcdf/
binaryをダウンロードして、libnetcdf.aをcans-source以下にコピーしてください。

(4)ファイルのコピー

始めにインストールする場合は以下をコピーしてください。
cp $HOME/dest/netlab_sample-1.0.jar /opt/KGT/mast-1.0/lib
cp $HOME/dest/netlab_sample.war /opt/KGT/mast-1.0/tomcat/webapps

(5)ファイルの設定

vncserverのプログラムを以下の場所にコピーしてください。 Red Hat Linuxでは、/usr/local/binにあります。
$MAST_HOME/bin/vncserver

(6)起動

mast_start
始めに、vncserverのパスワードの入力が求められます。 適時、パスワードを設定してください。

(7)動作確認

上記、URLにて、動作を確認してください。
最終更新: