मैंने रिमोट उबंटू सर्वर पर अपाचे कैसंद्रा स्थापित किया है। अपाचे कैसंद्रा डेटाबेस के लिए दूरस्थ पहुंच की अनुमति कैसे दें? और कनेक्शन कैसे बनाया जाए?अपाचे कैसंद्रा रिमोट एक्सेस
उत्तर
कैसंड्रा तक दूरस्थ पहुंच इसके बहाव बंदरगाह के माध्यम से है (हालांकि ध्यान दें कि जेएमएक्स पोर्ट का उपयोग कुछ सीमित संचालन करने के लिए किया जा सकता है)।
बचत बंदरगाह rpc_port
पैरामीटर, जो 9160. आपका कैसेंड्रा नोड के लिए चूक आपके सर्वर के नेटवर्क कार्ड का आईपी पता करने के लिए बाध्य किया जाना चाहिए द्वारा cassandra.yaml
में परिभाषित किया गया है - यह नहीं होना चाहिए 127.0.0.1
या localhost
जो लूपबैक इंटरफ़ेस का है आईपी, इसके लिए बाध्यकारी प्रत्यक्ष रिमोट पहुंच को रोक देगा। आप cassandra.yaml में rpc_address
पैरामीटर के साथ बाध्य पता कॉन्फ़िगर करते हैं। इसे 0.0.0.0
पर सेट करना "सभी नेटवर्क इंटरफेस पर सुनें" जो आपके लिए उपयुक्त हो सकता है या नहीं भी हो सकता है।
एक कनेक्शन का उपयोग कर सकते करने के लिए:
- कैसेंड्रा-CLI कैसेंड्रा वितरण के बिन निर्देशिका में सरल प्राप्त/सेट/सूची आपरेशन प्रदान करता है और जावा
- cqlsh खोल जो CQL पहुँच प्रदान करता है पर निर्भर करता है कैसेंड्रा के लिए, इस अजगर
- एक उच्च स्तर इंटरफ़ेस पर निर्भर करता है Apollo जैसे
किसी के लिए Azure का उपयोग कर, मुद्दा यह है कि आप हो सकता है वर्चुअल आईपी क्लाउड सेवा पर इंगित करने के बाद से वर्चुअल मशीन नहीं, सार्वजनिक जन पता बनाने की आवश्यकता है। आप अधिक जानकारी in this post
अब इस प्रश्न की खोज किसी के लिए मिल सकता है, शीर्ष जवाब पुराना हो चुका है।
अपाचे कैसेंड्रा की बचत इंटरफेस बहिष्कृत है और कैसेंड्रा 4.0 में निकाल दिया जाएगा। डिफ़ॉल्ट ग्राहक बंदरगाह अब 9042.
टायलर हॉब्स से बताया गया है, आप यह सुनिश्चित करें कि rpc_address पैरामीटर 127.0.0.1 या स्थानीय होस्ट (यह डिफ़ॉल्ट रूप से स्थानीय होस्ट किया जाता है) पर सेट नहीं है की आवश्यकता होगी है। आप 0.0.0.0
के लिए यह निर्धारित करते हैं तो सभी इंटरफ़ेस पर सुनने के लिए, आप भी या तो नोड के सार्वजनिक या निजी आईपी पते (आप कैसे कैसेंड्रा से कनेक्ट करने की योजना के आधार पर) के लिए broadcast_rpc_address सेट करना होगा
कैसेंड्रा-CLI भी हटा दिया गया है और अपोलो अब सक्रिय नहीं है। अपोलो के बदले का उपयोग कैसंड्रा-क्ली और Java driver के बदले करें।
मैं JMX बंदरगाह दूर से आप secure it properly जब तक एसएसएल और मजबूत प्रमाणीकरण को सक्षम करने से सुलभ बनाने की सलाह नहीं देते।
आशा है कि यह सहायक होगा।
कनेक्शन अस्वीकृत :(यहां तक कि जब मैं पोर्ट 9160 पर अपने सर्वर टेलनेट करने की कोशिश ... – user1588782
आप इन आदेशों चला सकते हैं: ps -ef | ग्रेप CassandraDaemon; netstat -lntp | ग्रेप <पीआईडी आदेश ऊपर से> यह दिखाएगा कि आपका कैसंड्रा किस आईपी/पोर्ट कॉम्बो को सुन रहा है।OutOfMemory स्थितियों को जन्म दे सकता है (यह काफी बुरा 'विशेषता है किसी भी गैर बचत डेटा में गुजर - - परीक्षण और यादृच्छिक पाठ में बचत बंदरगाह प्रकार को यह, टेलनेट पुष्टि करने के लिए एक अलग रूप में के रूप में, बचत बंदरगाह के लिए telneting से बचने की कोशिश , हिट रिटर्न, फिर अगले कुछ मिनटों में कैसंड्राडेमॉन पिड के मेमोरी उपयोग की निगरानी करें)। – CraigJPerry
ध्यान दें कि कैसेंड्रा संस्करण 0.7.0 दो साल पहले के बाद से बचत बंदरगाह पर यादृच्छिक कचरा करने के लिए मजबूत है। – jbellis