ソラマメブログ
アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 1人
プロフィール
rikachann Aabye
rikachann Aabye
きままに遊んでます。
最近はものつくりをやりたいと思ってます。
なかなか思うように作れませんが試行錯誤の毎日です
よろしくね。

2012年05月21日

CentOS6でOpenSim メガリージョン編

前回に続いて、CentOSでOpenSim、今回はさらに1SIMを追加して、メガリージョンで動作させてみたいとおもいます。

そのまえに、ビュア(SL Viewer)の設定です。
Win7を例に説明します。

まずデスクトップのSL Viewerのアイコンを右クリックして、プルダウンメニューから
ショートカットの作成を選択して、デスクトップ上にショートカットを作成します。

同じ名前だと紛らわしいので、右クリックでプルダウンメニューから名前の変更を
選んで、名前を変更します

名前を変更したアイコンを右クリックして、プロパティを選択します

リンク先の最後尾に 半角スペースを入れて、OpenSimのIPアドレス:ポート番号を追加します。
前回の設定の例ではCentOSサーバーのIP 192.168.1.50 ポートは9000なので

 -loginuri http://192.168.1.50:9000/ となります

適用を押して保存します。

OpenSimを起動して、接続します。

CentOS6でOpenSim メガリージョン編

ここから、メガリージョンの設定をしてみます

メガリージョンは複数の連続したSIMを1つのSIMみたいにふるまう設定です。(この説明でいいのかな^^;)

ここでは2SIMをメガリージョンとして設定してみます。

まず、SIMのレイアウトを決めます。
現存しているSIM(ここではrika_island)の現在地は、(1000,1000)です
追加するSIM(ここでは oimo_island)を北側に連結します(地図では上部)

現在地(X,Y)で Xは東西、Yは南北の軸を取ります。

追加するSIM(oimo_island)の位置は、北側なので
(1000,1001)となります

rika_island (1000,1000)
oimo_island (1000,1001)

リージョン情報は、Regions.iniファイルに追記します。

$ cd Regions
$ vi Regions.ini

[rika_island]
RegionUUID = 87369d1d-6e02-45bc-9596-c9de11964791
Location = 1000,1000
InternalAddress = 0.0.0.0
InternalPort = 9000
AllowAlternatePorts = False
ExternalHostName = 192.168.1.50

このブロックをそのまま コピーをとり、ブロックの下に一行空けて追加します。

CentOS6でOpenSim メガリージョン編

1、リージョン名を変更します  例では rika_island → oimo_island

2、リージョンUUIDを変更します(この値は、ユニークでないといけません)
  ここでは、先頭2バイトを変更しましたが、実際の運用ではuuidgenコマンドでuuidを生成します。
  $ uuidgen
   18ee79b4-da71-4613-91b0-1c523673614c  ユニークなuuidが生成されます。
  生成された uuidをコピー、貼り付けします。


3、リージョンの位置を設定します。 1000,1000 → 1000,1001


4、ポート番号を設定します。 各SIMごと異なるポート番号の設定が必要です
      9000 → 9001

変更後はこのようになります。

[rika_island]
RegionUUID = 87369d1d-6e02-45bc-9596-c9de11964791
Location = 1000,1000
InternalAddress = 0.0.0.0
InternalPort = 9000
AllowAlternatePorts = False
ExternalHostName = 192.168.1.50

[oimo_island]
RegionUUID = ba369d1d-6e02-45bc-9596-c9de11964791
Location = 1000,1001
InternalAddress = 0.0.0.0
InternalPort = 9001
AllowAlternatePorts = False
ExternalHostName = 192.168.1.50

次に各リージョンに
ClampPrimSize = False
を追加します。

[rika_island]
RegionUUID = 87369d1d-6e02-45bc-9596-c9de11964791
Location = 1000,1000
InternalAddress = 0.0.0.0
InternalPort = 9000
AllowAlternatePorts = False
ExternalHostName = 192.168.1.50
ClampPrimSize = False

[oimo_island]
RegionUUID = ba369d1d-6e02-45bc-9596-c9de11964791
Location = 1000,1001
InternalAddress = 0.0.0.0
InternalPort = 9001
AllowAlternatePorts = False
ExternalHostName = 192.168.1.50
ClampPrimSize = False

保存します。

次にbinに戻り OpenSim.iniを編集します

$ cd ..
$ vi OpenSim.ini

118行 付近の
; CombineContiguousRegions = false を変更します

CentOS6でOpenSim メガリージョン編

 ; CombineContiguousRegions = false  先頭のコメント;を消去して、falseをtrueに変更

 CombineContiguousRegions = true 

保存します


OpenSimを起動します
$ mono OpenSim.exe

途中に問い合わせがあります
Do you wish to join region oimo_island to an existing estate (yes/no)? [yes]:  Enterしました
Name of estate to join. Existing estate names are (rika_sim) [rika_sim]:     Enterしました
   ・
   ・
Region (root) #        OpenSimのコマンド待ち(リージョン名がrootになります)

ファイヤーウォール設定のためいったん終了します

rootになり、 iptables を編集します
新たに追加したリージョンのポート(9001)を追加します。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 9001 -j ACCEPT
を追加します


# vi /etc/sysconfig/iptables

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 9000 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 9001 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

保存します

iptablesサービスを更新します
# service iptables restart

再度ユーザーに戻り opensimを立ち上げます
SIMがもうひとつ見えるでしょうか

SIMの地形を変えてみます

ここでは 以前製作した ハート島のデータを使ってみます。
opensimのbinディレクトリーに地形データをコピーします。
ここでは 地形データは heart_island.png とします

opensimを起動します
コマンド待ちになったら 変更したいSIMに変更します。
rootのままだとすべてのSIMが対象になります。

oimo_islandをハート島にします(change region SIM名(リージョン名))

Region (root) # change region oimo_island
Region (oimo_island) #

対象がoimo_islandになりました

地形データを読み込みます( terrain load 地形ファイル名)

Region (oimo_island) # terrain load heart_island.png

いったんopensimを終了し、再起動します。

あれ、地図には出ない、でもミニマップには表示されている^^;
(SL Viewer)

CentOS6でOpenSim メガリージョン編

Imprudence Viewerでは地図の表示も正常です。

CentOS6でOpenSim メガリージョン編

Phoenix Viewerでは SL Viewerと同様 地図の表示がでませんでした

CentOS6でOpenSim メガリージョン編


Imprudence Viewerがいちばん 相性が良いようです^^




   

同じカテゴリー(CentOS)の記事画像
CentOS6でOpenSim MySQL編
CentOS6でOpenSim 導入編
CentOS6でOpenSim 準備編
同じカテゴリー(CentOS)の記事
 CentOS6でOpenSim MySQL編 (2012-05-26 17:50)
 CentOS6でOpenSim 導入編 (2012-05-20 08:52)
 CentOS6でOpenSim 準備編 (2012-05-19 20:18)
Posted by rikachann Aabye at 15:20│Comments(2)CentOS
この記事へのコメント
FreeBSDには、標準で uuidgen というコマンドが入ってるんで、簡単にUUIDが生成できます。Linuxでもあるみたいですよ。
Posted by Xpyoda at 2012年05月26日 16:54
Centosでもちゃんとuuidgenコマンドありました。
本文に追記しますね
ありがとうございますwww
Posted by rikachann at 2012年05月27日 17:33
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。