Installation Kibana
Cet article présente l'installation de Kibana
sur une machine Ubuntu
.
Un paquet est disponible, mais il est préféré d'effectuer l'installation manuellement pour gérer totalement l'installation et les mises à jour.
Sommaire
Votre avis
Nobody voted on this yet
|
|
Compte de service
Un compte de service est créé pour démarrer le serveur Kibana
. Ceci est inspiré du script post_install.sh
pour le paquet.
Dans celui-ci, le groupe et l'utilisateur sont créés séparément : https://github.com/elastic/kibana/blob/master/src/dev/build/tasks/os_packages/package_scripts/post_install.sh
Un compte kibana
est créé en système et sans possibilité de connexion, pas de home
ni de bash
.
#sudo adduser --system --no-create-home --disabled-password --shell /bin/false --group kibana Ajout de l'utilisateur système « kibana » (UID 130) ... Ajout du nouveau groupe « kibana » (GID 139) ... Ajout du nouvel utilisateur « kibana » (UID 130) avec pour groupe d'appartenance « kibana » ... Le répertoire personnel « /home/kibana » n'a pas été créé.
Attention avec cette commande le compte n'est pas ajouté automatiquement dans le groupe, contrairement au script.
Initialisation
L'application va être installée sous /var/opt/kibana
avec une organisation qui doit permettre de faciliter les montées de version.
#sudo mkdir /var/opt/kibana #sudo chown kibana:kibana /var/opt/kibana #sudo chmod 700 /var/opt/kibana
Téléchargement
L'application est téléchargée, en version 6.2.3
dans le répertoire /var/opt/kibana
avec le nom kibana-6.2.3-linux-x86_64.tar.gz
.
#sudo wget -P /var/opt/kibana https://artifacts.elastic.co/downloads/kibana/kibana-6.2.3-linux-x86_64.tar.gz
Installation
L'application va être installée sous /var/opt/kibana
, avec modification de l'emplacement racine pour être 6.2.3
.
#sudo tar --transform 's/^kibana-6.2.3-linux-x86_64/6.2.3/' -C /var/opt/kibana -xzvf /var/opt/kibana/kibana-6.2.3-linux-x86_64.tar.gz
Le fichier téléchargé peut être supprimé.
#sudo rm /var/opt/kibana/kibana-6.2.3-linux-x86_64.tar.gz
Propriétaire fichiers
L'installation a été réalisée avec le compte root
. Il est préférable de donner la propriété au compte de démarrage du serveur web, soit kibana
dans le cadre de cette installation.
#sudo chown -R kibana:kibana /var/opt/kibana
Sécurisation
Au niveau de la procédure d'installation, il est indiqué de placer les permissions pour tous les comptes. Cependant, cela présente un problème évident de sécurité. Les droits mis en place seront uniquement pour le compte d'exécution, soit kibana
dans le cadre de cet article.
#sudo chmod -R go-rwx /var/opt/kibana/6.2.3
Référencement version
Afin de faciliter les montées de versions, le lien /var/opt/kibana/installed
est mis en place pour référencer la version active.
#sudo ln -s /var/opt/kibana/6.2.3 /var/opt/kibana/installed #sudo chown -h kibana:kibana /var/opt/kibana/installed
Fichiers communs
Un répertoire common
est mis en place pour externaliser les fichiers de configurations.
#sudo mkdir /var/opt/kibana/common #sudo chown kibana:kibana /var/opt/kibana/common #sudo chmod go-rwx /var/opt/kibana/common
On déplace le répertoire de configuration dans cette externalisation.
#sudo mv /var/opt/kibana/6.2.3/config /var/opt/kibana/common/
A noter qu'aucun lien n'est mis en place dans l'instance. L'emplacement des configurations sera spécifié dans les scripts de démarrage de service.
Emplacement logs
Afin de centraliser les logs, les fichiers seront placés dans le répertoire /var/log/kibana
. Il est nécessaire de préparer l'environnement.
#sudo mkdir /var/log/kibana #sudo chown kibana:adm /var/log/kibana #sudo chmod o-rwx /var/log/kibana
A noter, les permissions sont accordées au groupe adm
comme cela est d'usage pour ce type de fichier sur une instance Linux
.
Répertoire data
Un répertoire data
est utilisé par Kibana
, dans le répertoire d'installation. Avec l'organisation mise en place, ce répertoire est déplacé dans le répertoire commun, ainsi il suffira de replacer le lien symbolique.
#sudo mkdir -p /var/opt/kibana/common/data
Les permissions mises en place sont affectées uniquement au propriétaire.
#sudo chown kibana:kibana /var/opt/kibana/common/data #sudo chmod go-rwx /var/opt/kibana/common/data
Afin de spécialisation les permissions, la commande setfacl est utilisée pour forcer les permissions pour les fichiers et répertoire créé sous le répertoire.
#sudo setfacl -dm g::0,o::0 /var/opt/kibana/common/data
Celle-ci permet de supprimer les droits d'accès pour l'ensemble des utilisateurs. Les permissions affectées au propriétaire, lecture sur fichiers et lecture + exécution sur répertoires, sont suffisantes dans ce cas.
Ainsi, les permissions sont spécifiées ainsi.
#sudo getfacl /var/opt/kibana/common/data getfacl : suppression du premier « / » des noms de chemins absolus # file: var/opt/kibana/common/data # owner: kibana # group: kibana user::rwx group::--- other::--- default:user::rwx default:group::--- default:other::---
Dans le cas où des données sont déjà générées dans ce répertoire, il est possible d'affecter les droits à toute la hiérarchie.
#sudo setfacl -Rdm g::0,o::0 /var/opt/kibana/common/data
Il peut être nécessaire de modifier de nouveau les sécurités.
#sudo chmod -R go-rwx /var/opt/kibana/common/data
Enfin, le lien symbolique est mis en place dans le répertoire d'installation.
#sudo rmdir /var/opt/kibana/6.2.3/data #sudo ln -s /var/opt/kibana/common/data /var/opt/kibana/6.2.3/data #sudo chown -h kibana:kibana /var/opt/kibana/6.2.3/data
Configuration
Les configurations de l'instance se trouvent dans le fichier kibana.yml
dans le répertoire config
. Les modifications mises en place permettent de configurer les traces dans un fichier, option logging.dest
, et l'emplacement du fichier PID
, option pid.file
.
Dans le cadre de cette installation, les traces seront créés dans le fichier /var/log/kibana/kibana.log
. Attention, il n'y a pas de configuration pour la rotation de ce fichier, qu'il faudra mettre en place avec Logrotate.
# Enables you specify a file where Kibana stores log output.
#logging.dest: stdout
logging.dest: /var/log/kibana/kibana.log
Le fichier PID
est configuré pour être créé à l'emplacement /var/run/kibana/kibana.pid
. L'existance de l'arborescence est gérée lors de l'installation du service.
# Specifies the path where Kibana creates the process ID file.
#pid.file: /var/run/kibana.pid
pid.file: /var/run/kibana/kibana.pid
Publication sous Apache
Installation service
Voir aussi
Documentation officielle: https://www.elastic.co/guide/en/kibana/6.2/targz.html
Installation paquet Debian
: https://www.elastic.co/guide/en/kibana/6.2/deb.html