Installation du plugin logstash-input-jdbc

L’installation du plugin logstash-input-jdbc permet d’indexer des tables de base de données avec l’aide de logstash. Il faut préalablement avoir installer la stack elastic, le tuto se trouve sur mon blog.

Le serveur utilisé est un Ubuntu 16.04 64bits LTS.

Il faut se rendre dans ce répertoire

cd /usr/share/logstash/bin/
Et taper la commande ci-dessous
./logstash-plugin install logstash-input-jdbc
Une fois le plugin installé vous pourrez ensuite suivre les procédures pour la configuration de la connexion avec les différentes base de données
Mysql
Mssql Server
Oracle

Configuration de logstash et mysql

Pour pouvoir récupérer les données d’une base de données mysql via logstash, il faut avoir installer le plugin logstash-input-jdbc (voir le tuto). Puis récupérer le connecteur java et le copier.

Installation du connecteur

L’opération n’est à faire qu’une seule fois.

Tout d’abord, il faut créer le dossier qui accueillera le connecteur

  mkdir /usr/share/logstash/vendor/jdbc-mysql -p

Ensuite, il faut télécharger le connecteur via le site ci-dessous et copier le fichier mysql-connector-java-5.1.44-bin.jar  (le nom du fichier peut changer selon la version téléchargée) dans le dossier créé ci-dessus.

https://dev.mysql.com/downloads/connector/j/

Une fois le fichier dans son répertoire, il faut ensuite modifier les droits

 chown logstash:logstash /usr/share/logstash/vendor/jdbc-mysql -Rvf

A partir de ce moment vous pouvez créer un fichier de configuration pour connecter une table mysql à logstash.

Création d’un fichier de configuration

 nano /etc/logstash/conf.d/config_mysql_nomdematable.config

Et y mettre le contenu ci-dessous

input {
  jdbc {
    jdbc_driver_library => "/usr/share/logstash/vendor/jdbc-mysql/mysql-connector-java-5.1.44-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://ipserveur:3306/nomdelabase"
    jdbc_user => "utilisateurquipeutseconnecter"
    jdbc_password => "motdepasse"
    statement => "SELECT * FROM nomdelatable"
  }
}
output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
    index => "nomdelatable"
    document_type => "nomdelatable"
    document_id => "%{id}"
  }
}
Il faut penser à modifier les informations de connexion à la base de données.
Le champ document_id => « %{id} » est à adapter en fonction de votre table dans mon cas la clef primaire est id.
Une fois le fichier créé, il faut ensuite exécuter la commande ci-dessous pour lancer l’indexation.
cd /usr/share/logstash/bin
./logstash -f /etc/logstash/conf.d/config_mysql_nomdelatable.config
Une fois les commandes lancées, selon la taille de la table, il faudra peut être attendre un peu.

Installation d’Apache PHP 5 MySQL 5

Tout le monde a eu besoin un jour d’installer un serveur web pour stocker un blog, une galerie photo ou autres choses.

En associant le serveur web apache, le langage PHP et le serveur de base de données, vous aurez tout ce qu’il vous faut pour débuter.

Installation d’apache

#apt-get install apache2

Après l’installation, il est de suite opérationnel. Vous pouvez le tester en ouvrant un navigateur et en allant à l’adresse http://(ip de votre serveur). Si tout va bien, vous verrez apparaître une page qui affiche « It works ». Si ca ne fonctionne pas vous pouvez essayer de relancer le daemon.

#/etc/init.d/apache2 restart

Installation de php 5

#apt-get install php5 php5-common php5-gd php5-cli php5-mysql php5-mhash php5-mcrypt

Après l’installation, il faudra redémarrer le daemon d’apache (avec la commande données plus haut)

Comment tester ?

Vous pour mettre un fichier index.php dans le dossier /var/www/

Dans ce fichier vous insérez le code ci-dessous

<?php phpinfo(); ?>

Avec votre navigateur, vous allez à l’adresse http://(ip de votre serveur)/index.php. Si ca fonctionne, vous verrez un page avec toutes les informations concernant la configuration de php.

Je détaillerai dans d’autres articles la configuration de php. (affaire à suivre)

Installation de MySQL 5

#apt-get install mysql-server

L’assistant de l’installation vous demandera quelques informations qui ne sont pas compliquées à renseigner. Par contre, il faudra bien mémoriser le mot de passe root de la base de données sinon vous ne pourrez pas vous y connecter.

Pour administrer la base de données, il est possible d’installer phpmyadmin.

#apt-get install phpmyadmin

Il se peut que vous ayez à redémarrer le daemon d’apache (même commande que plus haut).

Pour gérer la base de données, vous pouvez vous rendre sur http://(adresse ip de votre serveur)/phpmyadmin

Si tout fonctionne bien vous allez arriver sur une page d’authentification, où vous allez pouvoir renseigner le login (root) et mot de passe (celui que vous avez saisi lors de l’installation de mysql).

Installation Apache & PHP & MySQL (Ubuntu/Debian)

Pour installer le célèbre serveur web apache sur debian ou ubuntu, c’est très simple.

On commence à mettre à jour la liste des paquets afin d’avoir la dernière version.

$sudo apt-get update

Installation d’Apache :

$sudo apt-get install libapr1 apache2 apache2.2-common apache2-utils apache2-mpm-worker

Installation de PHP5

$sudo apt-get install php5-common php5 php5-gd libapache2-mod-php5 php5-mysql

Installation de MySQL 5

$sudo apt-get install mysql-server

Installation de PhpMyAdmin (pour la gestion de mysql)

$sudo apt-get install phpmyadmin

Par défaut, les fichiers du site seront dans /var/www.

Pour redémarrer le serveur apache, il faut faire :

$sudo /etc/init.d/apache restart

Pour modifier la base de données MySQL, rendez-vous à cette adresse :

http://localhost/phpmyadmin/

Dans un prochain tuto, j’utiliserai les virtual host pour héberger plusieurs sites sur le même serveur.