2016-02-04 8 views
8

मैं एक क्लाउडक्ल डेटाबेस से कनेक्शन के साथ एक कंटेनर बना रहा हूं, जब मैं कुबर्नेट्स के साथ छवि चलाता हूं इसमें कोई बाहरी आईपी नहीं है जिसका उपयोग मैं नई छवि को डेटाबेस से कनेक्ट करने की अनुमति देने के लिए कर सकता हूं। लेकिन चूंकि यह init कॉन्फ़िगरेशन का हिस्सा है, मैं यह जानने के लिए इंतजार नहीं कर सकता कि श्वेतसूची डेटाबेस में जोड़ने के लिए सार्वजनिक आईपी क्या है।कुबर्नेट सेवा के साथ अपने क्लाउड SQL इंस्टेंस से कैसे कनेक्ट करें?

मुझे पता है कि एक ही क्लस्टर में सेवाओं के माध्यम से डेटाबेस कनेक्ट करने के तरीके हैं, लेकिन मैं यह नहीं समझ सकता कि Google द्वारा प्रदान किए गए क्लाउडक्ल के साथ कैसे कनेक्ट किया जाए।

+3

मैं कुबर्नेट्स से बहुत परिचित नहीं हूं, लेकिन क्या आप क्लाउड एसक्यूएल प्रॉक्सी को अपने कुबेरनेट नोड्स पर चला सकते हैं और कनेक्ट करने के लिए इसका उपयोग कर सकते हैं? https://cloud.google.com/sql/docs/sql-proxy – Vadim

+1

मैं जांचने जा रहा हूं और मैं आपको बताता हूं, धन्यवाद @ वादिम! – agares

+0

क्या आप क्लाउड-एसक्यूएल को अपने नोड्स आईपी पते के बारे में नहीं बता सकते हैं? यह बिल्कुल सही है, मैं समझता हूं, लेकिन नए कंटेनर केंद्रित दुनिया और मौजूदा वीएम केंद्रित दुनिया के बीच एक विसंगति है। –

उत्तर

6

है कि हल करने के लिए दो तरीके हैं:

पहला विकल्प निर्देश उपलब्ध का उपयोग कर एक cloudsql प्रॉक्सी का उपयोग करने के लिए है: आप यह सुनिश्चित करें कि फ्यूज में उपलब्ध है की जरूरत है https://cloud.google.com/sql/docs/sql-proxy

अपने डोकर छवि में अपने स्थापना, मेरा मामला नहीं था (उबंटू का उपयोग करके: ट्रस्टी-20160119 आधार छवि के रूप में)। आप में सक्षम है कि करने के लिए की जरूरत है, तो अपने Dockerfile में निम्न चरणों का उपयोग:

# install fusermount 
# RUN apt-get install build-essential -y 
# RUN wget https://github.com/libfuse/libfuse/releases/download/fuse_2_9_5/fuse-2.9.5.tar.gz 
# RUN tar -xzvf fuse-2.9.5.tar.gz 
# RUN cd fuse-2.9.5 && ./configure && make -j8 && make install 

फिर अपने कंटेनर के प्रारंभ होने पर आप एक स्क्रिप्ट है कि सॉकेट https://cloud.google.com/sql/docs/sql-proxy#example_proxy_invocations_and_connection_strings में वर्णित के रूप खोलने बनाना होगा।

दूसरा तरीका सिर्फ ips से ips को अनुमति देने के लिए है जो क्लाउडक्ल के लिए श्वेतसूची में कुबेरनेट क्लस्टर का समर्थन करता है।

मैं पहला विकल्प पसंद करता हूं, क्योंकि यह किसी भी मशीन में काम करता है जिसे मैं छवि तैनात करता हूं और मुझे क्यूबनेटेट क्लस्टर में अधिक नोड्स वितरित करने की आवश्यकता होने पर मुझे जोड़ने या निकालने की आवश्यकता नहीं है।

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