小さな計算機室 - xgridconfig Diff
- Added parts are displayed like this.
- Deleted parts are displayed
like this.
!!!エージェントが認識されない
折角Macを沢山購入したのだから、教材としてXgridが使えないかが気になる。
それに、1.4GHzのG4でもそれなりに使える計算能力はあるだろう。
そこで、サーバー管理でXgridのコントローラも起動しておく。
クライアント側はシステム環境設定の「共有」のところのXgridの項目を「開始」させておいて、
その状態でNetBootイメージを作成してみた。
これでうまくいくのかと思いきや、どうも挙動がおかしい。
実際に起動しているマシンの数よりずっと少ないエージェントしか認識できないのだ。
ログを見ると、エージェントのCookieが重複している、みたいなことを言っている。
Oct 25 12:39:35 g5serv2 xgridcontrollerd: Notice: agent connected ([xxx.xxx.xxx.xxx]:49215)
Oct 25 12:39:35 g5serv2 xgridcontrollerd: Warning: received conflicting cookie (registration)from: NetBoot013
Oct 25 12:39:35 g5serv2 xgridcontrollerd: grid:Xgrid agent:NetBoot013 state:Timeout
色々と検索してみると、コントローラの
/var/xgrid/controller/datastore.db
/var/xgrid/controller/blobs/*
を削除してコントローラを再起動すると良い、というような記述を見つけた。
これを行うと、エージェントが最初にコントローラに接続しにいくときは成功
するが、(再起動後などに)同じエージェントが再び接続しようとすると、
また同じエラーでTimeoutしてしまう。
これはコントローラのバグではないだろうか。
試しにシステム環境設定の共有でコンピュータ名を変えてみたら、そのエージェントは
コントローラから利用可能になった。
NetBoot環境ではコンピュータ名がおかしなことになっているのかもしれない。
http://images.apple.com/ca/acg/xgrid/pdf/xgridguide.pdf というのを見つけたので、見てみたら、
Agent computers without unique Rendezvous names: If you use Agent computers that all have
the same computer name, then by default only one of them will be able to successfully connect
to a given controller at a time. You can override the default behavior of using the computer
name for the agent name and specify a unique name for each agent by using the AgentName
key:
<key>AgentName</key>
<value>unique-name</value>
と書いてあった。やはりエージェントの名前に問題があるようだ。
!!!NetBootイメージの作成方法に問題があった
緊急の課題ではないので[[ComputerName]] に書いたように、これから先は暇なときに調べることにするシステムイメージユーティリティの使い方に手落ちがあったみたいだ。
ユニークなコンピュータ名が割り当てられるようになったら、エージェントの認識もちゃんと
できるようになった。
折角Macを沢山購入したのだから、教材としてXgridが使えないかが気になる。
それに、1.4GHzのG4でもそれなりに使える計算能力はあるだろう。
そこで、サーバー管理でXgridのコントローラも起動しておく。
クライアント側はシステム環境設定の「共有」のところのXgridの項目を「開始」させておいて、
その状態でNetBootイメージを作成してみた。
これでうまくいくのかと思いきや、どうも挙動がおかしい。
実際に起動しているマシンの数よりずっと少ないエージェントしか認識できないのだ。
ログを見ると、エージェントのCookieが重複している、みたいなことを言っている。
Oct 25 12:39:35 g5serv2 xgridcontrollerd: Notice: agent connected ([xxx.xxx.xxx.xxx]:49215)
Oct 25 12:39:35 g5serv2 xgridcontrollerd: Warning: received conflicting cookie (registration)from: NetBoot013
Oct 25 12:39:35 g5serv2 xgridcontrollerd: grid:Xgrid agent:NetBoot013 state:Timeout
色々と検索してみると、コントローラの
/var/xgrid/controller/datastore.db
/var/xgrid/controller/blobs/*
を削除してコントローラを再起動すると良い、というような記述を見つけた。
これを行うと、エージェントが最初にコントローラに接続しにいくときは成功
するが、(再起動後などに)同じエージェントが再び接続しようとすると、
また同じエラーでTimeoutしてしまう。
これはコントローラのバグではないだろうか。
試しにシステム環境設定の共有でコンピュータ名を変えてみたら、そのエージェントは
コントローラから利用可能になった。
NetBoot環境ではコンピュータ名がおかしなことになっているのかもしれない。
http://images.apple.com/ca/acg/xgrid/pdf/xgridguide.pdf というのを見つけたので、見てみたら、
Agent computers without unique Rendezvous names: If you use Agent computers that all have
the same computer name, then by default only one of them will be able to successfully connect
to a given controller at a time. You can override the default behavior of using the computer
name for the agent name and specify a unique name for each agent by using the AgentName
key:
<key>AgentName</key>
<value>unique-name</value>
と書いてあった。やはりエージェントの名前に問題があるようだ。
!!!NetBootイメージの作成方法に問題があった
ユニークなコンピュータ名が割り当てられるようになったら、エージェントの認識もちゃんと
できるようになった。