Je travaille actuellement sur une architecture ELK avec 3 nodes (2 data node et 1 non data).
J’ai des logs de types différents qui sont produits par différentes applications pour différents clients à traiter. Donc je voudrais en fait séparer les logs par types et les séparer par clients aussi pour faciliter plus tard la recherche.
Je ne sais pas ce qui serai le mieux :
Créer un index pour chaque client avec plusieurs types (qui correspondrais aux différentes applications). Nous avons 4 différents clients.
Ou alors créer un index pour chaque applications avec plusieurs types (qui correspondrais aux différents clients). Nous avons 3 /4 applications.
Combien de shards devrais-je avoir par index à votre avis ?
Les logs des clients sont globalement identique, les applications qui traitent leurs données sont les mêmes donc ils produisent les mêmes logs pour différents clients mais avec des données différentes.
Donc je mettrai un index global (mais horodaté - genre un index tous les jours ou tous les mois suivant le volume) et j'ajouterai une sécurité au dessus de tout ça pour filtrer les accès.
x-pack (plugin commercial) pourrait te simplifier la sécurisation.
D'accord mais lorsque par exemple je veux retrouver une informations dans des logs spécifiques pour un client spécifique et que j'ai accès a tout les logs, comment faire ?
La suppression des types est prévu pour quand ?
Si par exemple je créé un index avec 2 shards, est qu'au fil du temps je vois qu'il devient saturé, y'a t'il un moyen de rajouté un shard sans perte de données ?
C'est pour cela qu'un index par jour est utile. Tu changes ta stratégie quand tu vois que ça commence à grossir.
Sinon, regarde aussi le rollover index and shrunk API.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.