ES - Debian 8 - PB - port 9200

Bonjour,

Voila 3 jours que je bataille,
j'ai installé ES sur Debian 8 tout semble ok ,
dans /etc/elasticsearch/elasticsearch.yml
j'ai bien mis network.host: localhost et dès que je test :
curl -X GET 'http://localhost:9200'

Réponse :
curl: (7) Failed to connect to localhost port 9200: Connection refused

Je pense que le Pb vient plus de Linux que ES,
j'ai trouvé beaucoup sur le sujet "Hosts, SeLinux.." mais je ne trouve pas,

Si c'est arrivé à d'autres, je suis preneur !

Merci.

Franck

Au cas où, essaye 127.0.0.1 à la place.

Est-ce que le service tourne vraiment? Tu le vois dans ps -ef | grep java?

Bonjour David,

Cette commande n'a pas l'air de fonctionner su Debian,
quand je fais /etc/init.d/elasticsearch status

il y a l'air d'avoir une erreur :
Active: failed (Result: exit-code) since Fri 2016-03-18 07:10:58 CET; 5s ago
-Des.default.path.conf=${CONF_DIR} (code=exited, status=1/FAILURE)

et quand je fais : netstat -atp tcp | grep -i "listen" les Ports 9200 à 9300 ne sont pas présent en écoute par java,

Un idée ?

Merci.

Non. Aucune.

À part ton fichier de config qui peut être incorrect et faire planter au démarrage ?

Sinon dans les logs y a quoi ?

Dans /var/log/elasticsearch# il y a rien

ds mon fichier de config j'ai juste modifier "network.host: localhost"

et sinon autre piste,

j'ai bien java version "1.8.0_74" faut il paramétrer JAVA_HOME ? ou autre...

Si tu supprimes ta modification, est-ce que le service démarre ?

Ca marche !!!!

Merci Guru !

Des jours que je cherche... Conclusion en localhost ne pas toucher à la conf !

Donc, ça veut dire que ton fichier elasticsearch.yml est incorrect.

Peux-tu refaire la manip et copier ici ou sous un gist.github.com exactement le contenu ?

Quand ca marchait pas network.host:localhost était décommenté.

 # ======================== Elasticsearch Configuration =========================
    #
    # NOTE: Elasticsearch comes with reasonable defaults for most settings.
    #       Before you set out to tweak and tune the configuration, make sure you
    #       understand what are you trying to accomplish and the consequences.
    #
    # The primary way of configuring a node is via this file. This template lists
    # the most important settings you may want to configure for a production cluster.
    # 
    # Please see the documentation for further information on configuration options:
    # <http://www.elastic.co/guide/en/elasticsearch/reference/current/setup-configuration.html>
    # 
    # ---------------------------------- Cluster -----------------------------------
    # 
    # Use a descriptive name for your cluster:
    # 
    # cluster.name: my-application

    #
    # ------------------------------------ Node ------------------------------------
    #
    # Use a descriptive name for the node:
    #
    # node.name: node-1
    #
    # Add custom attributes to the node:
    #
    # node.rack: r1
    #
    # ----------------------------------- Paths ------------------------------------
    #
    # Path to directory where to store the data (separate multiple locations by com$
    #
    # path.data: /path/to/data
    #
    # Path to log files:
    #
             #
    # ------------------------------------ Node ------------------------------------
    #
    # Use a descriptive name for the node:
    #
    # node.name: node-1
    #
    # Add custom attributes to the node:
    #
    # node.rack: r1
    # 
       # node.rack: r1
    #
    # ----------------------------------- Paths ------------------------------------
    #       
    # Path to directory where to store the data (separate multiple locations by comma):
    #
    # path.data: /path/to/data
    # 
    # Path to log files:
    # 
    # path.logs: /path/to/logs
    # 
    # ----------------------------------- Memory -----------------------------------
    # 
    # Lock the memory on startup:
    # 
    # bootstrap.mlockall: true
    #
    # Make sure that the `ES_HEAP_SIZE` environment variable is set to about half the memory
    # available on the system and that the owner of the process is allowed to use this limit.
    #
    # Elasticsearch performs poorly when the system is swapping the memory.
    #
    # ---------------------------------- Network -----------------------------------
    #
    # Set the bind address to a specific IP (IPv4 or IPv6):
    #
    # network.host: 192.168.0.1
    # network.host:localhost
    # 
    # Set a custom port for HTTP:
    # 
    # http.port: 9200
    # 
    # For more information, see the documentation at:
    # <http://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html>
    #
    # --------------------------------- Discovery ----------------------------------
    # 
    # Pass an initial list of hosts to perform discovery when new node is started:
    # The default list of hosts is ["127.0.0.1", "[::1]"]
    #
    # discovery.zen.ping.unicast.hosts: ["host1", "host2"]
    #
    # Prevent the "split brain" by configuring the majority of nodes (total number of nodes / 2 + 1):
    #
    # discovery.zen.minimum_master_nodes: 3
    # discovery.zen.minimum_master_nodes: 3
    #
    # For more information, see the documentation at:
    # <http://www.elastic.co/guide/en/elasticsearch/reference/current/modules-discovery.html>
    # 
    # ---------------------------------- Gateway -----------------------------------
    # 
    # Block initial recovery after a full cluster restart until N nodes are started:
    # 
    # gateway.recover_after_nodes: 3
    # 
    # For more information, see the documentation at:
    # <http://www.elastic.co/guide/en/elasticsearch/reference/current/modules-gateway.html>
    # 
    # ---------------------------------- Various -----------------------------------
    # 
    # Disable starting multiple nodes on a single system:
    #
    # node.max_local_storage_nodes: 1
    # 
    # Require explicit names when deleting indices:
    # 
    # action.destructive_requires_name: true

Peux-tu modifier ton post?

Utiliser la fonction preformatted text pour le formatter proprement ?

Par ailleurs, je ne vois pas la modif network.host quand ça ne fonctionne pas.

j'ai update.

Il y a un problème d'indentation et je ne vois pas la ligne avec network.host qui est active...

Bref, ce que je veux dire c'est qu'il arrive souvent que l'indentation du fichier YAML soit incorrecte. Or YAML est très sensible.

Donc si ton service ne démarre pas et qu'il n'y a pas de logs, c'est que tu as peut-être mis un espace our une tabulation en trop.

l'indentation est dû au Copier/coller depuis nano, le fichier est comme il faut, mais c'était important de le préciser.

Effectivement :

network.host: 192.168.0.1

network.host:localhost

aucun network.host d'actif et ca marche bien en localhost... magic or not ?

Sinon j'ai trouvé network.host:localhost il faut un espace entre ":" et "localhost", du coup :
network.host: localhost

Fonctionne, donc oui le fichier elasticsearch.yml est très très sensible ! CQFD

Merci David.