Partage
  • Partager sur Facebook
  • Partager sur Twitter

Aide pour réaliser un panel de serveurs de jeux

Sujet résolu
19 septembre 2018 à 13:50:59

Bonjour à tous !

Si je viens vers vous aujourd'hui c'est que je suis un peu perdu... Je ne sais pas par quoi commencer et quoi apprendre.

J'ai effectué quelques recherches de mon côté mais je n'ai pas toutes mes réponses..

Je vais tout d'abord vous décrire se que je souhaite réaliser. Je souhaite en premier lieu réaliser un panel de serveurs de jeux.

J'imagine donc qu'il faut des connaissances côté web et logiciel. Il faut donc par conséquent que mon site web soit lié à mon serveur dédié fait tourner les serveurs de jeux (le serveur est sous linux debian 8 pour info)

J'ai donc plusieurs questions pour vous !

Premièrement comment appel t-on un logiciel qui execute des tâches mais qui en parallèle communique et exécutes ses tâches sous les ordres d'un site internet ? J'ai entendu parmer de FrameWork mais ce n'est pas ça ?

Ensuite quels sont les connaissances requises pour réaliser ce genre de projet ? Les languages de programmation requis etc... ?

Et pour finir quels conseil avez vous à me donner ?

Merci d'avances pour vos contributions !

  • Partager sur Facebook
  • Partager sur Twitter
19 septembre 2018 à 16:43:42

A la vue des tes connaissances, je pense que tu t'attaque à beaucoup trop gros pour débuter.

Pour la premier question, on parle souvent d'API ( application programming interface ) pour exposer / appeler des fonctionnalités entres plusieurs applications indépendantes.

Qu'est-ce que tu veux faire exactement ? Lancer des serveurs de jeux pour toi même ? Ou que chacun puisse lancer à la volée son propre serveur de jeu sur ton serveur dédié ?

Pour le premier cas, autant installer le serveur en suivant la doc des différents jeux, et créer une API sous forme de scripts bash pour les démarrer / arrêter. (et appeler ces scripts depuis une application web)

Le deuxième cas est beaucoup plus complexe, car il suppose de pouvoir lancer plusieurs fois le même serveur de jeu. Il va donc falloir leur créer pour chacun d'entre eux un contexte particulier. En effet, de nombreux serveur utilise les variables d’environnement  système pour leur paramétrage; ce qui pose problème si on veut lancer deux serveur avec des paramètres différents.

La solution la plus simple est d'utiliser Docker, qui permet de créer différents contextes pour chaque conteneurs. Toutefois la sécurité d'un tel système à ses limites, et ils ne doit pas être possible aux utilisateur d'exécuter du code arbitraire sur leur serveurs (donc pas de mods).

L'autre solution plus complexe, mais un peu plus sécurisées, et d'utiliser des machine virtuelle (VM). Chaque machine virtuelle s'occupera d'une seule instance d'un serveur, et sera totalement isolé des autres. Sous linux, j’utilisais KVM, (ou openstack si je compte avoir plusieurs serveurs dédiés pour répartir mes machines virtuelles).

Pour la sécurité, que ce soit des VM ou Docker, le réseau des machines virtuelles / containeurs doit être configuré pour n'avoir accès qu'à internet (pas de dialogue possible entre les VM / containers ). Il faut également rajouter des filtres pour éviter des scripts malicieux (tels que Ddos) qui pourraient être lancé depuis les MV (ce qui peut arriver si un mod malicieux est installé).

Concernant le pilotage de la solution choisie, je prendrais un langage supportant le temps réel ( Java ou nodejs ) de façon à pouvoir afficher sur l'interface web le statut des serveurs en temps réels.

  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2018 à 8:18:45

D

-
Edité par Florentin 7 octobre 2018 à 20:04:39

  • Partager sur Facebook
  • Partager sur Twitter
7 octobre 2018 à 20:04:15

Sebajuste a écrit:

A la vue des tes connaissances, je pense que tu t'attaque à beaucoup trop gros pour débuter.

Pour la premier question, on parle souvent d'API ( application programming interface ) pour exposer / appeler des fonctionnalités entres plusieurs applications indépendantes.

Qu'est-ce que tu veux faire exactement ? Lancer des serveurs de jeux pour toi même ? Ou que chacun puisse lancer à la volée son propre serveur de jeu sur ton serveur dédié ?

Pour le premier cas, autant installer le serveur en suivant la doc des différents jeux, et créer une API sous forme de scripts bash pour les démarrer / arrêter. (et appeler ces scripts depuis une application web)

Le deuxième cas est beaucoup plus complexe, car il suppose de pouvoir lancer plusieurs fois le même serveur de jeu. Il va donc falloir leur créer pour chacun d'entre eux un contexte particulier. En effet, de nombreux serveur utilise les variables d’environnement  système pour leur paramétrage; ce qui pose problème si on veut lancer deux serveur avec des paramètres différents.

La solution la plus simple est d'utiliser Docker, qui permet de créer différents contextes pour chaque conteneurs. Toutefois la sécurité d'un tel système à ses limites, et ils ne doit pas être possible aux utilisateur d'exécuter du code arbitraire sur leur serveurs (donc pas de mods).

L'autre solution plus complexe, mais un peu plus sécurisées, et d'utiliser des machine virtuelle (VM). Chaque machine virtuelle s'occupera d'une seule instance d'un serveur, et sera totalement isolé des autres. Sous linux, j’utilisais KVM, (ou openstack si je compte avoir plusieurs serveurs dédiés pour répartir mes machines virtuelles).

Pour la sécurité, que ce soit des VM ou Docker, le réseau des machines virtuelles / containeurs doit être configuré pour n'avoir accès qu'à internet (pas de dialogue possible entre les VM / containers ). Il faut également rajouter des filtres pour éviter des scripts malicieux (tels que Ddos) qui pourraient être lancé depuis les MV (ce qui peut arriver si un mod malicieux est installé).

Concernant le pilotage de la solution choisie, je prendrais un langage supportant le temps réel ( Java ou nodejs ) de façon à pouvoir afficher sur l'interface web le statut des serveurs en temps réels.

D'accord, Merci pour tes informations !

De mon côté je pense réaliser une installation pour chaque serveur donc passer par une API bash

Après je pensais combiner javascript et nodejs pour le panel après dans les faits comment réaliser cela je suis un peu perdu, aurais tu des documentations ce sujet ? Je n'en trouve pas vraiment..

  • Partager sur Facebook
  • Partager sur Twitter