Monitoring Serveur Jeu

De Free 4 Funs
Révision de 18 mai 2014 à 17:23 par Let's Go (discuter | contributions) (Introduction)

Aller à : navigation, rechercher
Munin.jpg

Introduction

Nous allons vous expliquer comment générer des graphs qui vous permettront de voir la consommation cpu, ram, internet etc... de votre serveur de jeu. Les jeux supportés sont :

Team Fortress 2,
Counter-Strike: Source,
Day of Defeat: Source
et de tous les mods sur la base de ces jeux..

Requis

serveur web (apache2 et php5)
munin munin-node
port 4949 en TCP (Vérification : netstat -tupan | grep 4949)


Installation

Connectez vous en ROOT à putty.

Pour ceux qui désirent ne pas installer cette version, exécutez simplement :

 apt-get install munin munin-node munin-plugins-extra


Dans le fichier /etc/munin/munin.conf, enlevez les # pour activer la configuration :

 dbdir	/var/lib/munin
htmldir /var/cache/munin/www
logdir /var/log/munin
rundir /var/run/munin

Dans le fichier /etc/munin/apache.conf :

Retirer ou mettez un # devant la ligne :

 Allow from localhost 127.0.0.0/8 ::1

remplacer par :

Allow from localhost VOTRE_IP/32 ::1


Redémarrer Apache et Munin :

/etc/init.d/munin-node restart
/etc/init.d/apache2 restart


Placez vous dans un répertoire, comme dans tous nos tutoriels, nous utilisons l'utilisateur serveur :

 su serveur && cd ~


On télécharge l'archive :

 wget http://css.setti.info/download/munin_srcds_plugin/munin_srcds_plugin.tar.gz

On décompresse :

 tar -xvf munin_srcds_plugin.tar.gz && cd munin_srcds_plugin

Exécuter ces commandes une après les autres...

 su root
 cp -R * /usr/share/munin/plugins/
 chmod -R 644 /usr/share/munin/plugins/Rcon.pm
 chmod -R 755 /usr/share/munin/plugins/srcds_*


On édite le fichier /etc/munin/plugin-conf.d/munin-node :

 nano /etc/munin/plugin-conf.d/munin-node

ajouter à la fin :

 [srcds_*]
 env.srcdspass votre_pass_rcon

puis sauvegarder la modification (CTRL + X puis O).


Création des liens symboliques :

 cd /etc/munin/plugins/
 ln -s /usr/share/munin/plugins/srcds_cpu_ srcds_cpu_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_fps_ srcds_fps_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_inout_ srcds_inout_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_players_ srcds_players_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_uptime_ srcds_uptime_VOTRE.IP_VOTRE_PORT

Remplacez VOTRE_IP par l'IP du serveur et VOTRE_PORT par le port du serveur CS:S.

Exemple :

 ln -s /usr/share/munin/plugins/srcds_cpu_ srcds_cpu_192.168.1.2_27015
ln -s /usr/share/munin/plugins/srcds_fps_ srcds_fps_192.168.1.2_27015
ln -s /usr/share/munin/plugins/srcds_inout_ srcds_inout_192.168.1.2_27015
ln -s /usr/share/munin/plugins/srcds_players_ srcds_players_192.168.0.2_27015
ln -s /usr/share/munin/plugins/srcds_uptime_ srcds_uptime_192.168.0.2_27015


Vérification : La commande munin-node-configure devrait vous donner ceci :

... Plugin | Used | Extra information
------ | ---- | -----------------
...
srcds_cu_ | yes | VOTRE.IP_VOTRE_PORT
srcds_fps_ | yes | VOTRE.IP_VOTRE_PORT
srcds_inout_ | yes | VOTRE.IP_VOTRE_PORT
srcds_players_ | yes | VOTRE.IP_VOTRE_PORT
srcds_uptime_ | yes | VOTRE.IP_VOTRE_PORT

...

Si vous obtenez un message d'erreur pour les plugins :

# Got junk from srcds_cpu_: Could not parse server address from filename.

Ceci signifie que votre serveur est hors ligne !

On redémarre munin :

 /etc/init.d/munin-node restart

Maintenant on regarde si il nous retourne bien les FPS du serveur de jeu :

 munin-run srcds_fps_VOTRE.IP_VOTRE_PORT

Il nous retourne => fps.value 537. (Tout dépend de la machine et de sa configuration...)

Patientez cinq minute puis dans votre navigateur, entrer le lien suivant : http://votre_domaine.com/munin et regardez la partie Sourceds.


Vous avez plusieurs serveurs et vous souhaitez obtenir la même chose ?

Suivez le guide xD :

On ré-édite le fichier /etc/munin/plugin-conf.d/munin-node :

 nano /etc/munin/plugin-conf.d/munin-node

Supprimer cette partie :

 [srcds_*]
 env.srcdspass votre_pass_rcon


Ajouter  :

 [srcds_fps_VOTRE.IP_27015]
 env.srcdspass pass
 [srcds_cpu_VOTRE.IP_27015]
 env.srcdspass pass
 [srcds_players_VOTRE.IP_27015]
 env.srcdspass pass
 [srcds_inout_VOTRE.IP_27015]
 env.srcdspass pass
 [srcds_uptime_VOTRE.IP_27015]
 env.srcdspass pass
 [srcds_fps_VOTRE.IP_27025]
 env.srcdspass pass2
 [srcds_cpu_VOTRE.IP_27025]
 env.srcdspass pass2
 [srcds_players_VOTRE.IP_27025]
 env.srcdspass pass2
 [srcds_inout_VOTRE.IP_27025]
 env.srcdspass pass2
 [srcds_uptime_VOTRE.IP_27025]
 env.srcdspass pass2


Création des liens symboliques :

 cd /etc/munin/plugins/
 ln -s /usr/share/munin/plugins/srcds_cpu_ srcds_cpu_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_fps_ srcds_fps_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_inout_ srcds_inout_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_players_ srcds_players_VOTRE.IP_VOTRE_PORT
ln -s /usr/share/munin/plugins/srcds_uptime_ srcds_uptime_VOTRE.IP_VOTRE_PORT

Remplacez VOTRE_IP par l'IP du serveur et VOTRE_PORT par le port du serveur CS:S.

Exemple :

 ln -s /usr/share/munin/plugins/srcds_cpu_ srcds_cpu_192.168.1.2_27025
ln -s /usr/share/munin/plugins/srcds_fps_ srcds_fps_192.168.1.2_27025
ln -s /usr/share/munin/plugins/srcds_inout_ srcds_inout_192.168.1.2_27025
ln -s /usr/share/munin/plugins/srcds_players_ srcds_players_192.168.1.2_27025
ln -s /usr/share/munin/plugins/srcds_uptime_ srcds_uptime_192.168.1.2_27025


Vous pouvez ajouter tout les serveurs que vous voulez en respectant notre exemple ci-dessus cependant il semblerais qu'après un certains nombres (> 5), munin semble ne plus fonctionner correctement.

VOTRE.IP correspond à l'IP LAN du serveur de jeux (ifconfig sous linux) :

192.168.1.2 par exemple

Astuce :

Dans la ligne de commande, ajouter cette ligne :

 +rcon_password votre_pass_rcon

et supprimer la ligne correspondant dans le fichier server.cfg, cela sécurisera en même temps votre mot de passe rcon !

On redémarre munin :

 /etc/init.d/munin-node restart

Un petit aperçu :
Munin srcds players 27020.png

Lien source : css.setti.info/code/munin-srcds

Licence du tutoriel : by-nc-nd