2015-01-14 3 views
5

मैं Elasticsearch 1.3.4 चल रहा हूँ, ताजा मैक ओएस एक्स 10.10 पर स्थापित Homebrew के माध्यम से:Elasticsearch: कर्ल के माध्यम से कनेक्ट नहीं कर सकते, अजीब असंगत व्यवहार

$ brew install elasticsearch 
$ elasticsearch 

ब्राउज़र में http://localhost:9200/_cluster/state रनिंग सफल होता है:

{ 
    "cluster_name": "elasticsearch_jbrukh", 
    "version": 2, 
    "master_node": "q6Jzcza_RwaVvc_1u95O1Q", 
    "blocks": {}, 
    "nodes": { 
    "q6Jzcza_RwaVvc_1u95O1Q": { 
     "name": "Ethan Edwards", 
     "transport_address": "inet[/127.0.0.1:9300]", 
     "attributes": {} 
    } 
    }, 
    "metadata": { 
    "templates": {}, 
    "indices": {} 
    }, 
    "routing_table": { 
    "indices": {} 
    }, 
    "routing_nodes": { 
    "unassigned": [], 
    "nodes": { 
     "q6Jzcza_RwaVvc_1u95O1Q": [] 
    } 
    }, 
    "allocations": [] 
} 

हालांकि, निम्नलिखित कर्ल आदेश विफल रहता है:

$ curl -XGET "http://localhost:9200/_cluster/state" 
curl: (7) Failed to connect to localhost port 9200: Connection refused 

इसके अलावा, curl कमांड intermittently सफल होता है, लेकिन केवल उस यूआरएल ब्राउज़र से मारा जाता है, तो यह एक बार काम करता है और फिर उपर्युक्त त्रुटि के साथ फिर से विफल होने लगता है।

मैं इसे कैसे ठीक कर सकता हूं?

+1

। मैंने पाया कि एडब्ल्यूएस पर m3.medium उदाहरण पर मेरे मुद्दों के लिए यह मामला था। सभी मुद्दों के लिए नहीं, लेकिन आप में से कुछ को बहुमूल्य समय बचा सकता है। –

उत्तर

22

जैसा कि मैंने एक समान प्रश्न here पर पहले उत्तर दिया था। मेरे मैक ओएस एक्स पर, मैं http://localhost:9200/ के बजाय 127.0.0.1:9200/ का उपयोग करता हूं क्योंकि मुझे एक ही समस्या थी।

मुझे लगता है कि जब आप कमांड का उपयोग करते हैं तो टर्मिनल स्थानीयहोस्ट को इसके आईपीवी 6 पते से बदल देता है और मुझे यकीन नहीं है कि कर्ल इसका समर्थन करता है।

कृपया जांचें और मुझे बताएं।

+0

हां, मैं पुष्टि कर सकता हूं कि यह मामला है। धन्यवाद। – Jake

7

मुझे एक ही समस्या थी (ओएस एक्स 10.10 & ईएस 1.3.4)।

त्वरित समाधान के साथ आईपीवी 4 उपयोग करने के लिए कर्ल मजबूर करने के लिए है --ipv4

curl --ipv4 -XGET "http://localhost:9200/_cluster/state" 

(कम से कम मेरे लिए यह काम किया)

स्थायी समाधान /etc/hosts संपादित करें और इस लाइन बाहर टिप्पणी करने के लिए है

#fe80::1%lo0 localhost 
0

मुझे एक समान समस्या समस्या मिल रही है, लेकिन ऐसा लगता है कि यह दूसरी तरफ है।

लोचदार खोज आईपीवी 6 पर सुन रहा है लेकिन आईपीवी 4 नहीं। मेरे क्लाइंट से बात करने के लिए मजबूर करने के लिए (मेरे मामले में नोड जेएस ड्राइवर [1]), मैंने पाया कि ipv6 localhost के लिए नोटेशन इसे हिट करने का एकमात्र तरीका है: http://[::1]:9200

[1] https://github.com/elastic/elasticsearch-js/

बहुत समय खर्च इस त्रुटि संदेश की जांच कर रहे हैं, जैसे मैंने किया, सेवा के बारे में 1 मिनट के निदान के लिए क्या किसी गैर-मौजूद समस्या हो सकती है प्रयास करने से पहले पहली बार शुरू करने के लिए देने के पहले
संबंधित मुद्दे