2015-03-02 20 views
5

मैंने सेंस-क्लाइंट पैकेज के अंदर उबंटू 14.04 के आधार पर एक अनुकूलित डॉकर छवि बनाई है।डॉकर कंटेनर के अंदर सेंस-क्लाइंट

सबकुछ ठीक हो गया है लेकिन अब मैं सोच रहा हूं कि मेजबान मशीन से चलाने के लिए मैं चेक कैसे ट्रिगर कर सकता हूं।

उदाहरण के लिए, मैं मेजबान मशीन पर चल रहे प्रक्रियाओं को जांचने में सक्षम होना चाहता हूं न कि केवल कंटेनर के अंदर चल रहे हैं।

धन्यवाद

उत्तर

0

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

0

होस्ट मशीन पर सेंस-क्लाइंट जोड़ें? हो सकता है कि आप इसे विभाजित करना चाहें ताकि आपके मेजबान

अन्यथा - आपको अंदर से रिपोर्ट करने के लिए कुछ रास्ता सेट करना होगा - या तो कुछ निम्न स्तर (सिस्टम कॉल इत्यादि) का उपयोग करके आपको कंटेनर वीएस समस्याओं में समस्याओं के बीच दिक्कत है।) या कॉल को पकड़ने और वापस स्थिति की रिपोर्ट करने के लिए बाहर से कुछ सेट अप करें।

एचटीएच

1

यह इस बात पर निर्भर करता है कि आप कौन से चेक चलाने के लिए चाहते हैं। यदि आप --net = host और --privileged झंडे के साथ सेंसू कंटेनर चलाते हैं तो बहुत से सिस्टम-स्तरीय चेक ठीक काम करते हैं। --net = होस्ट आपको मेजबान सिस्टम के समान होस्टनाम और आईपी देखने की अनुमति नहीं देता है, लेकिन सभी टीसीपी कनेक्शन और इंटरफ़ेस मीट्रिक कंटेनर और होस्ट के लिए भी मेल खाता है।

- निजीकृत कंटेनर सिस्टम मैट्रिक्स जैसे एचडीडी, मेमोरी, सीपीयू तक पूर्ण पहुंच प्रदान करता है।

ट्रिकी चीज बाह्य प्रक्रिया मीट्रिक की जांच कर रही है, क्योंकि डॉकर इसे विशेषाधिकार प्राप्त कंटेनर से भी अलग करता है, लेकिन आप होस्ट की रूट फाइल सिस्टम को डॉकर वॉल्यूम (-v /:/host) और पैच चेक को क्रोट या उपयोग/होस्ट// proc के बजाय proc।

लंबी कहानी छोटी, कुछ चेक सिर्फ काम करेंगे, दूसरों के लिए आपको अपना रास्ता पैच या विकसित करने की आवश्यकता है, लेकिन डॉकर में सेंसू एक संभावित तरीका है।

0

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

यह मेरा बेस डॉकर कंटेनर है जो सेंसु प्लगइन्स प्रो फ़ाइल स्थान को संशोधित करने का समर्थन करता है।

https://github.com/sstarcher/docker-sensu

1

एक आम डोकर कंटेनर प्रक्रियाओं की जाँच नहीं कर सकते हैं के बाहर यह कंटेनर है, क्योंकि डोकर गिरी नामस्थान का उपयोग करता है अन्य सभी मेजबान पर चल रहे प्रक्रियाओं से यह अलग करने के लिए। इस डिजाइन के द्वारा होता है: docker security documentation

आप एक सुपर विशेषाधिकार प्राप्त डोकर कंटेनर है कि इस नाम स्थान अक्षम कर दिया है चलाने के लिए चाहते हैं, तो आप चला सकते हैं:

docker run -it --rm --privileged --pid=host alpine /bin/sh 

ऐसा करने से एक महत्वपूर्ण सुरक्षा परत है कि डोकर प्रदान करता है दूर करता है और यदि संभव हो तो से बचा जाना चाहिए।एक बार कंटेनर में, ps auxf चलाने का प्रयास करें और आप होस्ट पर सभी प्रक्रियाएं देखेंगे।

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