v1のときに問題のなかった
config-agent
がエラーで止まってしまう。
/usr/local/bin/config-agent: line 232: mkcnf_agent_sysdep: command not found
/usr/local/etc/gfarm.conf: updated
created /etc/init.d/gfarm_agent
added gfarm_agent service
Starting gfarm_agent:/usr/local/bin/gfarm_agent: symbol lookup error: /usr/local/bin/gfarm_agent: undefined symbol: GFARM_ERR_NO_SUCH_OBJECT [failed]
config-agent: cannot start gfarm_agent
config-agent failure
ちょっと調べてみるとfuseかglibc-not-hiddenを入れなければならないらしいが・・。
逆にv1のときはなぜ動いていたか疑問になる。
config-agentが実行できないため
gfrun,gfgrep等のコマンドも
gfrun: symbol lookup error: gfrun: undefined symbol: gfarm_spool_server_port
gfgrep: symbol lookup error: gfgrep: undefined symbol: gfs_pio_get_node_rank
等が使用できない。どうしたものか・・。
fuseもCentOS5版があればいいのだが。
2008年6月12日木曜日
GFarm2のインストール
GFarm2のインストールに戸惑っていたがとりあえず解決した。
v1に比べて若干変更があったようで、
http://filesystem.g.hatena.ne.jp/n314/
を参考にさせていただいた。
gfarm2.1.0というフォルダがあるとする。
cd gfarm2.1.0
./configure
make
sudo make install
ここまではv1と変更がない。
config-gfarm -t(root)
で問題なければ
config-gfarm(root)
を実行。
この時PostgreSQL等が起動していたらエラーが出るので
ps -ef | grep postgre
などでプロセスを確認してkillすればよい。
v1はこのままconfig-gfsdを実行していたが、
v2の場合、
gfhost -c -a x86_64-centos5-linux -n 4 -p 600 ore00.optsys.xxx.ac.jp ore00(user)
を先に実行する。
useradd -c "Gfarm gfsd" -m _gfarmfs
した上で、
config-gfsd -t
間違いなければ
config-gfsd
で完了。
gfhostについても-pでポートを指定しなければならなくなったようだ。
また、そのままで全てのユーザーで使えるわけではなく、
gfuser -c hoge hoge /hoge ""
のようにユーザーを登録しなければならなくなった。
また、config-gfarmを実行したユーザーのみはこの作業は不要である。
v1に比べて若干変更があったようで、
http://filesystem.g.hatena.ne.jp/n314/
を参考にさせていただいた。
gfarm2.1.0というフォルダがあるとする。
cd gfarm2.1.0
./configure
make
sudo make install
ここまではv1と変更がない。
config-gfarm -t(root)
で問題なければ
config-gfarm(root)
を実行。
この時PostgreSQL等が起動していたらエラーが出るので
ps -ef | grep postgre
などでプロセスを確認してkillすればよい。
v1はこのままconfig-gfsdを実行していたが、
v2の場合、
gfhost -c -a x86_64-centos5-linux -n 4 -p 600 ore00.optsys.xxx.ac.jp ore00(user)
を先に実行する。
useradd -c "Gfarm gfsd" -m _gfarmfs
した上で、
config-gfsd -t
間違いなければ
config-gfsd
で完了。
gfhostについても-pでポートを指定しなければならなくなったようだ。
また、そのままで全てのユーザーで使えるわけではなく、
gfuser -c hoge hoge /hoge ""
のようにユーザーを登録しなければならなくなった。
また、config-gfarmを実行したユーザーのみはこの作業は不要である。
2008年6月11日水曜日
htmlで画像を重ねて表示
ご存じの人も多いかと思うが、PNGやGIFといったファイルは「透過色」なるものが用意されており、後ろが透過して見えるような色(?)を使うことができる。
故に画像を重ねれば見た目合成したようにすることができるのだが、単純にhtml上にImgで並べるだけでは合成されない。
<img border=0 src="gazou.png" width=400 height=400 style="position: absolute; top:0; left:0;">
<img border=0 src="sitagasukeru.png" width=400 height=400 style="position: absolute; top:0; left:0;">
<>をhtmlタグとして認識されてしまうらしく、全角で表示しているのでコピペする方は注意していただきたい。
のように強制的に位置を決めてやってしまえば良い。
上の例だと上から0,左から0の位置に400x400で表示するという設定。
スタイルシートに書いたけどうまくいかなかったので直接貼り付けたのはここだけの話。
故に画像を重ねれば見た目合成したようにすることができるのだが、単純にhtml上にImgで並べるだけでは合成されない。
<img border=0 src="gazou.png" width=400 height=400 style="position: absolute; top:0; left:0;">
<img border=0 src="sitagasukeru.png" width=400 height=400 style="position: absolute; top:0; left:0;">
<>をhtmlタグとして認識されてしまうらしく、全角で表示しているのでコピペする方は注意していただきたい。
のように強制的に位置を決めてやってしまえば良い。
上の例だと上から0,左から0の位置に400x400で表示するという設定。
スタイルシートに書いたけどうまくいかなかったので直接貼り付けたのはここだけの話。
2008年6月9日月曜日
2008年6月6日金曜日
座標を渡す
先日の座標を取得するプログラムの件だが、一応の解決はした。
元々最短路問題において出発点と到着点を取得するのが目的であったのだが、1点のみの座標取得は容易にできるのに対し、その情報を保持しつつ2つめの点の取得にはいろいろと条件がかかってしまっていた。
JavaScriptでは静的な情報しか保存できないのが厄介。
その問題は以下のようにして解決した。
ほとんど見た目が変わらないページ1とページ2とページ3を用意する。
ページ1において座標を取得。
決定ボタンをおき、出発点の座標をページ2にわたす。
ページ2において到達点の座標を取得する。
出発点の座標はこの時点で変数に格納されているため失われることはない。
決定ボタンとクリアボタンを置き、決定ボタンを押すと二つの点の座標をページ3に渡す。
クリアボタンを押した場合はページ1に戻る。
ページ3ではそれらの座標を使って処理すればよい。
これにより問題なくプログラム側に座標を渡すことは可能になった。
グラフィック的に点をクリックするとそこが塗りつぶされるとかそういう効能があるとベストなので改良の余地は多々ある。
見た目的にもわるすぎるのでそのあたりも考慮しなければならない。
元々最短路問題において出発点と到着点を取得するのが目的であったのだが、1点のみの座標取得は容易にできるのに対し、その情報を保持しつつ2つめの点の取得にはいろいろと条件がかかってしまっていた。
JavaScriptでは静的な情報しか保存できないのが厄介。
その問題は以下のようにして解決した。
ほとんど見た目が変わらないページ1とページ2とページ3を用意する。
ページ1において座標を取得。
決定ボタンをおき、出発点の座標をページ2にわたす。
ページ2において到達点の座標を取得する。
出発点の座標はこの時点で変数に格納されているため失われることはない。
決定ボタンとクリアボタンを置き、決定ボタンを押すと二つの点の座標をページ3に渡す。
クリアボタンを押した場合はページ1に戻る。
ページ3ではそれらの座標を使って処理すればよい。
これにより問題なくプログラム側に座標を渡すことは可能になった。
グラフィック的に点をクリックするとそこが塗りつぶされるとかそういう効能があるとベストなので改良の余地は多々ある。
見た目的にもわるすぎるのでそのあたりも考慮しなければならない。
2008年6月4日水曜日
PHPとJavaScript
研究の関係でブラウザ上で画像のクリックした部分の座標を取得するプログラムを作らなければならない。
JavaScriptでの座標取得は比較的容易にできる。
しかし、その後にPHPで作業をするためにPHP側の変数として扱うためには$_GETや$_POSTを用いてページをリロードするしかない。
当たり前の話だが、PHPの変数をJavaScriptに与えるのは容易である。
JavaScriptでの座標取得は比較的容易にできる。
しかし、その後にPHPで作業をするためにPHP側の変数として扱うためには$_GETや$_POSTを用いてページをリロードするしかない。
当たり前の話だが、PHPの変数をJavaScriptに与えるのは容易である。
2008年6月3日火曜日
GFarm2.1.0
がリリースされたそうなのでインストールしてみるが、
config-gfarm
を実行するとPostgreSQLの開始時にエラーが出る。
ps -ef grep postgre
をしてみてもプロセスは消えているんだが・・。
1.4でも大きな問題は発生していないのでしばらくはこっちを使っていよう・・。
config-gfarm
を実行するとPostgreSQLの開始時にエラーが出る。
ps -ef grep postgre
をしてみてもプロセスは消えているんだが・・。
1.4でも大きな問題は発生していないのでしばらくはこっちを使っていよう・・。
2008年5月28日水曜日
あっさり進行
無事クラスタ内では解決したので別の実験用オンラインソルバーのマシンにもGFarmをインストールしてみた。
./configure
make
sudo make install
といつもの感じであっさり終了
config-gfarm -t
config-gfarm
config-agent -t
config-agent
config-gfsd -t
config-gfsd
あっさり終了。
gfhost
にて自分自身は認識しているのを確認。
/usr/local/etc/gfarm.conf
をクラスタの方のgfarm.confにコピー。
クラスタの方の.gfarm_shared_keyを実験用マシンにコピー。
gfhost
にてクラスタと、実験用マシンの両方を認識していることを確認。
あっさり行きすぎて怖いがここまでは問題なし。
とはいえ、問題がないわけではなく
オンラインソルバーから使用することになるため今のままだとapacheユーザーを使わなければならない。良い方法がないかどうか考え中。
./configure
make
sudo make install
といつもの感じであっさり終了
config-gfarm -t
config-gfarm
config-agent -t
config-agent
config-gfsd -t
config-gfsd
あっさり終了。
gfhost
にて自分自身は認識しているのを確認。
/usr/local/etc/gfarm.conf
をクラスタの方のgfarm.confにコピー。
クラスタの方の.gfarm_shared_keyを実験用マシンにコピー。
gfhost
にてクラスタと、実験用マシンの両方を認識していることを確認。
あっさり行きすぎて怖いがここまでは問題なし。
とはいえ、問題がないわけではなく
オンラインソルバーから使用することになるため今のままだとapacheユーザーを使わなければならない。良い方法がないかどうか考え中。
2008年5月26日月曜日
24時間制限
だいぶ前(3/19)にも書いたが、Gfarmにおいて
gfkey
で作成されたキーは24時間しか持たない。MAX24時間でそれ以上はもう一度作り直さなければならない。それを回避するために
gfkey -f -p 200000000
が使えるかもというのを実験してみたが予想通り(?)問題なく24時間後も動作している。
ちなみに本当にこの時間で鍵が切れるかは2315日経ってみないとわからない。
現実的にセキュリティを考えると1か月に1回くらいはリブートもするだろうしその都度鍵ファイルを作り直すのがいいだろう。
前回書いた
connection refused
のエラーについてはただgfsdのサービスを起動してないという基本的なミスでした・・。
いろいろ疑ってかかって問題解決に時間を食ってしまった・・orz
gfkey
で作成されたキーは24時間しか持たない。MAX24時間でそれ以上はもう一度作り直さなければならない。それを回避するために
gfkey -f -p 200000000
が使えるかもというのを実験してみたが予想通り(?)問題なく24時間後も動作している。
ちなみに本当にこの時間で鍵が切れるかは2315日経ってみないとわからない。
現実的にセキュリティを考えると1か月に1回くらいはリブートもするだろうしその都度鍵ファイルを作り直すのがいいだろう。
前回書いた
connection refused
のエラーについてはただgfsdのサービスを起動してないという基本的なミスでした・・。
いろいろ疑ってかかって問題解決に時間を食ってしまった・・orz
2008年5月24日土曜日
変更
オンラインソルバーのページ設定をしばらく続け、各ソルバーをプルダウンメニューで替えるようにした。
前に書いたかも知れないが各ソルバーには極論を言ってしまうと
バイナリ(+オプション)、インプットファイル、アウトプットファイルの3種類しかないため、そこの部分だけを考え全部共通仕様になっている。
実行ページ、ファイル管理ページは問題なく動作はするはずようにはなっているはず。
後はちょこちょこ変更していけばこっちはそれほど問題にならないだろう。
大きく直さなければならないのはログの管理くらいか・・。
それにしてもPHPはコンパイルがないし、html文も入ってたりで括弧が山のようになりエラーの場所を探すのが面倒だ。
そんなところでいったんこちらには見切りを付けてGfarmの方に戻ってきた。
接続できないという問題は解決しいざ色々と実験しようかと思ったら次の日にまた接続できなくなった。
パス認証の問題ではなくconnection refusedになる・・。
おそらくすぐに解決すると思うので
オンラインソルバーの実験用サーバーにもGfarmを入れて、実際に実行可能かを試す段階までなんとか週末でやりたい・・。
前に書いたかも知れないが各ソルバーには極論を言ってしまうと
バイナリ(+オプション)、インプットファイル、アウトプットファイルの3種類しかないため、そこの部分だけを考え全部共通仕様になっている。
実行ページ、ファイル管理ページは問題なく動作はするはずようにはなっているはず。
後はちょこちょこ変更していけばこっちはそれほど問題にならないだろう。
大きく直さなければならないのはログの管理くらいか・・。
それにしてもPHPはコンパイルがないし、html文も入ってたりで括弧が山のようになりエラーの場所を探すのが面倒だ。
そんなところでいったんこちらには見切りを付けてGfarmの方に戻ってきた。
接続できないという問題は解決しいざ色々と実験しようかと思ったら次の日にまた接続できなくなった。
パス認証の問題ではなくconnection refusedになる・・。
おそらくすぐに解決すると思うので
オンラインソルバーの実験用サーバーにもGfarmを入れて、実際に実行可能かを試す段階までなんとか週末でやりたい・・。
登録:
投稿 (Atom)