![]() |
![]() |
![]() |
|
Configuring servers to Grid modeFrom RexWiki
ForewordreX Grid mode consists OpenSim grid components and rex server components.
The reX server components are
reX server components are used for running authentication in reX authentication mode. In reX authentication mode avatar data is stored to avatar storage server. reX server components are ran in the same manner as in standalone mode so setting up them are mostly not discussed in this section, except when creating new users and when configuring acceptable authentication server addresses to User server.
Running orderStart the servers in the following order: cd "server_running_dir" sleep 3 start OpenSim.Grid.UserServer.exe sleep 3 start OpenSim.Grid.GridServer.exe sleep 3 start OpenSim.Grid.AssetServer.exe sleep 3 start OpenSim.Grid.InventoryServer.exe sleep 3 start OpenSim.exe You can also add the AvatarStorage.exe and Authentication.exe to the beginning of the bat file.
Running for the first timeWhen you run the opensim components for the first time, there are some questions represented at the console window. In most cases default values are ok. When database options are asked you should be alert since all db configurations do not work. Options chosen at startup are stored to configuration files for each server. Config files for each server are as follows:
You can see sample options in section 6. Sample initialization files. There's also few files for database connections:
When you are using MS Sql database you only need to create/configure mssql_connection.ini After those files there's still two more files you need to be avare about:
Default.xml describes sims default region, its master user etc..
MS server connection fileYou should create file named: mssql_connection.ini to your server directory with following contents: [mssqlconnection] data_source = <machinename or hostname>\SQLEXPRESS initial_catalog = Database persist_security_info = True user_id = sa password = password If database server is on the same machine, data source can be set like this .\SQLEXPRESS UserServerAs said defaults should be otherwise fine, but if you want to use ms database you should enter the dll name "OpenSim.Framework.Data.MSSQL.dll" The output should look like this: ----------------------------------------------------------------------------------------- Launching UserServer... Creating new local console Logs will be saved to current directory in .\opengrid-userserver-console.log [CONFIG] [03-13 04:48:36] Calling Configuration Load Function... [03-13 04:48:36] USER SERVER: Default Startup Message [Welcome to OGS]: [03-13 04:48:43] USER SERVER: Default Grid Server URI [http://127.0.0.1:8001/]: http://192.168.0.100:8001/ [03-13 04:48:46] USER SERVER: Key to send to grid server [null]: [03-13 04:48:47] USER SERVER: Key to expect from grid server [null]: [03-13 04:48:48] USER SERVER: Default Inventory Server URI [http://127.0.0.1:8004/]: http://192.168.0.100:8004/ [03-13 04:48:51] USER SERVER: DLL for database provider [OpenSim.Framework.Data.MySQL.dll]: OpenSim.Framework.Data.MSSQL.dll [03-13 04:51:26] USER SERVER: Http Listener port [8002]: [03-13 04:51:29] USER SERVER: Use SSL? true/false [False]: [03-13 04:51:32] USER SERVER: Known good region X [1000]: [03-13 04:51:33] USER SERVER: Known good region Y [1000]: [03-13 04:51:34] USER SERVER: Run in realXtend mode? true/false [false]: true [03-13 04:51:48] USER SERVER: Run in realXtend authentication mode? true/false [false]: true [REGION] [03-13 04:51:54] Establishing data connection [USERSTORAGE] [03-13 04:51:54] Attempting to load OpenSim.Framework.Data.MSSQL.dll [USERSTORAGE] [03-13 04:51:54] Found 6 interfaces. [USERSTORAGE] [03-13 04:51:54] Added IUserData Interface [LIBRARYINVENTORY] [03-13 04:51:54] Loading library inventory [LIBRARYINVENTORY] [03-13 04:51:54] Loading libraries control file .\inventory\Libraries.xml [REGION] [03-13 04:51:54] Starting HTTP process [SERVER] [03-13 04:51:54] Userserver staring with rex authentication [HTTPD] [03-13 04:51:54] Starting up HTTP Server [SERVER] [03-13 04:51:54] Userserver 0.4 - Startup complete [03-13 04:51:54] Enter help for a list of commands [HTTPD] [03-13 04:51:54] Spawned main thread OK [03-13 04:51:54] OpenUser# : ------------------------------------------------------------------------------------------ After setup you can further edit acceptable authentication addresses by running "authentication" command from command line. You should add your external IP address & port (192.168.0.100:10001 in this example) GridServerGrid server startup with right inputs: ----------------------------------------------------------------------------------------- Starting... Creating new local console Logs will be saved to current directory in .\opengrid-gridserver-console.log [CONFIG] [03-13 04:55:05] Calling Configuration Load Function... [03-13 04:55:05] GRID SERVER: OGS Grid Owner [OGS development team]: [03-13 04:55:08] GRID SERVER: Default Asset Server URI [http://127.0.0.1:8003/]: http://192.168.0.100:8003/ [03-13 04:55:10] GRID SERVER: Key to send to asset server [null]: [03-13 04:55:11] GRID SERVER: Key to expect from asset server [null]: [03-13 04:55:11] GRID SERVER: Default User Server URI [http://127.0.0.1:8002/]: http://192.168.0.100:8002/ [03-13 04:55:13] GRID SERVER: Key to send to user server [null]: [03-13 04:55:19] GRID SERVER: Key to expect from user server [null]: [03-13 04:55:20] GRID SERVER: Key to send to a simulator [null]: [03-13 04:55:22] GRID SERVER: Key to expect from a simulator [null]: [03-13 04:55:24] GRID SERVER: DLL for database provider [OpenSim.Framework.Data.MySQL.dll]: OpenSim.Framework.Data.MSSQL.dll [03-13 04:55:41] GRID SERVER: Http Listener port [8001]: [GRID] [03-13 04:55:44] Connecting to Storage Server [DATA] [03-13 04:55:44] Attempting to load OpenSim.Framework.Data.MSSQL.dll [DATA] [03-13 04:55:44] Found 6 interfaces. [DATA] [03-13 04:55:44] Added IGridData Interface [DATA] [03-13 04:55:44] Added ILogData Interface [GRID] [03-13 04:55:44] Starting HTTP process [HTTPD] [03-13 04:55:44] Starting up HTTP Server [HTTPD] [03-13 04:55:44] Spawned main thread OK [GRID] [03-13 04:55:44] Starting sim status checker [03-13 04:55:44] Enter help for a list of commands [03-13 04:55:44] OpenGrid# : ----------------------------------------------------------------------------------------- AssetServerRunning Asset server startup with right inputs (removed some input to keep readable): ----------------------------------------------------------------------------------------- Starting... Creating new local console Logs will be saved to current directory in .\opengrid-AssetServer-console.log [CONFIG] [03-13 04:57:38] Calling Configuration Load Function... [03-13 04:57:38] ASSET SERVER: Default Startup Message [Welcome to OGS]: [03-13 04:57:41] ASSET SERVER: DLL for database provider [OpenSim.Framework.Data.MySQL.dll]: OpenSim.Framework.Data.MSSQL.dll [03-13 04:58:08] ASSET SERVER: Http Listener port [8003]: [ASSET] [03-13 04:58:09] Setting up asset DB [ASSET SERVER] [03-13 04:58:09] LoadDatabasePlugin: Attempting to load OpenSim.Framework.Data.MSSQL.dll [ASSET SERVER] [03-13 04:58:09] Added MSSQL Asset storage engine 1.0.0.0 [ASSET] [03-13 04:58:09] Loading default asset set.. [ASSETS] [03-13 04:58:09] Loading asset set .\assets\OpenSimAssetSet/OpenSimAssetSet.xml [ASSETS] [03-13 04:58:09] Loading asset set .\assets\AnimationsAssetSet/AnimationsAssetSet.xml . . . resAssetSet\femalebottom.jp2] [ASSETS] [03-13 04:58:10] Loading: [Female Face Texture][.\assets\TexturesAssetSet\femaleface.jp2] [ASSETS] [03-13 04:58:10] Loading: [Moon][.\assets\TexturesAssetSet\moon.jp2] [ASSETS] [03-13 04:58:10] Loading: [Cloud][.\assets\TexturesAssetSet\cloud.jp2] [ASSET] [03-13 04:58:10] Starting HTTP process [REST] [03-13 04:58:10] In Get Request [HTTPD] [03-13 04:58:10] Starting up HTTP Server [03-13 04:58:10] Enter help for a list of commands [03-13 04:58:10] OpenAsset# : [HTTPD] [03-13 04:58:10] Spawned main thread OK ----------------------------------------------------------------------------------------- InventoryServerRunning Inventory server startup with right inputs: ----------------------------------------------------------------------------------------- Creating new local console Logs will be saved to current directory in opengrid-inventory-console.log [03-13 05:01:12] Initialising inventory manager... [CONFIG] [03-13 05:01:12] Calling Configuration Load Function... [03-13 05:01:12] INVENTORY: Default Startup Message [Welcome to OGS]: [03-13 05:01:14] INVENTORY: Default User Server URI [http://127.0.0.1:8002]:http://192.168.0.100:8002 [03-13 05:01:17] INVENTORY: Key to send to user server [null]: [03-13 05:01:18] INVENTORY: Key to expect from user server [null]: [03-13 05:01:19] INVENTORY: DLL for database provider [OpenSim.Framework.Data.SQLite.dll]: OpenSim.Framework.Data.MSSQL.dll [03-13 05:01:39] INVENTORY: Http Listener port [8004]: [AGENTINVENTORY] [03-13 05:01:42] Inventorystorage: Attempting to load OpenSim.Framework.Data.MSSQL.dll [AGENTINVENTORY] [03-13 05:01:42] Added IInventoryData Interface [INVENTORY] [03-13 05:01:42] Starting HTTP server ... [HTTPD] [03-13 05:01:42] Starting up HTTP Server [INVENTORY] [03-13 05:01:42] Started HTTP server [03-13 05:01:42] Enter help for a list of commands [03-13 05:01:42] INVENTORY# : [HTTPD] [03-13 05:01:42] Spawned main thread OK -----------------------------------------------------------------------------------------
OpenSimFor running the OpenSim.exe in grid mode copy the presented OpenSim.ini file presented in "Sample initialization files" (At the moment this is how I got it working with OpenSim.DataStore.MSSQL.dll) to server folder as "OpenSim.ini" Then just run it.. If everything went ok, end of the output should look like this: ----------------------------------------------------------------------------------------- <type 'str'> <_MainThread(MainThread, started)> Python:Samples init Python: Welcome tutorial init [CHAT] [03-13 05:28:42] No IRC config information, skipping IRC bridge configuration [PRIMINVENTORY] [03-13 05:28:42] Starting scripts in scene [UDPSERVER] [03-13 05:28:42] Opening UDP socket on 0.0.0.0 9000. [UDPSERVER] [03-13 05:28:42] UDP socket bound, getting ready to listen [UDPSERVER] [03-13 05:28:42] Listening on port 9000 [Python: Started script threadSTARTUP] [03-13 05:28:42] No startup command script specified. Moving on... [STARTUP] [03-13 05:28:42] Startup complete, serving 1 region(s) [03-13 05:28:42] Region# : [ASSETCACHE] [03-13 05:28:45] Adding temporary texture [571cf554-95e6-497b-ac11-436eb6e665f2]: Added to cache. [DATASTORE] [03-13 05:28:45] Storing terrain revision r1205422125 -----------------------------------------------------------------------------------------
Connecting with clientWhen running in rex authentication mode users are created at authentication server.
----------------------------------------------------------------------------------- MSSQLHANDLER - User saved to database = c830df56-fcf0-4311-8c57-3a532fc70d42 Authentication# : create user New user global UID = ea0926a3d38f4c168740bfba379e48fd First name: ff Last name: ff Account: ff.ff Real name: ff Password ** Avatar storage url (default: http://192.168.0.100:10000/avatar/ea0926a3d38f4c168740bfba379e48fd) Just input the first par before /avatar/UID:: Grid url (default http://192.168.0.100:9000): http://192.168.0.100:8002 Start Region X + (default 1000): Start Region Y + (default 1000): MSSQLHANDLER - User saved to database = ea0926a3-d38f-4c16-8740-bfba379e48fd Authentication# : ----------------------------------------------------------------------------------- (Note: you should also create region master user to authentication server, but it's not necessary for getting the grid running)
Sample initialization filesSample initalization files, used to successfully run reX Grid mode in Vista:
[Startup] gridmode = True physics = basicphysics verbose = True physical_prim = True child_get_tasks = False serverside_object_permissions = False storage_plugin = OpenSim.DataStore.MSSQL.dll storage_connection_string = "SERVER=192.168.0.100; DATABASE=rex_db; UID=sa; PASSWORD=password;" startup_console_commands_file = shutdown_console_commands_file = script_engine = OpenSim.Region.ScriptEngine.DotNetEngine.dll asset_database = sqlite worldlibraryfolder = True replace_assets = True rex_mode = True rex_authentication = True rex_python = True 3d_collision_models = True [StandAlone] accounts_authenticate = False welcome_message = Welcome to OpenSim userDatabase_plugin = OpenSim.Framework.Data.MSSQL.dll asset_plugin = OpenSim.Framework.Data.MSSQL.dll inventory_plugin = OpenSim.Framework.Data.MSSQL.dll dump_assets_to_file = False [Network] default_location_x = 1000 default_location_y = 1000 http_listener_port = 9000 remoting_listener_port = 8895 grid_server_url = http://192.168.0.100:8001 grid_send_key = null grid_recv_key = null user_server_url = http://192.168.0.100:8002 user_send_key = null user_recv_key = null asset_server_url = http://192.168.0.100:8003 inventory_server_url = http://192.168.0.100:8004 [RemoteAdmin] enabled = False UserServer_Config.xml <Root> <Config default_startup_message="Welcome to OGS" default_grid_server="http://192.168.0.100:8001/" grid_send_key="null" grid_recv_key="null" default_inventory_server="http://192.168.0.100:8004/" database_provider="OpenSim.Framework.Data.MSSQL.dll" http_port="8002" http_ssl="False" default_X="1000" default_Y="1000" rex_mode="true" rex_authentication="true" /> </Root> GridServer_Config.xml <Root> <Config grid_owner="OGS development team" default_asset_server="http://192.168.0.100:8003/" asset_send_key="null" asset_recv_key="null" default_user_server="http://192.168.0.100:8002/" user_send_key="null" user_recv_key="null" sim_send_key="null" sim_recv_key="null" database_provider="OpenSim.Framework.Data.MSSQL.dll" http_port="8001" allow_forceful_banlines="TRUE" /> </Root> AssetServer_Config.xml <Root> <Config default_startup_message="Welcome to OGS" database_provider="OpenSim.Framework.Data.MSSQL.dll" http_port="8003" /> </Root> InventoryServer_Config.xml <Root> <Config default_startup_message="Welcome to OGS" default_user_server="http://192.168.0.100:8002" user_send_key="null" user_recv_key="null" database_provider="OpenSim.Framework.Data.MSSQL.dll" http_port="8004" /> </Root> mssql_connection.ini [mssqlconnection] data_source = .\SQLEXPRESS initial_catalog = Database persist_security_info = True user_id = sa password = password mysql_connection.ini [mysqlconnection] hostname = localhost database = rex_db username = root password = root pooling = false port = 3306 Default.xml (located at regions folder) <Root> <Config sim_UUID="c638a36b-602d-40ec-9a3d-fbeef05c0470" sim_name="OpenSim Test" sim_location_x="1000" sim_location_y="1000" internal_ip_address="0.0.0.0" internal_ip_port="9000" external_host_name="192.168.0.100" master_avatar_uuid="00000000-0000-0000-0000-000000000000" estate_covanant_uuid="00000000-0000-0000-0000-000000000000" master_avatar_first="Test" master_avatar_last="User" master_avatar_pass="test" master_avatar_authentication_address="192.168.0.100:10001" /> </Root> TrustStore.xml <TrustStore> <Public>True</Public> </TrustStore>
Troubleshooting
|
|||
![]() |
![]() |
![]() |

