I would like to know if the configuration of my ELK server is correct

Hi, I would like to know if the configuration of my ELK server is correct :

Comme le document est en français, je déplace ta question dans #in-your-native-tongue:discussions-en-francais

Tu devrais cibler un peu plus ta question à mon avis .

The important thing is the orders. The comments are in French but it's not important.

Maybe there is an option in google to translate the document.

Up to you but if you want to get an answer IMHO you should ask more specific questions than sharing a full installation document, and written in French.

My 2 cents.

Salut,

Je pense que @dadoonet a raison, découpe ton installation et pose une question spécifique.
Je ne pense pas qu'il y ait beaucoup de non Francais qui utilise OVH et puisse ton conseiller sur la configuration de ton serveur.

Sinon si tu veux des commentaires: il y'a deux erreurs de commentaire page 5:

Redémarrer apache
$ sudo systemctl restart nginx

Page 5 aussi si tu veux avoir le A+ active le hsts

Tester le certificat sur SSL Server Test (Powered by Qualys SSL Labs) les ip doivent obtenir le grade A

Vu que tu rediriges tout le contenu 80 sur 443

Faut rajouter cette ligne dans le bloc server {}

add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";

listen 80 default_server;
    ....
    location / {
        return 301 https://monitoring.example.com$request_uri;

Pour la redirection cette syntaxe est plus flexible plutôt que de répéter le nom de domaine.

   rewrite ^(.*)$ https://$server_name$REQUEST_URI permanent;

Sinon pour l'ordre vu que c'est l'objet de ta question, je pense qu'il est correct. :grin:

merci pour les corrections. ELK est il correctement installé et configuré ?

N'ayant aucune information sur ce que tu veux faire je ne peux pas répondre. Si tu utilises ton installation pour traiter N Zeta logs non si c'est pour faire des tests pour un TP oui.
Pour la configuration aussi ça dépend de ton contexte.

Autre remarque je viens de regarder à quoi correspond un serveur S1-2 chez OVH
https://www.ovh.com/fr/public-cloud/instances/tarifs/
Et d’après la page des tarifs l'instance a 2G ram, par convention (j'ai appris ça à l’école et ça peut-être changé depuis) la swap c'est 2 x la ram donc 4 G, mais t'as que 10G de disque :sweat: donc 1 G peux suffire.

Créer un fichier swap

$ sudo fallocate -l 1G /swapfile

Sinon à propos de ram faut définir la valeur de HEAP pour elastic et j'ai rien vu dans ton document qui y faisait référence.

Par défaut c'est 1G donc la moitié de la mémoire sur ton instance. Donc dans le cas de ta configuration tu peux ignorer. Mais juste au cas ou si t'as zapé cette config et je pense qu'il est préférable de mettre une note a propos.

Pour info j'ai des configurations avec 512 de heap et ça tourne bien. [avec < 100 index / shards et < 3~4 Millions de documents] juste pour te donner un ordre de grandeur.
C'est pas des serveurs que j'utilise en production donc j'ai aussi moins de contrainte, c'est lent au boot et je suis tout seul à accéder.

Merci, effectivement je n'ai pas fais attention à la RAM. ELK doit surveiller 2 serveurs distants avec Filebeat et les modules system, nginx et mysql.
Je vais faire un autre document avec la configuration de Filebeat sur le serveur distant.

Pour faire plus simple tu peux utiliser filebeat avec elastic directement t'as pas besoin de logstash...
Apres ca depends de tes besoins.

Je pense garder Logstash pour découvrir ELK.
J'ai installé Filebeat sur mon serveur distant www.example.com mais il ne communique pas avec Logstash. J'ai appliqué la configuration ci-dessus pour monitoring.example.com et voici celle pour www.example.com :

Sur le serveur client
https://pastebin.com/C2cz6RVa

Sur le serveur ELK
https://pastebin.com/Bnz0bbMr

Sur ELK :

Elasticsearch

ubuntu@monitoring-example-com:~$ curl -v http://localhost:9200
* Rebuilt URL to: http://localhost:9200/
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 9200 (#0)
> GET / HTTP/1.1
> Host: localhost:9200
> User-Agent: curl/7.58.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< content-type: application/json; charset=UTF-8
< content-length: 517
< 
{
  "name" : "monitoring-example-com",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "Evr7J-FJSWW7JBnZqWAfKg",
  "version" : {
    "number" : "7.0.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "e4efvb5",
    "build_date" : "2019-04-29T12:56:03.145736Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.7.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
* Connection #0 to host localhost left intact

Kibana

ubuntu@monitoring-example-com:~$ curl -v http://localhost:5601
* Rebuilt URL to: http://localhost:5601/
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 5601 (#0)
> GET / HTTP/1.1
> Host: localhost:5601
> User-Agent: curl/7.58.0
> Accept: */*
> 
< HTTP/1.1 302 Found
< location: /app/kibana
< kbn-name: kibana
< kbn-xpack-sig: c84b5f8679c25c04ce5r61b0d3b45afe
< content-type: text/html; charset=utf-8
< cache-control: no-cache
< content-length: 0
< connection: close
< Date: Sat, 18 May 2019 15:27:15 GMT
< 
* Closing connection 0

Logstash

ubuntu@monitoring-example-com:~$ curl -v http://localhost:5044
* Rebuilt URL to: http://localhost:5044/
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 5044 (#0)
> GET / HTTP/1.1
> Host: localhost:5044
> User-Agent: curl/7.58.0
> Accept: */*
> 
* Recv failure: Connection reset by peer
* stopped the pause stream!
* Closing connection 0
curl: (56) Recv failure: Connection reset by peer

Il y a un problème avec ma configuration Logstash

Je ne saurai que te conseiller d'ouvrir un nouveau sujet dans le salon dédié à logstatsh avec seulement la configuration de Logstash.
Tu auras plus de chances de trouver une solution.

Je pense que ça fait pas mal à gérer avec seulement elastic, Kibana et tous les beats, tu pourras revenir vers Logstash si t'en a vraiment besoin.
De ce que je comprends de tes besoins tu peux t'en passer.

Si tu veux aller plus profond dans elastic essaye de monter un cluster et joue avec les snapshots. Si tu veux aller en production tu peux pas te permettre de rouler avec un serveur et pas être capable de gérer des pannes et des upgrades de versions, plus:

Merci, je vais ouvrir une nouvelle question pour Logstash.

C'est quoi la différence entre cette configuration SSL :
https://www.elastic.co/guide/en/beats/filebeat/current/configuring-ssl-logstash.html

input {
  beats {
    port => 5044
    ssl => true
    ssl_certificate_authorities => ["/etc/ca.crt"]
    ssl_certificate => "/etc/server.crt"
    ssl_key => "/etc/server.key"
    ssl_verify_mode => "force_peer"
  }
}

et celle ci :
https://www.supinfo.com/articles/single/2499-logstash

input {
  beats {
    port => 5044
    ssl => true
    ssl_certificate => "/etc/pki/tls/certs/logstash-forwarder.crt"
    ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
  }
}

Sur pas mal d'articles, l'entrée Logstash est configurée différemment.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.