Simulateur Autonome Réseau local MySQL : tuto détaillé

De OSWiki
Aller à la navigation Aller à la recherche

Préparation du PC

Le PC La simulation
Ressources Installation
Système d'exploitation Configuration
Carte graphique Lancement
Réseau local Connexion
Mono Comptes utilisateur
MySQL Sauvegarde
Port

Ressources nécessaires

Ressources pour créer un petit réseau local

  • au moins deux ordinateurs,
  • switch : Un switch ou commutateur réseau va interconnecter les ordinateurs du réseau local. Le nombre d'entrées d'un switch est variable, cela va de 4 à plusieurs centaines selon les modèles.
  • 1 Câble RJ45 (non croisé) par ordinateur.

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, si la simulation accueille un ou très peu d'avatars et s'il n'y a pas beaucoup 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. Dans le cas d'un simulateur hors réseau, les régions ne seront pas occupées par beaucoup d'avatars.
Disque dur Un disques durs de bureau ( 7200 trs/min, 3.5") devraient suffire.

Voir [2]

Ressources minimales pour utiliser un viewer

  • Machine : le navigateur 3D (viewer) sera installé sur le même ordinateur.
  • CPU :Dual-core avec un support SSE2
  • Carte graphique NVidia ou ATI/AMD graphics chip,
  • RAM : 2GB RAM,
  • Exemples de viewers :

Le système d'exploitation de l'ordinateur du simulateur

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

Dans la configuration d'un simulateur en réseau local, vous pouvez vous connecter depuis tous les ordinateurs du réseau. Pour cela il faudra une carte graphique et son driver pour chaque ordinateur utilisé pour se connecter à la simulation. 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.

Configurer le réseau local

Installation matérielle

  • Brancher les ordinateurs au switch à l'aide des câbles RJ45.
  • N'oubliez pas de brancher le switch au secteur.

Configuration

La configuration du réseau local se fait sur tous les ordinateurs du réseau local.

  • Cherchez parmi les applications Ubuntu "Connexions réseau" et ouvrez l'application.
  • Ajoutez une connexion réseau Ethernet. Pressez sur le bouton "Créer". Une nouvelle fenêtre s'ouvre.
    • Sous l'onglet 'Ethernet', donnez un nom à la connexion et choisissez l'adresse MAC de votre machine.
    • Sous l'onglet 'Paramètres IPv4' selectionnez la méthide 'Lien-local uniquement'.
  • Depuis la barre de menu de votre bureau, connectez-vous au réseau local. Puis ouvrez la fenêtre des informations sur la connexion.
  • Notez l'adresse IP de votre ordinateur dans le réseau local. Vous en aurez besoin pour configurer votre simulateur et les navigateurs 3D des autres ordinateurs du réseau. Ici sur l'images l'adresse IP est 169.254.49.144.

Installation de Mono sur l'ordinateur du simulateur

Qu'est-ce que 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 [3]

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

Installation du serveur MySQL sur l'ordinateur du simulateur

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

Port sur l'ordinateur du simulateur

Si vous n'êtes pas connecté à un réseau étendu comme internet, l'activation du pare-feu n'est pas indispensable. Mais, suivant les configurations l'activation du pare-feu sera peut-être nécessaire et dans ce cas, vous devrez ouvrir le port du simulateur sur l'ordinateur du simulateur.

Pour activer le pare-feu, avec les droits d'administrateur, lancez cette commande dans un terminal :

sudo ufw enable

Pour ouvrir le port 9000:

sudo allow 9000

Pour désactiver le pare-feu :

sudo ufw disable

Le simulateur

Installation d'OpenSimulator

tar -xvzf http://opensimulator.org/dist/opensim-0.9.2.1.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 opensim-<version>.tar.gz et renommez le dossier décompressé.
  • Vous pouvez faire cela en lignes de commande. Tapez lez commandes suivantes dans un terminal en remplaçant <version> par la version d'opensim installée.
cd Téléchargements
rm http://opensimulator.org/dist/opensim-0.9.2.1.tar.gz
mv opensim-<version> opensim

Configurer OpenSimulator

OpenSim.ini

  • Ouvrez le fichier /bin/OpenSim.ini dans un éditeur de texte.
  • Dans la section [Const] remplacez 127.0.0.1 par l'IP de l'ordinateur du simulateur dans le réseau local et les ports public et privé par le port du simulateur (ici 9000 est un exemple).
BaseHostname = "169.254.XXX.XXX"
PublicPort = "9000"
PrivatePort = "9000"
  • Si vous avez utilisé un port différent de 9000, 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>

StandaloneCommon.ini

Utilisation de MySQL

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 StandaloneCommon.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;"

Autres configurations

  • Ouvrez le fichier /bin/config-includes/StandaloneCommon.ini dans un éditeur de texte.
  • Dans la section [GridInfoService] remplacez le nom de votre simulateur son surnom respectivement dans :
gridname = "simulation locale"
gridnick = "locale"
  • Dans le section [UserProfilesService] vous pouvez activer l'utilisation des profils par les utilisateurs en remplaçant false par true ainsi:
Enabled = true

Enresgistrer votre fichier. Nous avons terminé la configuration d'OpenSimulator.

Lancement

Dans un terminal lancer les commandes suivantes :

cd /home/<utilisateur>/Téléchargements/opensim/bin
./opensim.sh

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]: Entrée
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 de l'ordinateur dans le réseau local.
New estate name [My Estate]: Entrée
Estate owner first name [Test]: Donnez un prénom à votre avatar
Estate owner last name [User]: Donnez un nom à votre avatar
Password: Entrez un mot de passe
Email: Entrée ou votre adresse email.
User ID [1bcffbc4-590d-4905-b6e7-592febdb4b65]: Entrée

Ces informations seront enregistrées dans le fichier /bin/Regions/Regions.ini et dans la base de données du simulateur.

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

Se connecter à la simulation (région)

Installer un navigateur 3D sur les machines du réseau local

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 tous les ordinateurs du réseau local en dehors de celui du simulateur.

L'adresse de connexion (Login URI) de votre simulateur est : http://<IP du simulateur dans le réseau local>:<port du simulateur>/

Par exemple, si l'IP est 169.254.49.144 et le port est 9000 l'adresse du simulateur est http://169.254.49.144:9000/

  • 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 l'adresse du simulateur.
  • Pressez sur le bouton "Rafresh Grid URLs".
  • Si vous n'avez pas de message d'erreur et que le nom du simulateur 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.

Pour une standalone non connectée par exemple tapez dans Grid Manager :

localhost:9000

Entrer vos informations de connexion

  • 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 par exemple Argentoratum
  • Pressez sur le bouton Log In,
  • Prêt pour une immersion dans un monde virtuel OpenSimulator !

Créer d'autres utilisateurs

  • Pour créer de nouveaux comptes vous pouvez installer un site web. Cela sera décrit plus tard sur ce wiki et un lien sera ajouté ici.
  • Vous pouvez aussi créer un nouveau compte en utilisant cette commande dans la console du simulateur.
 create user 

Plusieurs questions vous seront posées, répondez ainsi:

Questions Réponses
First name [Default]: Entrez le prénom de l'avatar
Last name [User]: Entrez le nom de l'avatar
Password: Entrez le mot de passe du compte
Email []: Entrez l'adresse mail de l'utilisateur
User ID [11949b76-3f3f-48b8-a506-eb4bf1a48b92]: Entrée
Model name []: Prénom et nom séparés par un espace du compte qui servira de modèle pour l'apparence de l'avatar.

Vous pourrez créer plusieurs comptes modèles et transformer leur apparence dans le monde virtuel pour les charger au moment de la création des comptes utilisateur.

Sauvegarder une région

Archive de la 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