Bonjour,
De notre côté sur Kubernetes nous utilisons ceci
https://crondev.com/elk-stack-kubernetes/
Concrètement cela lance :
-
Un elasticsearch (il n’y a pas je crois la notion de scale out, un seul nœud est lancé et je pense qu’il faut une petite adaptation à base de sidecars
pour permettre le clustering et l’ajout de nouveaux nœuds à la volée)
-
Un Kibana (automatiquement plugué sur l’elasticsearch grâce à une ConfigMap savamment formatée)
-
*DES* filebeats (C’est un Daemon Set donc il en lance 1 par minion Kubernetes, avec un montage bindé sur /var/log/containers et /var/log/pods
et /var/lib/docker/containers)
-
Un logstash
Coup de bol c’est bien dans ces deux premiers emplacements que STDOUT est logué sur les minions.
Logstash est automatiquement configuré avec Grok pour mettre les bons indexes et les bons fields en accord avec le formatage des logs faits par les Kubelets.
Pensez à éditer le YML de déploiement d’ElasticSearch : il n’est pas production ready et vous perdrez toutes les données embasées à chaque reboot du container
puisqu’il vous laisse le soin d’y ajouter ce qu’il manque pour placer les données dans un volume persistant.
L’avantage c’est que c’est natif, on ne touche pas aux containers et micro services tournant sur le cluster pour les rendre capable de shipper leur logs, c’est
filebeat qui le fait en allant fouiner dans les emplacements ou les STDOUT sont logués sur les minions.
Cela nous satisfait presque totalement ; il reste des applications qui loguent dans /var/log à l’intérieur du container au lieu de STDOUT et nous n’avons pas
encore de solution aussi élégante pour ce cas de figure (sans toucher au code source des applications).
Cordialement,
Hugo CLARIA
Directeur des Solutions Hébergées
) 06.68.41.15.22
Naitways SAS
20 rue Rouget de Lisle 92130 Issy-Les-Moulineaux
: 01.84.16.85.30 (support heure ouvrées)
: 01.83.64.04.27 (urgence, noc)
De :
FRsAG <frsag-bounces@frsag.org> au nom de F00b 4rch <f00b4rch@gmail.com>
Date : mardi 1 août 2017 à 09:06
À : "frsag@frsag.org" <frsag@frsag.org>
Objet : [FRsAG] Centralisation de logs applicatif Docker/Rancher
Bonjour,
Nous sommes en train de monter une nouvelle infra complètement «dockerisé» avec rancher (et actuellement cattle en orchestrateur, on kubernetes après).
Je souhaiterai savoir si certains d'entre vous avait déjà mis en place une solution de centralisation de logs sous du clustering micro-services (plus particulièrement du log applicatif du STDOUT des conteneurs).
Je compte monter un ELK mais peut-être avez vous vos propres retours d'XP ?
J'ai peur qu'avec ce type de solution on s'éloigne de l'idéologie d'applicatif conteneurisée.
Je prends tout, docs, articles, témoignages...
Merci à vous,
F00b4rch