Simulateur Grille Hypergrid Internet MySQL : tuto détaillé

De OSWiki
Révision datée du 26 décembre 2017 à 17:24 par Acryline (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche
Le PC La simulation
Ressources Installation
Système d'exploitation Configuration
Carte graphique Lancement
Mono Connexion
MySQL Sauvegarde
Port
Nat Loopback


Préparation du PC

Ressources nécessaires

Ressources pour lancer un simulateur

CPU Une règle approximative de base consiste à dire qu'il faudrait avoir un core par région normalement utilisée avec un total minimum de 2 cores. Mais on peut utiliser moins de CPU, les régions ne sont pas occupées simultanément par des avatars, ou par exemple, s'il y a moins de scripts.

Voir [1]

Mémoire En règle générale, une région avec beaucoup d'avatars, 15000 ou plus de primitives et 2000 scripts peut utiliser 1 Go de mémoire. Donc un simulateur avec 4 régions de ce type peut avoir besoin de 4 Go. Mais on peut utiliser moins de mémoire, si les régions ne sont pas occupées simultanément par des avatars, ou par exemple, s'il y a moins de scripts.
Disque dur Un disques durs de bureau ( 7200 trs/min, 3.5") devraient suffire.

Voir [2]

Réseau Une règle de base très approximative est d'avoir 500 kbit de débit montant et 80 kbit de débit descendant par avatar enregistré simultanément sur une région pour un simulateur connecté.

Voir [3]

Ressources minimales pour utiliser un viewer

  • Connexion internet : suivant les besoins, pour un simulateur connecté Câble ou ADSL
  • CPU :Dual-core avec un support SSE2
  • Carte graphique NVidia ou ATI/AMD graphics chip,
  • RAM : 2GB RAM,
  • Système d'exploitation :
    • Windows XP ou plus récent,
    • Ubuntu Linux 10.04 ou plus récent,
    • Mac OS X 10.6 ou plus récent.
  • Exemples de viewers :
  • Ressources: page System Requirements de Secondlife.

Le système d'exploitation

Vous pouvez installer d'autres distributions Linux ou d'autres versions plus récentes d'Ubuntu, mais les types de systèmes proposés ci-dessous sont ceux décrits par OSWiki. Avec d'autres versions vous serez peut-être confrontés à certaines variations plus ou moins importantes.

Télécharger Ubuntu Desktop 20.04 LTS pour un ordinateur

Choisissez la version qui convient au type de processeur de votre ordinateur.

Installer votre système d'exploitation

Ce wiki n'est pas destiné à expliquer comment installer Ubuntu. Veuillez vous référer à la documentation de la distribution :

Mise à jour des serveurs

Pour ouvrir un terminal dans Ubuntu tapez sur les tourches Ctrl+Alt+T.

Après avoir installé votre serveur, tapez les commandes suivantes dans un terminal :

sudo apt update
sudo apt upgrade
sudo apt-get autoremove

Gestion de la carte graphique

Vous pouvez vous connecter à une région OpenSimulator depuis l'ordinateur du simulateur. Pour cela il faudra une carte graphique et son driver. Ci-dessous, vous trouverez quelques liens qui vous aiderons à configurer votre carte graphique sous Ubuntu. Peut-être que vous n'y trouverez pas les informations dont vous avez besoin. Dans ce cas, faites des recherches sur internet, dans la documentation Ubuntu, vous trouverez probablement la réponse à vos questions. Vous pouvez également poser des questions sur le canal IRC #ubuntu-fr ou #ubuntu.

Installation de Mono

Qu'est-ce que Mono ?

OpenSimulator est développé en C# (C Sharp). Le C# est un langage de programmation orienté objet, commercialisé par Microsoft depuis 2002 et destiné au développement sur la plateforme Microsoft .NET.

Mono est une mise en œuvre open source de la plateforme de développement Microsoft .NET. Mono peut être utilisé sous GNU/Linux, Microsoft ou MacOS.

Installation de Mono sur Ubuntu

Dans un terminal tapez la commande :

sudo apt-get install mono-complete

Installer une nouvelle version

Parfois la version de Mono de votre système d'exploitation ne fonctionne pas. Par exemple si votre version est inférieur à mono 5.12 et que vous avez installé OpenSim supérieur ou égal à 0.9.1.

Dans ce cas il faudra désinstaller la version de mono de votre système et Installer la version dont vous avez besoin. Voir [4]

Versions de Mono : https://download.mono-project.com/sources/mono/

Installation du serveur MySQL

MySQL est un Système de Gestion de Base de Données (SGBD) utilisé par OpenSimulator. SQLite est le SGBD par défaut des simulateurs OpenSim.

Pour installer MySQL taper la commande suivante dans un terminal (vous devez avoir les droits d'administration de votre machine) :

sudo apt-get install mysql-server 

Un mot de passe vous sera demandé pour le serveur de bases de données.

Création de la base de données

  • Se connecter à MySQL depuis un terminal en mode administrateur.
mysql -u <utilisateur> -p 

Il n'est plus nécessaire de renseigner le mot de passe mais il faut par contre lancer la commande mysql avec l'utilisateur correspondant.

  • Depuis l'invite MySQL, créer une base de données.
CREATE DATABASE <Nom de la bdd du simulateur>;
  • Créer un utilisateur pour la base de données :
CREATE USER "<Nom de l'utilisateur de la bdd du simulateur>"@"localhost";
  • Créer le mot de passe de l'utilisateur.
SET password FOR "<Nom de l'utilisateur de la bdd du simulateur>"@"localhost" = password('<mot de passe>');

ou pour MySQL 8.0 ou supérieur :

SET password FOR "<Nom de l'utilisateur de la bdd du simulateur>"@"localhost" = '<mot de passe>';
  • Donner tous les droits sur la base de données à l'utilisateur :
GRANT ALL ON <nom_bdd>.* TO "<Nom de l'utilisateur de la bdd du simulateur>"@"localhost";
  • Quitter MySQL
quit

Autre solution

Vous pouvez utiliser Phpmyadmin, interface graphique de connexion à Mysql. Mais cette solution est moins sécurisée.

Pour aller plus loin

Commandes Mysql utiles

Ouvrir et rediriger le port du simulateur

Ouvrir le port du simulateur

Prenons par défaut le port 9000. (Vous pouvez remplacer ce port et utiliser le port de votre choix s'il n'est pas déjà assigné).

  • Voir l'état du pare-feu
sudo ufw status numbered
  • Activer le pare-feu
sudo ufw enable
  • Ouvrir le port 9000
sudo ufw allow 9000
  • Désactiver le pare-feu
sudo ufw disable

Rediriger le port du simulateur

Tutoriel très bien fait sur WikiHow

Le Nat Loopback

Une région hébergée sur une connexion domestique avec une box nécessite la fonctionnalité "NAT Loopback". Cette fonctionnalité permet à une machine de votre réseau local de se connecter à un simulateur également sur votre réseau local. Si votre routeur/modem ne permet pas le Nat Loopbak, alors les clients extérieurs seront capables de se connecter à la région mais les clients de votre réseau local ne le pourront pas.

Pour savoir si votre routeur/modem permet cette fonctionnalité et pour plus d'informations référez vous à la page Nat Loopback du wiki OpenSimulator.

Installation du simulateur

Installation d'OpenSimulator

Conditions d'utilisation

Renseignez-vous sur les conditions de connexion d'un simulateur à la grille de votre choix sur le site d'accueil de la grille. Vous pourrez :

  • savoir si une grille permet la connexion d'un simulateur et, si oui, ses conditions de connexion,
  • connaître la version d'OpenSimulateur adaptée à la grille,
  • parfois, télécharger l'archive d'installation adaptée à la grille avec les fichiers de configuration partiellement pré-configurés.

Quoi qu'il en soit, vous devrez créer un compte sur la grille de connexion de votre simulateur et c'est ce compte que vous utiliserez.

Dans ce tutoriel, nous allons utiliser la version opensim-0.9.2.1. Adaptez vos configurations aux fichiers de la grille. Cela ne devrait pas poser de gros problèmes, à moins d'utiliser une version très ancienne d'OpenSimulator.

Vous trouverez les autres versions d'OpenSimulator via ce lien.

Installation

tar -xvzf  <archive telechargée >.tar.gz

Vous pouvez supprimer l'archive compressée et renommer le dossier (par exemple opensim). Faisons l'hypothèse que vous avez téléchargé OpenSimulator dans le dossier "Téléchargements" de votre installation.

  • Depuis Nautilus, explorateur de fichier d'Ubuntu, cherchez dans votre dossier utilisateur (home/<utilisateur>) le dossier "Téléchargements" puis, supprimez le fichier <archive telechargée >.tar.gz et renommez le dossier décompressé.
  • Vous pouvez faire cela en lignes de commande. Tapez les commandes suivantes dans un terminal en remplaçant les caractères inférieur < et supérieur > et le texte qu'ils encadrent comme il se doit.
cd Téléchargements
rm <archive telechargée>.tar.gz
mv <dossier décompressée> opensim

Configuration d'OpenSimulator

OpenSim.ini

Si la grille de connexion fournit une archive d'installation, utilisez le fichier OpenSim.ini préconfiguré associé. Vous n'aurez qu'à modifier le port de votre simulateur si ce n'est pas le port 9000.

  • Ouvrez le fichier /bin/OpenSim.ini dans un éditeur de texte.
  • Dans la section [Const] remplacez 127.0.0.1 par l'IP de connexion ou le nom de domaine de la grille et les ports public et privé par ceux de la grille.

IP ou nom de domaine fourni par les administrateurs de la grille :

BaseHostname = "XXX.XXX.XXX.XXX" 

Ces ports peuvent être différent, ils seront fournis par les administrateurs de la grille.

PublicPort = "8002"
PrivatePort = "8003"
  • Si vous avez utilisé un port différent de 9000 pour votre simulateur, vous devez l'indiquer dans la section [Network] à la ligne :
;http_listener_port = 9000

Décommentez cette ligne et remplacez le numéro du port.

 http_listener_port = <port du simulateur>
  • Dans la section [Architecture]

- Commentez la ligne d'activation de Standalone.ini en ajoutant un point virgule en début de ligne

;Include-Architecture = "config-include/Standalone.ini"

- Décommentez la ligner d'activation de GridHypergrid.ini en supprimant le point virgule

Include-Architecture = "config-include/GridHypergrid.ini"

GridCommon.ini

Créer le fichier

Si le fichier bin/config-include/GridCommon.ini n'existe pas dans votre archive, ouvrez le fichier GridCommon.ini.example dans un éditeur de texte et enregistrez-le dans le même dossier, avec le nom GridCommon.ini.

  • Dans le section [Hypergrid] décommentez les lignes :
;HomeURI = "${Const|BaseURL}:${Const|PublicPort}"
;GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}"

Ce qui donnera

HomeURI = "${Const|BaseURL}:${Const|PublicPort}"
GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}"

Connexion à la base de données

Nous allons indiquer à OpenSim que nous voulons utiliser une base de données MySQL à la place se la base de données par défaut SQLite.

Éditer le fichier GridCommon.ini contenu dans le dossier /bin/config-includes/ de votre installation OpenSimulator. Vous pouvez utiliser l'éditeur de texte Gedit.

En haut du fichier vous pouvez voir les deux lignes suivantes.

; SQLite
 Include-Storage = "config-include/storage/SQLiteStandalone.ini";


La deuxième ligne active l'utilisation du SGBD SQLite, ce que nous ne voulons plus. Ainsi, nous allons commenter cette ligne avec un point virgule. Ce qui donnera :

; SQLite
; Include-Storage = "config-include/storage/SQLiteStandalone.ini";

Maintenant, nous allons activer l'utilisation d'un SGBD MySQL et nous allons indiquer les paramètres de connexion à la base de données créée dans le chapitre précédent. Un peu plus bas vous pouvez voir le lignes :

; MySql
; Uncomment these lines if you want to use mysql storage
; Change the connection string to your db details
; StorageProvider = "OpenSim.Data.MySQL.dll"
; ConnectionString = "Data Source=localhost;Database=test;User ID=new;Password=newNEW;Old Guids=true;"

Nous allons décommenter les deux dernières lignes et indiquer dans la dernière les paramètres de connexion à la base de données du simulateur. Ce qui donner :

; MySql
; Uncomment these lines if you want to use mysql storage
; Change the connection string to your db details
 StorageProvider = "OpenSim.Data.MySQL.dll"
 ConnectionString = "Data Source=localhost;Database=<Nom de la bdd du simulateur>;User ID=<Nom de l'utilisateur de la bdd du simulateur>;Password=<mot de passe>;Old Guids=true;"

Lancement du simulateur

Dans un terminal lancer les commandes suivantes :

cd /home/<utilisateur>/Téléchargements/opensim/bin
mono OpenSim.exe

Des informations sur le déroulement du lancement du simulateur s'affichent dans la console. Le défilement s'arrête de temps en temps pour poser des questions auxquelles vous répondrez ainsi:(vous donnerez ces informations seulement au premier lancement du simulateur.)

Questions Réponses
New region name []: Donner un nom à votre région.
RegionUUID [27bcc083-cf9f-4116-b962-01e3255961ab]: Entrée pour définir cette valeur
Region Location [1000,1000]: Se renseigner pour trouver des coordonnées disponibles sur la grille de connexion (carte ou administration).
Internal IP address [0.0.0.0]: Entrée
Internal port [9000]: Entrée ou un port de votre choix. Toutefois, ce port doit correspondre à celui de la configuration.
Resolve hostname to IP on start (for running inside Docker) [False]: Entrée
External host name [SYSTEMIP]: IP externe de l'ordinateur ou non de domaine.
New estate name [My Estate]: Entrée
Estate owner first name [Test]: Donnez le prénom de l'avatar de votre compte pour la grille de connexion
Estate owner last name [User]: Donnez le nom de l'avatar de votre compte pour la grille de connexion

Ces informations seront enregistrées dans le fichier /bin/Regions/Regions.ini et dans les fichiers .db de l'installation et dans la base de données de la grille..

Le simulateur reste connecté tant que l'invite de commande Region (<nom de la région>) # est affichée dans la console du simulateur.

Pour déconnecter le simulateur tapez la commande

quit

Connexion à la simulation (région)

Installer un navigateur 3D

Téléchargez soit Singularity soit Firestorm

Décompresser l'archive du navigateur

tar -xvzf <archive_du_navigateur_3D>.tar.gz

Configurer les navigateur 3D

Cette configuration pourra être faite sur tout ordinateur connecté à internet et ayant les ressources nécessaires pour se connecter au simulateur.

L'adresse de connexion (Login URI) de la grille est : http://<IP externe ou nom de domaine de la grille>:<port public de la grille>/

Par exemple, si l'IP est 255.255.255.255 et le port public est 8002 l'adresse du simulateur est http://255.255.255.255:8002/

  • Dans le navigateur 3D Singularity , allez dans le menu Edit/preferences. Une fenêtre s'ouvre.
  • Pressez sur le bouton "Create". Dans le champs "login URI" tapez le loginURI de la grille.
  • Pressez sur le bouton "Rafresh Grid URLs".
  • Si vous n'avez pas de message d'erreur et que le nom de la grille s'affiche dans la liste déroulante "Gris or login URI", alors, votre navigateur est bien configuré.

Se connecter avec le navigateur 3D

Ouvrir le navigateur

Ouvrez votre navigateur. En bas de la fenêtre vous voyez la barre de connexion.

Si cela n'est pas déjà fait, sélectionnez la grille de votre choix à partir du menu déroulant Grid Manager. La page d'accueil de la grille doit s'afficher.

Viewer-singularity.png

Entrer vos informations de connexion

Barre connexion.png

  • Entrez le prénom de votre avatar puis un espace et enfin son nom dans le champs Username,
  • Entrez votre mot de passe dans le champs Password,
  • Dans la liste des grilles choisir la grille de connexion,
  • Pressez sur le bouton Log In,
  • Prêt pour une immersion dans un monde virtuel OpenSimulator !

Connexion.png

Utiliser l'hypergrid

Aller sur une autre grille ou simulation

Les méthodes de téléportation
  1. Méthode 1

Ouvrir la carte, dans la zone de recherche taper le login URI de la grille ou de la simulation de destination :

http://<IP ou nom de domaine >:port

Téléportez-vous comme si vous alliez sur une autre région d'une grille.

  1. Méthode 2

Si vous connaissez le nom de la région de destination, procédez comme pour la méthode 1, mais ajoutez le nom de la région à l'adresse, ainsi :

http://<IP ou nom de domaine>:port:<nom de la région>
  1. Méthode 3

On vous a donnée une Landmark. Utilisez-là pour vous téléporter.

  1. Méthode 4

Vous utilisez le viewer (navigateur 3D) Firestorm, vous pouvez utiliser le protocol "hop" qui est utilisé dans sa barre d'adresse qui prend la forme :

hop://<IP ou nom de domaine>:port:<nom de la région>
Avant de se téléporter

Avant de vous téléporter n'oubliez pas

  • de définir votre "home". c'est très utile pour revenir rapidement à la maison,
  • de placer dans votre "suitecase" tous le items de votre inventaire dont vous aurez besoin sur votre terre d'accueil.

Revenir sur le simulateur

Pour revenir vous pouvez procéder comme quand vous vous téléportez vers d'autres grilles/simulations.

Si vous avez défini votre "home" avant de vous téléporter depuis votre région, vous pouvez utiliser le bouton "home" de la carte pour revenir très rapidement.

Sauvegarder une région

Un OAR (OpenSim Archive Region) est un fichier qui va contenir tous les composants et les configurations d'une région. Cet OAR va pouvoir être restauré sur une autre simulation, être partagé ou archivé.

Pour faire un OAR tapez la commande suivante à l'invite de commande de votre simulation :

save oar <adresse de l'OAR sur l'ordinateur>.tar.gz

À la place de l'extension .tar.gz on peut utiliser .oar

Pour restaurer une région sauvegardée, il suffit de taper la commande suivante à l'invite de commande de votre simulation :

load oar <adresse de l'OAR sur l'ordinateur>.tar.gz

Ces commandes disposent de certaines options pour gérer les permissions, fusionner l'OAR, le déplacer ou l'orienter différemment. Pour plus d'information en anglais, tapez dans votre console :

help save oar

ou

help load oar

Sauvegarde de la base de données

Pour sauvegarder la base de données tapez la commande suivante dans un terminal (bdd_simulation correspond au <Nom de la bdd du simulateur>):

mysqldump -u root -p bdd_simulation > bdd_simulation_backup.sql

Si vous devez restaurer une base de données, tapez la commande suivante dans un terminal en remplaçant "chemin" et "bdd_simulation" comme il se doit:

mysql -u root -p bdd_simulation < /chemin/bdd_simulation.sql