Impossible d'ouvrir une connexion TCP vers localhost:9200 (Connexion refusée - connect(2) pour “localhost” port 9200) (Faraday::ConnectionFailed)
J'obtiens l'erreur: Puma pris cette erreur: impossible d'ouvrir une connexion TCP vers localhost:9200 (Connexion refusée - connect(2) pour "localhost" port 9200) (Faraday::ConnectionFailed) dans mon application rails dans ubuntu 14.04.
ci-dessous est la sortie de mon élastique de recherche dans le terminal:
prashanth@prashanth-OptiPlex-390:~$ sudo service elasticsearch restart
* Starting Elasticsearch Server prashanth@prashanth-OptiPlex-390:~$ sudo service elasticsearch start
* Starting Elasticsearch Server * Already running. [ OK ]
prashanth@prashanth-OptiPlex-390:~$ curl -X GET 'http://localhost:9200'
curl: (7) Failed to connect to localhost port 9200: Connection refused
prashanth@prashanth-OptiPlex-390:~$
voici mon élastique paramètres de recherche dans /etc/elasticsearch/elasticsearch.yml
fichier
network.host: 127.0.0.1
transport.tcp.port: 9200
http.port: 9200
description de l'erreur:
Puma caught this error: Failed to open TCP connection to localhost:9200 (Connection refused - connect(2) for "localhost" port 9200) (Faraday::ConnectionFailed)
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:882:in `rescue in block in connect'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:879:in `block in connect'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/timeout.rb:91:in `block in timeout'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/timeout.rb:101:in `timeout'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:878:in `connect'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:863:in `do_start'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:852:in `start'
/home/prashanth/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/net/http.rb:1398:in `request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/adapter/net_http.rb:83:in `perform_request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/adapter/net_http.rb:41:in `block in call'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/adapter/net_http.rb:88:in `with_net_http_connection'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/adapter/net_http.rb:33:in `call'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/rack_builder.rb:139:in `build_response'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/faraday-0.10.1/lib/faraday/connection.rb:377:in `run_request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/elasticsearch-transport-5.0.0/lib/elasticsearch/transport/transport/http/faraday.rb:23:in `block in perform_request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/elasticsearch-transport-5.0.0/lib/elasticsearch/transport/transport/base.rb:257:in `perform_request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/elasticsearch-transport-5.0.0/lib/elasticsearch/transport/transport/http/faraday.rb:20:in `perform_request'
/home/prashanth/.rvm/gems/ruby-2.3.1/gems/elasticsearch-transport-5.0.0/lib/elasticsearch/transport/client.rb:128:in `perform_request'
- si vous venez de lancer "elasticsearch" dans le terminal, il va commencer?
Vous devez vous connecter pour publier un commentaire.
Dans les paramètres que vous avez posté, votre HTTP et TCP ports ont le même numéro de port attribué
Je suggère de changer le
transport.tcp.port
et d'essayer de nouveau.Essayez d'utiliser les paramètres par défaut si vous avez déjà de port 9300 en cours d'utilisation:
Si vous rencontrez toujours des problèmes, vous devrez peut-être ouvrir les ports de votre programme de pare-feu. Sur Ubuntu, il est probable que UFW.
Si votre service de script dispose d'une fonction d'état, ce qui peut vous dire si votre Elasticsearch instance a démarré correctement ou pas. À défaut, vous pouvez utiliser
ps aux
pour déterminer si elle est en cours d'exécution.Ou
Comme l'a souligné à de semblables questions, le roulage peut donner un refusé erreur de connexion lorsque Elasticsearch n'est pas en cours d'exécution (source: Faraday::ConnectionFailed, Connexion refusée - connect(2) pour “localhost” port 9200 Erreur Ruby on Rails).
Avez-vous Docker? La seule solution pour moi a été unninstall Docker complètement.
Sinon c'est, je pense que le problème est quelque chose sur le port que docker utilisation.
Si vous n'utilisez pas beaucoup comme moi, il suffit de l'enlever et vous êtes bon pour aller.