2015-06-05 6 views
5

मुझे अभी भी एक जीसीई कंटेनर से क्लाउड एसक्यूएल इंस्टेंस तक पहुंचने में समस्याएं आ रही हैं। जब मैं mysql को खोलने के लिए प्रयास करते हैं, मैं निम्नलिखित त्रुटि मिलती है:Google कंटेनर इंजन से Google क्लाउड एसक्यूएल तक नहीं पहुंच सकता

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial 
        communication packet', system error: 0 

कनेक्शन अपने स्थानीय मशीन से ठीक काम करता है, हालांकि (उदाहरण के लिए एक सार्वजनिक आईपी है और मैं 'की अनुमति नेटवर्क के लिए अपने कार्यालय के आईपी जोड़ लिया है ')। तो, उदाहरण इंटरनेट के माध्यम से बस ठीक है।

मुझे लगता है कि डीबी का एक्सेस कंट्रोल जीसी नेटवर्क से मेरी पहुंच को अवरुद्ध कर रहा है, लेकिन मैं यह समझने में असमर्थ हूं कि इसे कैसे कॉन्फ़िगर किया जाए।

मैंने क्लाउड एसक्यूएल कंट्रोल पैनल में "प्रोजेक्ट ऐप इंजन एप्लिकेशन" में अपनी परियोजना को जोड़ा, लेकिन यह मदद नहीं करता है।

संपादित करें: यदि मैं अनुमत नेटवर्क में "0.0.0.0/0" जोड़ता हूं, तो सभी अच्छी तरह से काम करते हैं। यह स्पष्ट रूप से नहीं है कि मैं क्या चाहता हूं, तो मुझे इसके बजाय प्रवेश करने की क्या ज़रूरत है?

EDIT2: मैं अपने Kubernetes क्लस्टर (gcloud compute instances list के माध्यम से प्राप्त) से सभी सार्वजनिक आईपी जोड़ सकते हैं और मैन्युअल रूप से बादल एसक्यूएल पहुंच सूची में उन्हें जोड़ सकते हैं। लेकिन, यह सही नहीं लगता है, है ना?

+0

हाय, मुझे एक ही समस्या है। आप ने उसके साथ कैसे सौदा किया? मुझे लगता है कि गूगल क्लाउड एसक्यूएल आईपी को Google कंटेनर इंजन से अनुमति नहीं देता है, फिर आईपी जोड़ने के लिए कहां है? और कौन सा आईपी जोड़ें? – scho

उत्तर

4

recommended solution कि 0.0.0.0/0 CIDR से SSL कनेक्शन का उपयोग करने के लिए है। यह सही कुंजी से कनेक्शन को सीमित करना है। मैंने यह भी पढ़ा है कि वे आपको एक विशिष्ट आईपी रेंज का वादा नहीं करेंगे, इसलिए सीआईडीआर/14 कुछ समय काम नहीं कर सकता है। मुझे उसी कारण से अपने क्लाउड एसक्यूएल के साथ एसएसएल कनेक्शन करना पड़ा।

+0

आह, मुझे यह लेख नहीं मिला। धन्यवाद। – Nuschk

+0

यदि पेम उस ट्यूटोरियल का पालन करें। फिर इसका उपयोग कैसे करें? – scho

+0

यह इस बात पर निर्भर करता है कि आपको इसका उपयोग करने की आवश्यकता है। शायद उससे थोड़ा अधिक जानकारी चाहिए। –

0

यदि आप अपने कंटेनर इंजन क्लस्टर के लिए/14 सीआईडीआर ब्लॉक जोड़ते हैं तो स्रोत पता सीमा उस काम को करती है?

अपने क्लस्टर के लिए सीआईडीआर ब्लॉक ढूंढने के लिए, Google Cloud Console में क्लस्टर नाम पर क्लिक करें और "कंटेनर पता श्रेणी" लेबल वाली पंक्ति खोजें।

+0

आपके सुझाव के लिए धन्यवाद। दुर्भाग्यवश, यह मुझे इसे दर्ज करने की अनुमति भी नहीं देता है। कहते हैं "निजी नेटवर्क श्वेतसूची नहीं किया जा सकता"। – Nuschk

+0

मैं फ़ायरवॉल नियम बना सकता हूं जो स्रोत श्रेणी के रूप में 10.0.0.0/8 या 10.28.0.0/14 का उपयोग करता है। –

1

आपको जीसीई उदाहरणों के सार्वजनिक आईपी पते का उपयोग अपने क्लाउड एसक्यूएल उदाहरण (जैसे आपने EDIT2 में उल्लिखित) के लिए यातायात को सही ढंग से अनुमति देने के लिए करना चाहिए।

आप क्लाउड SQL दस्तावेज में अधिक जानकारी प्राप्त कर सकते हैं: https://cloud.google.com/sql/docs/gce-access

+0

हाँ, यह काम करेगा। पकड़ यह है कि मुझे लगता है कि मैं एकल नोड्स पर क्षणिक आईपी रखना चाहता हूं। एक कंटेनर इंजन क्लस्टर बनाते समय कम से कम डिफ़ॉल्ट है। इसके अलावा, मुझे क्लस्टर में प्रत्येक नोड के लिए एक स्थिर आईपी की भी आवश्यकता होगी। लेकिन ओह ठीक है, कंटेनर इंजन (और कुबर्नेट्स) बढ़त लग रहा है, इसलिए मुझे लगता है कि मुझे इनमें से कुछ के साथ रहना है। यह सिर्फ मुझे थोड़ा परेशान कर रहा है ... – Nuschk

संबंधित मुद्दे