Configuration/de

From OpenSimulator

Revision as of 09:40, 10 April 2024 by Manni (Talk | contribs)

Jump to: navigation, search


Contents

OpenSimulator Simulator Konfigurationsdatei

Die Konfiguration des Regionssimulators wird mithilfe einer Datei namens OpenSim.ini verwaltet. Diese Datei wird unabhängig davon verwendet, ob die Simulation im Standalone- oder im Grid-Modus ausgeführt wird. Diese Datei verweist auf einige zusätzliche Konfigurationsinformationen aus dem Verzeichnis config-include /. Informationen zu den verschiedenen Einstellungen finden Sie in der Datei OpenSim.ini (oder OpenSim.ini.example als Referenz).

Bitte beachten Sie, dass der Name OpenSim.ini (oder OpenSim.ini.example als Referenz).

Bitte beachten Sie, dass der Name OpenSim.ini über command line argumentsgeändert werden kann.

Es ist auch möglich, die Inifile-Einstellungen auf zwei Dateien zu verteilen. Dies ist nützlich, wenn Sie mehrere OpenSimulator-Prozesse ausführen möchten, bei denen die meisten Ihrer Einstellungen bis auf einige identisch sind. Die Masterdatei wird zuerst gelesen, dann wird die Inifile gelesen. Einstellungen, die in den in der Master-Datei angegebenen Inifile Overrule-Einstellungen angegeben sind. Die Master-Datei hat das gleiche Format und die gleichen Schlüsselwörter wie die Inifile, daher gilt die gleiche Dokumentation.

Datenbank

OpenSimulator unterstützt die folgenden Datenbank-Engines. Informationen zum Einrichten dieser Dateien finden Sie in der Datei OpenSim.ini.example und in den anderen Beispieldateien in bin / config-include. Wenn Sie die Standard-SQLite-Konfiguration nicht verwenden möchten, müssen Sie Ihre Datenbank einrichten, bevor Sie fortfahren . SQLite benötigt keine weitere Konfiguration. Detaillierte Einstellungen finden Sie unter Database Settings.

  • SQLite (Standard) - eine leichtgewichtige Datenbank, die im Lieferumfang von OpenSimulator enthalten ist und ohne zusätzliche Konfiguration verwendet werden kann. Es ist hauptsächlich dafür gedacht, Sie schnell zum Laufen zu bringen, nicht für den produktiven Einsatz. Es ist deutlich langsamer als MySQL. Einige Funktionen (z. B. Anhangspersistenz) sind noch nicht vollständig implementiert.
  • MySQL (vollständig unterstützt) - Dies ist die empfohlene Datenbank für alle Anwendungen, die über das Experimentieren oder kleine eigenständige Anwendungen hinausgehen. Die minimale MySQL-Version ist 5.1.
  • MariaDB (vollständig unterstützt) - Eine kompatible Alternative zu MySQL. Sie müssen sicherstellen, dass der ausgewählte Zeichensatz utf8mb3 (dh 3 Bytes) ist. Einige Installationen sind standardmäßig auf uft8mb4 (4 Bytes) eingestellt und das wird fehlschlagen.
  • MSSQL (nicht ganz unterstützt) - Die Unterstützung für einige aktuelle OpenSimulator-Funktionen ist möglicherweise noch nicht implementiert, obwohl die meisten davon unterstützt werden.

Standalone vs. Grid

Wir empfehlen, OpenSimulator zuerst im Standalone-Modus auszuführen, bevor Sie versuchen, es mit einem Grid zu verbinden oder ein eigenes Grid auszuführen. OpenSimulator wird standardmäßig im eigenständigen Modus auf den Binärdistributionen gestartet.

Eine OpenSimulator-Konfiguration besteht aus Regionen (die von Regionssimulatoren ausgeführt werden) und Back-End-Datendiensten (wie Benutzer-, Ressourcen- und Inventarverwaltung).

Ein System, das im eigenständigen Modus ausgeführt wird, führt sowohl den Regionssimulator als auch alle Datendienste in einem einzigen Prozess aus, wenn Sie OpenSim.exe ausführen. In diesem Modus können Sie beliebig viele Regionen ausführen, jedoch nur auf einem einzelnen Computer.

OpenSimulator wird im eigenständigen Modus ausgeführt. Simulator und Dienste werden im selben Prozess ausgeführt (OpenSim.exe).

Im Grid-Modus sind die Datendienste nicht Teil des Regionsserverprozesses. Stattdessen werden sie in einer separaten ausführbaren Datei namens Robust.exe ausgeführt. Eine robuste Shell kann alle Dienste ausführen oder sie können auf beliebig viele Robust-Instanzen aufgeteilt werden. Dadurch können sie bei Bedarf auf völlig separaten Maschinen ausgeführt werden. In diesem Modus fungiert OpenSim.exe ausschließlich als Regionsserver und bedient eine oder mehrere Regionen, die mit den separaten Datendiensten kommunizieren. An diesem Punkt können Sie mehrere OpenSim.exe-Region-Simulatoren auf verschiedenen Computern ausführen.

OpenSimulator wird im Rastermodus ausgeführt. In diesem Fall werden alle Dienste innerhalb eines Robust.exe-Prozesses ausgeführt. Mehrere Kopien von OpenSim.exe (die normalerweise auf verschiedenen Computern ausgeführt werden) verwenden dieselben allgemeinen Dienste.

Das Ausführen im Grid-Modus ist komplizierter als das Ausführen im Standalone-Modus. Es erfordert ein Verständnis von UUID, X, Y-Standort, Server-Handshake-Passwörtern, Grundbesitzern und Grundbesitzern und einigen anderen Einstellungen. Diese erfordern mehr Sorgfalt und Geduld beim Einrichten. Wir empfehlen dringend, dass Sie dies nicht versuchen, es sei denn, Sie sind sehr geduldig und sehr technisch kompetent.

OpenSimulator im Standalone-Modus ausführen

Binäre Verteilungen von OpenSimulator sind standardmäßig so konfiguriert, dass sie im eigenständigen Modus ausgeführt werden.

Wenn Sie OpenSimulator jedoch aus der Quelldistribution oder aus dem Git-Repository erstellen, müssen Sie Folgendes tun:

  1. Wechseln Sie in den Ordner bin
  2. Kopieren Sie die Datei OpenSim.ini.example in OpenSim.ini . Dies konfiguriert den 3D-Simulator selbst.
  3. Wechseln Sie in den Ordner bin / config-include
  4. Kopieren Sie die Datei StandaloneCommon.ini.example in StandaloneCommon.ini . Dies konfiguriert die In-Process-Datendienste, die von der Standalone-Konfiguration verwendet werden.
  5. Im [Architecture] -Abschnitt von OpenSim.ini , am unteren Ende der Datei, entfernen Sie die Kommentarzeichen für die Standalone.ini- Zeile. Um eine Codezeile auszukommentieren, entfernen Sie das Semikolon (;) Kommentarzeichen vor der Zeile, so dass es heißt:
Include-Architecture = "config-include/Standalone.ini"


Das Ausführen von OpenSimulator ist dann eine Frage des Startens von OpenSim.exe. Sie müssen jedoch zuvor alle Abhängigkeiten installiert haben. Weitere Informationen finden Sie unter Abhängigkeiten . Öffnen Sie danach eine Eingabeaufforderung (für Windows Benutzer, Startmenü> Ausführen> cmd) und navigieren Sie zum Verzeichnis Opensim / bin.

Führen Sie unter Windows Folgendes aus:

OpenSim.exe

Führen Sie unter Linux Folgendes aus:

mono OpenSim.exe (Linux, BSD, Mac OS X)

oder

dotnet OpenSim.dll (Linux, BSD, Mac OS X)

Der erste Start

Wenn Sie OpenSimulator zum ersten Mal ausführen, werden Sie an der Konsole mehrere Fragen stellen, die eine einzelne Region für Sie einrichten. Die von Ihnen eingegebenen Konfigurationsoptionen werden in die Datei bin / Regions / Regions.ini geschrieben, die Sie zu einem späteren Zeitpunkt bearbeiten können, wenn Sie Änderungen vornehmen müssen.

Viele der Fragen haben Standardwerte. Hier sind einige Erklärungen zu den gestellten Fragen:

  • New region name
Der Name für Ihre Region. Dies muss angegeben werden!
  • Region UUID
Die eindeutige ID Ihrer Region. In fast allen Fällen möchten Sie den zufällig erzeugten Standard in den eckigen Klammern akzeptieren. Der einzige Zeitpunkt, zu dem Sie nicht möchten, ist, wenn Sie versuchen, eine Konfiguration einzurichten, die auf bereits vorhandene Regionsdaten verweist. Aber in diesem Fall ist es wahrscheinlich besser, die Datei "Regions.ini" direkt zu bearbeiten
  • Region Location
Dies ist der Standort der Region im Raster. Im Standalone-Modus können Sie diese als Standard (1000,1000) beibehalten. Wenn Sie später weitere Regionen in der Regions.ini einrichten, benötigen Sie andere Rasterkoordinaten (zB 1000,1001). OpenSimulator-Regionen können an beliebiger Stelle in einem Raster von 65536 mal 65536 platziert werden. Für Hypergrid- aktivierte Regionen ist jedoch möglicherweise eine besondere Berücksichtigung der Region erforderlich. Weitere Informationen finden Sie unter Installing and Running Hypergrid#The 4096 Regions Limit.
  • Internal IP address
In praktisch allen Fällen kann dies als 0.0.0.0 belassen werden (dies ist ein Platzhalter, mit dem OpenSimulator auf UDP-Verbindungen auf einer der Netzwerkschnittstellen des Servers warten kann). Wenn Sie UDP-Verbindungen auf nur eine Netzwerkschnittstelle beschränken möchten, können Sie eine explizite IP-Adresse angeben. Diese Adresse wird nur intern verwendet - der externe Hostname ist der Name, der tatsächlich an den Viewer übergeben wird (und daher der wichtige Name ist).
  • Internal port
Dies ist der IP-Port für alle eingehenden Clientverbindungen. Der Name ist etwas irreführend, da er sowohl extern (z. B. von einem Second Life-Viewer) als auch intern verwendet wird. Sie können dies an jedem gewünschten Port vornehmen, aber es ist sicher, dass Sie den Standardwert 9000 verwenden. Jede Region auf Ihrem Server muss einen eindeutigen Port haben.
  • Allow alternate ports
Dies ist derzeit experimentell. Bitte belassen Sie es mit dem Standardwert False.
  • External host name
Wenn Sie dies bei der Standardeinstellung 'SYSTEMIP' belassen, wird dies die LAN-Netzwerkadresse des Geräts (z. B. 192.168.1.2). Dies ist in Ordnung, wenn Sie nur von Ihrem LAN aus eine Verbindung herstellen. Wenn Sie sich von einem Client im Internet aus verbinden wollen, sollte dies die externe IP-Adresse Ihres Routers sein. Vollständig qualifizierte Domänennamen (FQDNs) können ebenfalls verwendet werden, obwohl sie in eine numerische IP-Adresse konvertiert werden, bevor sie an den Viewer gesendet werden.

Die folgenden Details werden auch in OpenSimulator 0.6.9 und früher gestellt.

  • Master Avatar UUID
Dies ist eine ältere OpenSimulator-Funktion und kann auf dem Standardwert 00000000-0000-0000-0000-000000000000 stehen. Später können Sie dies in der Regions.ini in die UUID Ihres eigenen Avatars ändern, wenn Sie Probleme beim Bearbeiten des Geländes haben.
  • Master Avatar first name
Dies ist eine alternative Möglichkeit, den Master-Avatar anhand des Avatarnamens und nicht anhand der UUID anzugeben. Wenn Sie hier die Eingabetaste drücken, bleiben sowohl dieses Feld als auch das Feld für den Nachnamen leer. Das Akzeptieren des leeren Standards ist in Ordnung - dies kann später immer in der Datei "Regions.ini" geändert werden.
  • Master Avatar last name
Der Nachname des Master-Avatars.
  • Master Avatar sandbox password
Das Passwort des Master-Avatars.

In OpenSimulator 0.7 und höher wird OpenSimulator Sie auffordern, während des Einrichtungsvorgangs jeder Region einen Stand zuzuordnen. Wenn ein Nachlass erstellt werden muss, werden Sie ebenfalls aufgefordert, einen Nachlassverwalter zu beauftragen. Im Standalone-Modus kann während des Einrichtungsvorgangs auch ein Estate Manager erstellt werden.

Vergessen Sie nicht die Kontodetails, die Sie verwenden, um den Master-Avatar (in 0.6.9) oder den Estate-Manager (in 0.7 und später) einzurichten. Nur dieser Benutzer kann zunächst die In-World-Einstellungen für Ihre Region konfigurieren. Dies ist auch ein Benutzerkonto, mit dem Sie Ihren ersten Login-Test durchführen können.

Weitere Informationen zur Datei "Regions.ini", die diese Fragen generieren, finden Sie unter Configuring Regions.

Wenn Sie einen anderen Benutzer als den Estate Manager erstellen möchten, geben Sie in der Serverkonsole Folgendes ein:

create user

Dies stellt Ihnen eine Reihe von Fragen zur Erstellung eines Benutzers (wie Vorname, Nachname und Passwort).

Netzwerkzugriff für die eigenständige Installation

Im Standalone-Modus benötigt ein Viewer, der eine Verbindung zu Ihrer Installation herstellt, den folgenden Netzwerkzugriff auf Ihren Installationscomputer.

1. TCP über den http_listener_port, wie er in Ihrem Simulator verwendet wird. Dies wird im Abschnitt [Netzwerk] Ihrer OpenSim.ini.

[Network]
http_listener_port = 9000

Dies ist der Standardwert von 9000, wenn Sie ihn nicht explizit geändert haben.

2. UDP über den InternalPort jeder Region, wie er in den Regionsdateien konfiguriert ist (z. B. Regions.ini). Zum Beispiel, wenn Sie konfiguriert haben

[test]
RegionUUID = dd5b77f8-bf88-45ac-aace-35bd76426c81
Location = 1000,1000
SizeX = 256
SizeY = 256
SizeZ = 256
InternalAddress = 0.0.0.0
InternalPort = 9000
AllowAlternatePorts = False
ExternalHostName = mygrid.com
 
[test2]
RegionUUID = dd5b77f8-bf88-45ac-aace-35bd76426c82
Location = 1000,1001
SizeX = 256
SizeY = 256
SizeZ = 256
InternalAddress = 0.0.0.0
InternalPort = 9001
AllowAlternatePorts = False
ExternalHostName = mygrid.com

Dann müssen Sie die Ports 9000 und 9001 für UDP-Verkehr öffnen.

3. Die Netzwerkadresse des Computers, der die OpenSimulator-Installation hostet, muss für die Verbindung von Viewern zugänglich sein. Im obigen Beispiel ist der Installationsrechner über den Domain-Namen "mygrid.com" aus dem Internet erreichbar. Wenn auf die gleiche Installation von Viewern im selben Netzwerk zugegriffen werden muss, muss es auch möglich sein, dass sie diesen Domänennamen erfolgreich auflösen (nicht alle Router, insbesondere Home-Router, haben diese "Loopback-Fähigkeit").

Wenn auf die Installation nur im selben LAN zugegriffen werden muss, könnte man die lokale IP-Adresse des Servers (zB 192.168.1.2) angeben.

Herstellen einer Verbindung zu einer eigenständigen Installation

Um mit Ihrem Benutzer eine Verbindung zu Ihrer neuen SIM-Karte herzustellen, starten Sie einen Second Life-Viewer mit den folgenden Befehlszeilenoptionen:

Client auf demselben Rechner wie OpenSim:

-loginuri http://127.0.0.1:9000

Client im selben LAN wie OpenSim:

-loginuri http://lan_ip:9000

Client auf anderem Rechner oder Internet:

-loginuri http://external_ip:9000

Geben Sie dann den Benutzernamen und das Passwort ein, die Sie im vorherigen Schritt eingerichtet haben, und Ihr neuer Benutzer sollte sich anmelden.

Beachten Sie loopback Probleme, wenn Sie Viewer und Server auf demselben Computer (LAN) unter Verwendung der "externen" Konfiguration ausführen. ( Sie können endlos auf den Regionshandshake warten .) Siehe auch Hinweise zur Fehlerbehebung . Wenn Sie Verbindungsprobleme haben, lesen Sie unbedingt die Netzwerkkonfigurationsseite . Dies ist wichtig, wenn Sie das Region-Handshake-Problem sehen.

Exclamation.png

IMPORTANT NOTE, DIVA DISTRO - 4 Apr. 2012 -

If you download the latest version of diva-r18611.tar.bz, it is necessary to first launch the setup program configure.exe

  • In Linux or MacOSX : open a terminal and enter "mono /diva-r18611/bin/Configure.exe" (assuming that you have placed the Diva distro in /diva-r18611)
  • In Windows, assuming they extracted Diva in My Documents, one would open "Run => cmd" and enter 'cd "%USERPROFILE%\My Documents\diva-r18611\", followed by "Configure.exe".

After issuing the command, you can set your sim's domain name, and carefully answer the program's questions, then start the program as instructed in above paragraphs.

The program will install the optimum configuration for OpenSim, example: http://<your_IP>:9000 and WiFi http:<your_IP>:9000/wifi In the standalone version, four regions will be set up. You can optionally add other regions later on, so make sure to use the same first name with the addition of a number (ex: "region 5", "region 6", "region 7", etc. otherwise you can't enter the region and you'd be placed in the nearest free location.

If you wish to enter a different region name, make sure that the "distance" between the island created by the Wifi configuration program and the next, 
will be at least 40 positions away from the first installed region)
(command console: create region Johnnyland RegionConfigure.ini)

OpenSimulator im Grid-Modus ausführen

Das Ausführen von OpenSimulator im Grid-Modus ist wesentlich komplizierter als das Ausführen einer Standalone-Instanz. Anstatt alles im selben Prozess auszuführen, werden Backend-Datendienste (Asset, Inventar usw.) in einem oder mehreren separaten Prozessen ausgeführt, oft auf einem anderen Computer. Dadurch können mehrere OpenSim.exe-Simulatorinstanzen dieselben Asset- und Inventardaten verwenden.

Schritt 1: ROBUST-Service-Instanz einrichten

1. Entfernen Sie bei allen Dateien im Verzeichnis /bin und /bin/config-include die eine Endung .example tragen, sodass diese nur noch die Endung .ini tragen. Die Beispieldatei ist so konfiguriert, dass alle Dienste in einer einzigen ROBUST-Instanz ausgeführt werden.

2. Konfigurieren Sie die Database Settings in Robust.ini, um Ihre MySQL-Datenbank zu verwenden. Zum Ausführen von Grid-Services wird nur MySQL unterstützt.

3. Starten Sie Robust.exe.

mono Robust.exe (Linux, BSD, Mac OS X)

oder

dotnet Robust.dll (Linux, BSD, Mac OS X)

oder

Robust.exe (Windows)

Wenn auf der Konsole keine Fehler (in rot) angezeigt werden, können Sie mit dem nächsten Schritt fortfahren.

4. Jede Region muss zu einem Nachlass gehören, und jeder Nachlass muss einen Eigentümer haben, der ein gültiges Benutzerkonto in OpenSims Benutzerkontodienst ist. Erstellen Sie einen Benutzer auf der ROBUST Befehlskonsole mit dem folgenden Befehl.

create user

Sie werden nach dem Benutzernamen, Passwort und einer optionalen E-Mail-Adresse gefragt. Merken Sie sich diesen Namen, da Sie ihn brauchen, wenn Sie den Simulator zum ersten Mal starten.

Schritt 2: Konfigurieren Sie eine OpenSim.exe, um die ROBUST-Dienste zu verwenden

Im Grid-Modus, wie im Standalone-Modus, müssen Sie OpenSim.ini konfigurieren, das den 3D-Simulator selbst steuert.

Anstatt jedoch die Datei config-include / StandaloneCommon.ini zu verwenden und zu konfigurieren, muss ein Simulator, der eine Verbindung zu einem Grid herstellt, die Datei config-include / GridCommon.ini verwenden und konfigurieren, um eine Verbindung zu den ROBUST-gehosteten Remote-Datendiensten herzustellen als in-process lokale.

Die Schritte für diese beiden Vorgänge sind wie folgt.

1. Entfernen Sie bei allen Dateien im Verzeichnis /bin und /bin/config-include die eine Endung .example tragen, sodass diese nur noch die Endung .ini tragen.

2. Suchen Sie den Abschnitt [Const] oben in der Datei und stellen Sie die Parameter so ein, dass sie den Grid-Services-Ports entsprechen, im Falle einer einfachen Grid-Konfiguration

[Const]
BaseHostname = "MyNiceGrid.org"
PublicPort = "8002"
PrivatePort = "8003"

3. Suchen Sie den Abschnitt [Architecture] ganz unten in OpenSim.ini. Stellen Sie sicher, dass eine der folgenden Zeilen unkommentiert ist:

Include-Architecture = "config-include/Grid.ini" (in OpenSimulator 0.7.1 and later)

oder

Include-Grid         = "config-include/Grid.ini" (in OpenSimulator 0.7.0.2 and earlier)

Die anderen sollten kommentiert bleiben.

4. Gehen Sie zu bin / config-include und kopieren Sie GridCommon.ini.example in GridCommon.ini.

5. Öffnen Sie GridCommon.ini in einem Texteditor. Sie werden eine Menge URL-Einträge sehen, von denen jeder eine Dummy-Vorgabe von http://myassetserver.com:8003 , http://myinventoryserver.com:8003 , usw. hat. Sie müssen jede dieser Adressen ändern, um auf die Adresse zu zeigen Ihrer ROBUST-Instanz. Wenn Sie beispielsweise ROBUST auf einem Computer mit der lokalen IP-Adresse 192.168.1.2 ausführen, müssen Sie AssetServerURI in die Einstellung ändern

AssetServerURI = "http://192.168.1.2:8003"

6. Führen Sie OpenSim.exe aus. Wenn Sie OpenSim.exe zum ersten Mal ausführen, erhalten Sie dieselben Fragen zum Einrichten der Region, die bei einer Erstausführung im eigenständigen Modus auftreten. Anweisungen zur Beantwortung dieser Fragen finden Sie im Abschnitt "Standalone". Weitere Informationen zur Datei "Regions.ini" finden Sie auf der Seite " Regionen konfigurieren ".

Wenn alles korrekt eingerichtet ist, sollten beim Start von OpenSim.exe keine Fehler angezeigt werden. Sie sollten außerdem in der Protokollanzeige der ROBUST-Konsole sehen, dass die Region beim Grid-Service registriert ist. Beispielsweise,

21:43:45 - [GRID SERVICE]: Region t1 (176cc95e-f693-4b02-8e08-af86e2372faa) registered successfully at 256000-256000
21:43:47 - [GRID SERVICE]: region t1 has 0 neighbours

Netzwerkzugriff für eine Grid-Installation

Im Standalone-Modus muss ein Viewer, der eine Verbindung zu Ihrer Installation herstellt, darauf zugreifen

  1. Der Login-Dienst über TCP und andere konfigurierte öffentliche Dienste (z. B. Grid-Info, Karte).
  2. Der http_server_port jedes konfigurierten Simulators über TCP.
  3. Der interne Port und der externe Hostname jeder konfigurierten Region.

Die letzten beiden Anforderungen sind dieselben wie für eigenständige Installationen, außer dass sie für jeden Server gelten, der einen Simulator hostet. Weitere Informationen finden Sie im obigen Abschnitt.

Der Login-Service ist etwas anders. Während im Standalone-Modus derselbe HTTP_Server_Port wie der Simulator selbst verwendet wird, läuft er im Grid-Modus in einem separaten ROBUST-Dienst.

Der Standardport für den Anmeldedienst ist 8002. Sie können dies im Abschnitt [ServiceList] von Robust.ini.example sehen.

[ServiceList]
AssetServiceConnector = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector"
InventoryInConnector = "8003/OpenSim.Server.Handlers.dll:XInventoryInConnector"
GridServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridServiceConnector"
GridInfoServerInConnector = "8002/OpenSim.Server.Handlers.dll:GridInfoServerInConnector"
AuthenticationServiceConnector = "8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector"
OpenIdServerConnector = "8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector"
AvatarServiceConnector = "8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector"
LLLoginServiceInConnector = "8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector"
PresenceServiceConnector = "8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector"
UserAccountServiceConnector = "8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector"
GridUserServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector"
FriendsServiceConnector = "8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector"
MapAddServiceConnector = "8003/OpenSim.Server.Handlers.dll:MapAddServiceConnector"
MapGetServiceConnector = "8002/OpenSim.Server.Handlers.dll:MapGetServiceConnector"

Hier werden alle öffentlichen Dienste (jene, bei denen der Betrachter direkt mit dem Dienst verbunden ist) auf Port 8002 mit internen Diensten auf 8003 bedient. Sie müssen also sicherstellen, dass der Betrachter über TCP auf Port 8002 zugreifen kann, aber nicht offen legen will Port 8003. Nur Simulatoren müssen eine Verbindung zu Port 8003 herstellen können.

Verbindung zu einer Grid-Installation herstellen

Tragen sie in ihrem Viewer unter Viewer → Einstellungen → OpenSim -> Neues Grid hinzufügen ihre Adresse mit dem Port ein:

http://mygrid.com:8002/

In alten Viewer muss eine Client-Startup-Zeile übergeben werden diese sieht ungefähr so ​​aus:

-loginuri http://mygrid.com:8002

Die Loginuri muss die Adresse des Login-Dienstes sein. Im Standalone-Modus war dies die gleiche Adresse wie der Regionssimulator und der Port war standardmäßig 9000. Im Grid-Modus ist dies jedoch die Adresse für den Login-Service, der auf der ROBUST-Instanz gehostet wird. In diesem Fall lautet die Adresse 192.168.1.2. Die Portnummer 8002 ist die traditionelle Nummer für den Grid-Login-Service und ist der Standard in Robust.ini.example.

Wenn die Anmeldung erfolgreich ist, werden auf der ROBUST-Konsole Protokollzeilen angezeigt (für die Anmeldung selbst) und dann Zeilen auf der Regionssimulatorkonsole protokolliert (da der Anmeldevorgang dem Simulator mitteilt, dass er den Avatar erwartet, teilt er der Anzeige die Adresse des Regionssimulator und dann, wenn der Betrachter direkt mit dem Simulator zu sprechen beginnt).

Mehrere ROBUST-Service-Instanzen ausführen

Wenn Sie ein Grid betreiben, können Sie in verschiedenen ROBUST-Instanzen verschiedene Services (zB Asset, Inventory) ausführen, um die Last zu verteilen. Um dies zu tun, müssen Sie den ServiceConnectors-Parameter im Abschnitt [Startup] von Robust.ini (oder Robust.HG.ini, wenn Sie Hypergrid ausführen) bearbeiten. Der standardmäßige ServiceConnectors-Parameter sieht ungefähr so ​​aus

[ServiceList]
AssetServiceConnector = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector"
InventoryInConnector = "8003/OpenSim.Server.Handlers.dll:XInventoryInConnector"
GridServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridServiceConnector"
GridInfoServerInConnector = "8002/OpenSim.Server.Handlers.dll:GridInfoServerInConnector"
AuthenticationServiceConnector = "8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector"
OpenIdServerConnector = "8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector"
AvatarServiceConnector = "8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector"
LLLoginServiceInConnector = "8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector"
PresenceServiceConnector = "8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector"
UserAccountServiceConnector = "8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector"
GridUserServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector"
FriendsServiceConnector = "8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector"
MapAddServiceConnector = "8003/OpenSim.Server.Handlers.dll:MapAddServiceConnector"
MapGetServiceConnector = "8002/OpenSim.Server.Handlers.dll:MapGetServiceConnector"

Jeder Eintrag hat die Form

<port-number>/<dll>:<connector-class-name>

Zum Beispiel der erste Eintrag oben

8003/OpenSim.Server.Handlers.dll:AssetServiceConnector

sagt, einen AssetServiceConnector (und damit einen Asset-Service) von der OpenSim.Server.Handlers.dll zu starten und Server von Port 8003.

Standardmäßig lädt Robust.exe eine Konfigurationsdatei mit demselben Namen, jedoch mit der Erweiterung .ini anstelle von .exe. Daher sucht Robust.exe nach einer Inifile namens Robust.ini. Sie können dies ändern, indem Sie den Parameter in der Befehlszeile angeben. Zum Beispiel, um Robust mit HG-Parametern zu starten, würde man verwenden

Robust.exe -inifile=Robust.HG.ini

Wenn Sie also jeden Connector in einer Instanz von ROBUST von Assets und in einer anderen Instanz von dem Asset-Connector trennen möchten, hätten Sie zwei Ini-Dateien. Man könnte Robust.ini bleiben und haben

[ServiceList]
InventoryInConnector = "8003/OpenSim.Server.Handlers.dll:XInventoryInConnector"
GridServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridServiceConnector"
GridInfoServerInConnector = "8002/OpenSim.Server.Handlers.dll:GridInfoServerInConnector"
AuthenticationServiceConnector = "8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector"
OpenIdServerConnector = "8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector"
AvatarServiceConnector = "8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector"
LLLoginServiceInConnector = "8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector"
PresenceServiceConnector = "8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector"
UserAccountServiceConnector = "8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector"
GridUserServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector"
FriendsServiceConnector = "8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector"
MapAddServiceConnector = "8003/OpenSim.Server.Handlers.dll:MapAddServiceConnector"
MapGetServiceConnector = "8002/OpenSim.Server.Handlers.dll:MapGetServiceConnector"

Die andere könnte Robust.Assets.ini heißen und haben

[ServiceList]
AssetServiceConnector = "8004/OpenSim.Server.Handlers.dll:AssetServiceConnector"

Beachten Sie, dass hier Port 8004 statt Port 8003 verwendet wird. Dies ist notwendig, da nur eine ausführbare Datei jeden Port gleichzeitig verwenden kann. Sie müssen sicherstellen, dass Ihre Simulatorkonfigurationsdateien den Port 8004 auch für den Asset-Service verwenden.

Sie müssen außerdem den Standardnetzwerkport für diese zweite Kopie von Robust.exe in 8004 ändern

[Network]
   port = 8004

Sobald Sie die zwei ROBUST-Konfigurationsdateien erstellt haben (Robust.ini enthält alle Dienste außer Asset und Robust.Asssets.ini enthält nur den Asset-Service), können Sie die erste Robust.exe wie gewohnt starten.

Robust.exe

This will load Robust.ini, as we haven't specified a Robust.ini. Also, the logfile it will use will be Robust.log as we haven't manually specified one.

The second ROBUST instance we would start with

Robust.exe -inifile=Robust.Assets.ini -logfile=Robust.Assets.log

Die Option -inifile weist die zweite Robust-Instanz an, ihre Konfiguration von Robust.Assets.ini statt von Robust.ini zu laden. Die Option -logfile weist Robust.exe an, Robust.Assets.log als Protokolldatei und nicht die Standarddatei Robust.log zu verwenden. Wenn Sie diesen Schalter nicht angeben, werden möglicherweise Fehler in der Konsole für eine gesperrte Protokolldatei angezeigt.

An diesem Punkt sollten zwei Robust.exe-Instanzen ausgeführt werden.

Wenn Sie die ROBUST-Instanzen auf verschiedenen Rechnern ablegen, vergessen Sie nicht, die entsprechenden Service-URIs in jedem Simulator entsprechend anzupassen.

Da OpenSimulator-Dienste zustandslos sind (z. B. wenn jede Anforderung nicht mit anderen Anforderungen verbunden ist, sofern sie dieselben persistenten Daten betreffen), können Sie den Saldo auch laden, indem Sie mehr als eine ROBUST-Instanz mit einer Kopie desselben Dienstes starten (z. B. mehrere Assets) Dienste, die dieselbe Datenbank verwenden). Anfragen würden zwischen den Dienstkopien unter Verwendung einer HTTP-Reverse-Proxy-Implementierung (z. B. nginx) round-robined sein. Weitere Informationen finden Sie unter Performance#Services

Anmerkungen

Nützliche Diskussion zum Trennen von Robust Instanzen

Attaching your sim to someone else's grid

To set up the region server (i.e., OpenSim.exe) to connect to an external grid, follow the Configuration#Step 2: Configure an OpenSim.exe to use the ROBUST services instructions above.

The grid will have already provided with the required services. In step 2 you will need to use the provided URLs for their services.

In your bin/Regions.ini file (or other region config file) you will also need to set the grid co-ordinates to your regions provided from the grid operator. See Configuring Regions for more information.

Running an OpenSimulator standalone or grid installation with Hypergrid enabled

Hypergrid is an emerging architecture supported by OpenSimulator that allows a user with an account on one standalone or grid to visit other Hypergrid-enabled standalones or grids, and for users from those grids to visit the home grid. This does not require the two installations to share a central set of data services (assets, inventory, etc.). Please see Installing and Running Hypergrid for more details.

Further notes

Troubleshooting

See Troubleshooting

Running OpenSimulator 0.6.7 to 0.7.6.1 in 64 bit Windows

Exclamation.png

NOTE: Commits 3e5bc75 and e8ca900 move these to the directory ./share/32BitLaunch as they should no longer be needed and are slated for removal from the project'

As of OpenSimulator 0.6.7 and up to release 0.7.6.1, the default physics engine for OpenSimulator was the ODE engine. This is because ODE was the most advanced physics engine plugin at the time in OpenSimulator. Unfortunately, it has the drawback in that its library is not compilable under 64-bit in Windows.

Therefore, in order to launch the region simulator under 64-bit Windows for versions 0.6.7 to 0.7.6.1 using ODE, users may need to run:

OpenSim.32BitLaunch.exe

instead of:

OpenSim.exe

An alternative is to use the basicphysics engine instead or one of the other alternative physics engines bundled with OpenSim, though all these were less functional than the ODE plugin.

From OpenSim 0.8 the default physics engine is BulletSim. '

Hinweis zu Mono

Mono und .NET verfügen über einen eingebauten Threadpool. Standardmäßig wird OpenSimulator jedoch für viele Aufgaben so konfiguriert, dass ein Threadpool eines Drittanbieters namens SmartThreadPool verwendet wird, teilweise aufgrund von Problemen mit frühen Implementierungen des Mono-Threadpools.

Selbst mit dieser Einstellung werden jedoch einige andere Operationen mit dem eingebauten Threadpool ausgeführt. Zumindest in einigen Versionen von Mono (hauptsächlich vor 2.6) kann die Standardkonfiguration Probleme mit OpenSimulator verursachen - ThreadPool_Deadlocks auf der Website des Mono-Projekts.

Wenn dies ein Problem darstellt oder wenn der Threadpool keine verfügbaren Threads mehr hat, kann sich der Betrieb Ihrer Sim auf verschiedene Arten verlangsamen. Ein häufiges Symptom ist das Einfrieren aller Aktivitäten beim Einloggen eines neuen Avatars.

Der Parameter MONO_THREADS_PER_CPU beeinflusst die Anzahl der vorhandenen eingebauten Threadpool-Arbeiterthreads, unterhalb derer Mono immer einen neuen Thread startet, wenn OpenSimulator eine neue Aufgabe hinzufügt. Dies entspricht MONO_THREADS_PER_CPU * 4. Wenn beispielsweise auf 50 gesetzt, beträgt die Mindestanzahl der Worker-Threads 200.

Über dieser Anzahl trifft Mono eine interne Entscheidung, ob ein neuer Thread gestartet oder auf einen vorhandenen Thread gewartet wird, um seine Aufgabe abzuschließen.

Der Effekt dieses Parameters hängt stark von der Implementierung ab und ist daher von der Version von Mono abhängig, die Sie verwenden. Beispielsweise war es vor Version 2.6 definitiv sinnvoll, einen hohen Wert für MONO_THREADS_PER_CPU festzulegen, aufgrund von Problemen mit dem Mono-Threadpool. Theoretisch sollten spätere Versionen von Mono dieses Problem jedoch nicht mehr haben. Mono 2.10.8.1 hat beispielsweise eine standardmäßige MONO_THREADS_PER_CPU von 1 (ungeachtet dessen, was in der fehlerhaften Mono-Manpage steht).

Dennoch berichten manche Leute von einem Vorteil, wenn sie MONO_THREADS_PER_CPU höher als den Standardwert setzen. Die genaue Anzahl hängt von vielen Faktoren ab, darunter die Anzahl der CPUs in Ihrem Computer, wofür Sie Ihren Computer sonst verwenden, wie viele Regionen Sie in Ihrer Sim haben, wie viele davon benachbart sind, wie viele Skripte Sie haben und wie viele Avatare Sie gleichzeitig bedienen möchten. Als Referenz verwendet Wright Plaza in OSGrid, das als einzelne Region auf einem Sim läuft und regelmäßig Meetings mit 20 Avataren abhält, den Wert 125.

Zum Beispiel: $ export MONO_THREADS_PER_CPU=125

Wenn Sie also Probleme mit dem Einfrieren von Avataren haben und Ihre Hardware den empfohlenen Leistungsanforderungen entspricht oder diese übertrifft, möchten Sie möglicherweise diese Umgebungsvariable setzen.

Es gibt ein sehr einfaches Programm zur Anzeige der aktuellen Threadpool-Konfigurationseinstellungen unter https://github.com/justincc/opensimulator-tools/tree/master/analysis/threadpool-info.

All dies gilt für die minimalen Threadpool-Zahlen, nicht für die maximalen Threadzahlen. OpenSimulator selbst versucht, die maximalen Zahlen anzupassen. Die Ausgabe können Sie sehr nahe am Anfang der OpenSim.log-Datei sehen.

Increasing the stack reserve level when using OpenDynamicsEngine on *nix

If you have problems using the OpenDynamicsEngine on *nix, try setting your stack reserve level higher than the default with the following command; ulimit -s 262144 Or, run the opensim-ode.sh to start up OpenSimulator.

Firewalls

Some operation systems or distributions run their own firewall by default. If you can't access to OpenSimulator from remote client, you'll need to check their settings. See Firewall Settings for details.

Legacy Configuration Information

These are some pages containing some legacy configuration information of unknown accuracy.

OpenSim 0.6.6 legacy configuration information


Additional Optional Configuration Tasks

Further configure OpenSimulator

If you've looked through OpenSim.ini.example or any other of the config files, you'll see that there's a very large number of configurable parameters spread across multiple files. See Configuring Simulator Parameters for more details about the configuration infrastructure and how settings in identically named sections (e.g. [XEngine]) are merged by OpenSimulator on loading.

Set up a second region to run on the same simulator

See Configuring Regions.

Run Multiple Standalone Instances of OpenSimulator on the Same Server

For each subsequent instance of OpenSim, change the 'http_listener_port' in OpenSim.ini to the value excluding 9000, and 'InternalPort' in Regions.ini to the value excluding 9000. Also, make sure your regions are using different ports, as explained in Configuring Regions.

Load region content

You can load content onto regions by using the load oar command. To load individual OAR files into each region, use the 'change region [regionname]' command and then 'load oar [oar-location]'.

OpenSim.exe command line options

OpenSim.exe has command line options which allow you to perform actions such as reading configuration files from a different directory. See OpenSim.exe Command Line Options for more details.

Script engine

OpenSimulator supports multiple script engines. See ScriptEngines for details. If you don't know what this means then the default script engine will be fine. In fact, recent versions of OpenSimulator only ship with one script engine, the XEngine.

Permissions Configuration

OpenSimulator has a quite elaborate set of permissions. See Permissions (Server) for details. By default, permissions are active on region simulators.

Logging

By default, OpenSimulator logs information to a file called OpenSim.log in the bin directory. See Logging for details on how to further configure this if required.

FSAsset Service

By default the OpenSimulator asset service will store assets in the robust database. If you expect your asset data to grow larger than 50Gb you should consider changing to the FSAssets Service. (FSAssets is a new service and is currently only available in the latest development branch)

Set up other optional modules

Configuration of Web Server and Pages

OpenSimulator contains a web server that can serve up a variety of pages. Some which come from external files and some are generated internally.

Where to go from here

  • Upgrading from an old OpenSimulator version to a newer one.

References

Personal tools
General
About This Wiki