Jolokia प्रयोग गरी HTTP प्रोक्सी मार्फत JMX पढ्नुहोस्
जब मोनिटरिङ क्लाइन्टले फर्वार्ड वेब प्रोक्सी पार गर्नुपर्छ, Jolokia को HTTP इन्टरफेस प्रयोग गर्नुहोस्, प्रोक्सी र व्यवस्थापनका लागि छुट्टाछुट्टै प्रमाणहरूसहित।
यदि Java परिनियोजनले पहिले नै अधिकृत Jolokia अन्त्यबिन्दु खुलासा गरेको छ भने, मोनिटरिङ क्लाइन्टले सामान्य HTTP फर्वार्ड प्रोक्सी मार्फत JMX विशेषताहरू पढ्न सक्छ। क्लाइन्टले HTTP मा Jolokia सँग कुरा गर्छ, र Jolokia ले अनुप्रयोग पक्षमा JMX कार्य गर्छ।
monitor → HTTP proxy → HTTPS Jolokia endpoint → MBean
यो मार्गका लागि HTTP सक्षम व्यवस्थापन अन्त्यबिन्दु चाहिन्छ। नबदलिएको नेटिभ JMX क्लाइन्टलाई वेब प्रोक्सीतिर देखाउँदा त्यो बन्दैन।
उदाहरणका लागि, JVM को heap प्रयोगको पढाइलाई POST अनुरोधका रूपमा व्यक्त गर्न सकिन्छ:
curl --proxy http://proxy.example.net:8080 \
--header 'Content-Type: application/json' \
--data '{"type":"read","mbean":"java.lang:type=Memory","attribute":"HeapMemoryUsage","path":"used"}' \
https://monitor.example.net/jolokia/
अन्त्यबिन्दु र प्रोक्सी प्लेसहोल्डर हुन्। यसले पढाइ कार्य प्रयोग गर्छ; HTTP विधि POST ले JMX लेखन संकेत नगरी Jolokia को JSON अनुरोध बोक्छ। Jolokia ले सरल कार्यका लागि GET अनुरोध पनि समर्थन गर्छ, जबकि JSON POST ले जटिल MBean नामका लागि आवश्यक URL escaping को केही भाग टार्छ।
HTTPS व्यवस्थापन अन्त्यबिन्दुका लागि फर्वार्ड प्रोक्सीले सम्बन्धित टनेल गन्तव्यलाई अनुमति दिनुपर्छ। TLS ले अझै monitor.example.net प्रमाणित गर्नुपर्छ। प्रोक्सीको आफ्नै होस्टनाम र प्रमाणपत्र, यदि प्रोक्सी जडान आफैंले TLS प्रयोग गर्छ भने, छुट्टै हप वर्णन गर्छ।
दुई प्रमाणीकरण निर्णय छुट्टाछुट्टै राख्नुहोस्। curl का प्रोक्सी-प्रमाणीकरण विकल्पले प्रोक्सी खाता दिन्छ। अन्त्यबिन्दुको प्रमाणीकरणले व्यवस्थापन पहिचान दिन्छ, र Jolokia को नीतिले कुन MBean र कार्यमा पहुँच छ भनी निर्धारण गर्छ। फर्वार्ड प्रोक्सी प्रयोग गर्ने अनुमति JVM प्रशासन गर्ने अनुमति होइन।
प्रतिक्रियामा पनि दुई तह छन्: HTTP यातायात स्थिति र Jolokia को JSON कार्य परिणाम। फर्काइएका status र value जाँच्नुहोस्, कुनै पनि body लाई सफल मेट्रिक मान्नुको सट्टा। प्रोक्सी त्रुटि, अन्त्यबिन्दु प्रमाणीकरण असफलता र छुटेका MBean का लागि फरक परिवर्तन चाहिन्छ।
यदि परिनियोजनले केवल नेटिभ JMX कनेक्टर खुलासा गर्छ भने, त्यो कनेक्टरसँग मिल्ने मार्ग छान्नुहोस् वा स्वीकृत HTTP व्यवस्थापन अन्त्यबिन्दुको व्यवस्था गर्नुहोस्। SSH स्थानीय फर्वार्ड अर्को यातायात डिजाइन हो, तर यो नेटिभ सेवासँगको जडान नै रहन्छ; यसले यसको प्रोटोकललाई Jolokia को HTTP API मा बदल्दैन।