2008年07月08日
OpenSimサーバ構築記録その5(外部Simサーバ接続編)
● またまた間違いのお詫び (08.07.17)
この記事を読んでくださった方から、
「他サーバのOpenSimからつながりません。MySQLの接続不可のエラーがでます。」
と相談いただきました。
記事を読み返したら、肝心な2点を説明し忘れてました。。。。申し訳ない。 ><;
(1) MySQL設定ファイルmy.cnfで、外部からの接続を許可する。
MySQLのデフォルトは、ローカル(127.0.0.1)のみから接続可、となってます。
以下の項目をコメントにします。
【/etc/mysql/my.cnf】
(変更前)
48: bind-address = 127.0.0.1
(変更後)
48: # bind-address = 127.0.0.1
(2) 外部から接続できるユーザアカウントを登録する
SQLコマンドで、外部ユーザアカウント(+外部ホスト名)を、userテーブルに追加します。
mysql> grant all on *.* to root@opensim2 identified by '********';

修正後、MySQLの再起動をお忘れなく。
● タイトル変更 (08.07.08)
最初に、この記事を投稿したとき、タイトルを「グリッドサーバ間接続編」としたのですが、
よくよく仕組みを調べたら、グリッドサーバ同士を接続しているのではなく、
仮想サーバ2のOpenSimサーバのみをOpenSim1に接続しているのだと理解できました。
(仮想サーバ2で、UGAIサーバを動かす必要がなかった。。。。><;)
というわけで、タイトルを変更しました。
不適切なタイトルでゴメンナサイ。。。。_| ̄|○
● はじめに
VMWareを利用して、1台のPC内に複数の仮想PCを立てられる様になったので、
複数のOpenSimサーバでマルチレジョンを試してみました。
1台のPCで、マルチレジョンにするなら、bin/Regions/default.xmlを複数
作成するだけなのですが、やっぱり複数サーバどうしを接続していると、
OpenSimのネットワークを構築している、、という実感がして面白いです。
● 仮想サーバのネットワーク定義
【1台目の仮想サーバ】
① IPアドレス: 192.168.85.129/24
② ホスト名: opensim1
/etc/hostsで定義してます。
③ OpenSim Region定義: bin/Regions/1000-1000.xml
スタンドアロンの時から変更なし
sim_name="OpenSim1"
sim_location_x="1000"
sim_location_y="1000"
internal_ip_address="192.168.85.129"
internal_ip_port="9000"
external_host_name="opensim1
④ OpenSim定義:bin/OpenSim.ini
変更なし
【2台目の仮想サーバ】
OpenSim1に接続します。
① IPアドレス: 192.168.85.130/24
② ホスト名: opensim2
③ OpenSim Region定義: bin/Regions/1001-1000.xml
sim_name="OpenSim2"
sim_location_x="1001"
sim_location_y="1000"
internal_ip_address="192.168.85.130"
internal_ip_port="9000"
external_host_name="opensim2
※ sim_UUIDは1台目のUUIDと競合しないように。
※ sim_locationは1台目と競合しないように。
※ internal_ip_portは、9000のままでいい。
(1PCで複数Regionsを立てる場合は、競合しないように)
④ OpenSim定義: bin/OpenSim.ini
ネットワークカテゴリで、opensim1を指定する。
[Network]
remoteDataPort = 20800
grid_server_url = "http://opensim1:8001"
user_server_url = "http://opensim1:8002"
asset_server_url = "http://opensim1:8003"
inventory_server_url = "http://opensim1:8004"
● ログで確認
1台目のグリッドサーバのログには、2台目のopensim2が接続してきた事の記録が出力されてます。
【bin/OpenSim.Grid.GridServer.log】
2008-07-06 21:14:39,021 INFO - [LOGIN BEGIN]: Received login request from simulator: OpenSim2
2008-07-06 21:14:39,029 DEBUG - [LOGIN]: Contacting http://opensim2:9000/simstatus/ for status of region OpenSim2
2008-07-06 21:14:39,081 INFO - [LOGIN END]: New sim login successful: OpenSim2
● VMWareの仮想グリッドに、ようこそ~
かなたに見えるのが、別サーバで動いているOpenSim2です。
次は、インターネット上のSIMともつないで見たいですね~。

でも、マメタンの様なSIMにはいいかげん見飽きてしまいました。^^;
土地造成や、画像から取り込む勉強をしよう。
● わかりません。 ><
検索とか、できないなぁ~
まだまだ、わからない事だらけです。。。

この記事を読んでくださった方から、
「他サーバのOpenSimからつながりません。MySQLの接続不可のエラーがでます。」
と相談いただきました。
記事を読み返したら、肝心な2点を説明し忘れてました。。。。申し訳ない。 ><;
(1) MySQL設定ファイルmy.cnfで、外部からの接続を許可する。
MySQLのデフォルトは、ローカル(127.0.0.1)のみから接続可、となってます。
以下の項目をコメントにします。
【/etc/mysql/my.cnf】
(変更前)
48: bind-address = 127.0.0.1
(変更後)
48: # bind-address = 127.0.0.1
(2) 外部から接続できるユーザアカウントを登録する
SQLコマンドで、外部ユーザアカウント(+外部ホスト名)を、userテーブルに追加します。
mysql> grant all on *.* to root@opensim2 identified by '********';

修正後、MySQLの再起動をお忘れなく。
● タイトル変更 (08.07.08)
最初に、この記事を投稿したとき、タイトルを「グリッドサーバ間接続編」としたのですが、
よくよく仕組みを調べたら、グリッドサーバ同士を接続しているのではなく、
仮想サーバ2のOpenSimサーバのみをOpenSim1に接続しているのだと理解できました。
(仮想サーバ2で、UGAIサーバを動かす必要がなかった。。。。><;)
というわけで、タイトルを変更しました。
不適切なタイトルでゴメンナサイ。。。。_| ̄|○
● はじめに
VMWareを利用して、1台のPC内に複数の仮想PCを立てられる様になったので、
複数のOpenSimサーバでマルチレジョンを試してみました。
1台のPCで、マルチレジョンにするなら、bin/Regions/default.xmlを複数
作成するだけなのですが、やっぱり複数サーバどうしを接続していると、
OpenSimのネットワークを構築している、、という実感がして面白いです。
● 仮想サーバのネットワーク定義
【1台目の仮想サーバ】
① IPアドレス: 192.168.85.129/24
② ホスト名: opensim1
/etc/hostsで定義してます。
③ OpenSim Region定義: bin/Regions/1000-1000.xml
スタンドアロンの時から変更なし
sim_name="OpenSim1"
sim_location_x="1000"
sim_location_y="1000"
internal_ip_address="192.168.85.129"
internal_ip_port="9000"
external_host_name="opensim1
④ OpenSim定義:bin/OpenSim.ini
変更なし
【2台目の仮想サーバ】
OpenSim1に接続します。
① IPアドレス: 192.168.85.130/24
② ホスト名: opensim2
③ OpenSim Region定義: bin/Regions/1001-1000.xml
sim_name="OpenSim2"
sim_location_x="1001"
sim_location_y="1000"
internal_ip_address="192.168.85.130"
internal_ip_port="9000"
external_host_name="opensim2
※ sim_UUIDは1台目のUUIDと競合しないように。
※ sim_locationは1台目と競合しないように。
※ internal_ip_portは、9000のままでいい。
(1PCで複数Regionsを立てる場合は、競合しないように)
④ OpenSim定義: bin/OpenSim.ini
ネットワークカテゴリで、opensim1を指定する。
[Network]
remoteDataPort = 20800
grid_server_url = "http://opensim1:8001"
user_server_url = "http://opensim1:8002"
asset_server_url = "http://opensim1:8003"
inventory_server_url = "http://opensim1:8004"
● ログで確認
1台目のグリッドサーバのログには、2台目のopensim2が接続してきた事の記録が出力されてます。
【bin/OpenSim.Grid.GridServer.log】
2008-07-06 21:14:39,021 INFO - [LOGIN BEGIN]: Received login request from simulator: OpenSim2
2008-07-06 21:14:39,029 DEBUG - [LOGIN]: Contacting http://opensim2:9000/simstatus/ for status of region OpenSim2
2008-07-06 21:14:39,081 INFO - [LOGIN END]: New sim login successful: OpenSim2
● VMWareの仮想グリッドに、ようこそ~
かなたに見えるのが、別サーバで動いているOpenSim2です。
次は、インターネット上のSIMともつないで見たいですね~。

でも、マメタンの様なSIMにはいいかげん見飽きてしまいました。^^;
土地造成や、画像から取り込む勉強をしよう。
● わかりません。 ><
検索とか、できないなぁ~
まだまだ、わからない事だらけです。。。

再掲:OpenSim構築手順 (Linux版&OSGrid)
OpenSimサーバ構築記録10/OSX版MySQLで動かす
OpenSimサーバ構築記録9(MacOSXコンパイル編)
OpenSimサーバ構築記録8 (手作りファイアウォール編)
OpenSimサーバ構築記録その7(暗号化しなくちゃ編)
OpenSimサーバ構築記録その6(ブレンダーで土地作り編)
OpenSimサーバ構築記録10/OSX版MySQLで動かす
OpenSimサーバ構築記録9(MacOSXコンパイル編)
OpenSimサーバ構築記録8 (手作りファイアウォール編)
OpenSimサーバ構築記録その7(暗号化しなくちゃ編)
OpenSimサーバ構築記録その6(ブレンダーで土地作り編)
Posted by ぱすてる at 19:43│Comments(0)
│OpenSim