Elasticsearch error curl: (7) Failed to connect to localhost port 9200: Connection refused but localhost:9200 works on browser

I'm trying to connect Elasticsearch 5.5.2 to a Django 2 project:

When running : curl -X GET 'http://localhost:9200' on terminal, I got this error : curl: (7) Failed to connect to localhost port 9200: Connection refused while localhost:9200 works very well on my browser.

Here is an overview of my elasticsearch.yml file :
    # ---------------------------------- 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.attr.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.memory_lock: true
    #
    # Make sure that the heap size 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: 0.0.0.0
    #
    # Set a custom port for HTTP:
    #
    #http.port: 9200
    #
    # For more information, consult the network module documentation.
    #
    # --------------------------------- 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 master-eligible nodes / 2 + 1):
    #
    #discovery.zen.minimum_master_nodes: 3
    #
    # For more information, consult the zen discovery module documentation.
    #
    # ---------------------------------- Gateway -----------------------------------
    #
    # Block initial recovery after a full cluster restart until N nodes are started:
    #
    #gateway.recover_after_nodes: 3
    #
    # For more information, consult the gateway module documentation.
    #
    # ---------------------------------- Various -----------------------------------
    #
    # Require explicit names when deleting indices:
    #
    #action.destructive_requires_name: true

/var/log/elasticsearch/ is empty.

Please what's wrong with curl ?

Try with the IP address of your machine.

Using the IP address of my machine change nothing

Could you share elasticsearch logs? (Formatted please)

Where could I get it please ? /var/log/elasticsearch/ is empty

How did you install elasticsearch? How do you start it?

I installed it using this digitalocean link. Except I used Elasticsearch 5.5.2 version

Sorry, I just remembered I've also used pip install elasticsearch==5.5.2 and elasticsearch-dsl==5.4.0 from python.

Here is the full Python modules, if it can ever help :

Django==2.0.1
django-elasticsearch-dsl==0.4.4
django-elasticsearch-dsl-drf==0.6.3
django-nine==0.1.13
django-ormex==0.2
django-rest-elasticsearch==0.3.4
djangorestframework==3.7.7
drf-extensions==0.3.1
elasticsearch==5.5.2
elasticsearch-dsl==5.4.0
factory-boy==2.10.0
Faker==0.8.11
ipaddress==1.0.19
Pillow==5.0.0
psycopg2==2.7.3.2
python-dateutil==2.6.1
pytz==2017.3
PyYAML==3.12
six==1.11.0

That's all about elasticsearch client. Not elasticsearch server I believe.
How did you install the server?

I encourage you reading the documentation, specifically this part: https://www.elastic.co/guide/en/elasticsearch/reference/current/setup.html

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