क्या मॉनिटर करना है

Edge for Private Cloud v. 4.17.05

आम तौर पर, प्रोडक्शन सेटअप में Apigee Edge में निजी क्लाउड डिप्लॉयमेंट के लिए, निगरानी करने का तरीका चालू करना ज़रूरी होता है. निगरानी करने की ये तकनीकें, नेटवर्क एडमिन (या ऑपरेटर) को किसी गड़बड़ी या गड़बड़ी के बारे में चेतावनी देती हैं. जनरेट होने वाली हर गड़बड़ी को Apigee Edge में, चेतावनी के तौर पर रिपोर्ट किया जाता है. चेतावनियों के बारे में ज़्यादा जानकारी के लिए, सबसे सही तरीकों पर नज़र रखना लेख पढ़ें.

आसानी के लिए, Apigee कॉम्पोनेंट को मुख्य रूप से दो कैटगरी में बांटा गया है:

  • Apigee से जुड़ी Java सर्वर सेवाएं – इनमें मैनेजमेंट सर्वर, मैसेज प्रोसेसर, Qpid सर्वर, और Postgres सर्वर शामिल हैं.
  • तीसरे पक्ष की सेवाएं – इनमें Nlinx Router, Apache Cassandra, Apache ZooKeeper, OpenLDAP, PostgreSQL डेटाबेस, और Qpid शामिल हैं.

Apigee Edge के ऑन-प्रिमाइस डिप्लॉयमेंट में, नीचे दी गई टेबल उन पैरामीटर की झलक दिखाती है जिन्हें मॉनिटर किया जा सकता है:

कॉम्पोनेंट

सिस्टम की जांच

प्रोसेस-लेवल के आंकड़े

एपीआई-लेवल की जांच

मैसेज के फ़्लो की जांच

कॉम्पोनेंट के बारे में खास जानकारी

Apigee-खास Java सेवाएं

मैनेजमेंट सर्वर

?

?

?

मैसेज प्रोसेसर

?

?

?

?

Qpid सर्वर

?

?

?

Postgres सर्वर

?

?

?

तीसरे पक्ष की सेवाएं

अपाचे कासांद्रा

?

?

अपाचे ज़ूकीपर

?

?

OpenLDAP

?

?

PostgreSQL डेटाबेस

?

?

क्यूपीआईडी

?

?

निगेक्स राऊटर

?

?

?

आम तौर पर, Apigee Edge इंस्टॉल हो जाने के बाद, निजी क्लाउड इंस्टॉलेशन के लिए Apigee Edge की परफ़ॉर्मेंस को ट्रैक करने के लिए, निगरानी करने वाले ये काम किए जा सकते हैं.

सिस्टम की परफ़ॉर्मेंस की जांच

सिस्टम की परफ़ॉर्मेंस से जुड़े पैरामीटर, जैसे कि सीपीयू (CPU) का इस्तेमाल, मेमोरी के इस्तेमाल, और पोर्ट कनेक्टिविटी को बड़े लेवल पर मेज़र करना बहुत ज़रूरी है. सिस्टम की बुनियादी जानकारी पाने के लिए, इन पैरामीटर पर नज़र रखी जा सकती है.

  • CPU का इस्तेमाल – इसकी मदद से, सीपीयू के इस्तेमाल के बारे में बुनियादी आंकड़ों (उपयोगकर्ता/सिस्टम/आईओ का इंतज़ार/कुछ समय से इस्तेमाल में न होने) की जानकारी मिलती है. उदाहरण के लिए, सिस्टम के इस्तेमाल किया गया कुल सीपीयू.
  • खाली/इस्तेमाल की गई मेमोरी – यह बताता है कि सिस्टम की मेमोरी का इस्तेमाल बाइट के तौर पर किया जा रहा है. उदाहरण के लिए, सिस्टम में इस्तेमाल की जाने वाली फ़िज़िकल मेमोरी.
  • डिस्क स्पेस का इस्तेमाल – डिस्क के मौजूदा इस्तेमाल के आधार पर, फ़ाइल सिस्टम की जानकारी बताता है. उदाहरण के लिए, सिस्टम के इस्तेमाल की गई हार्ड डिस्क की मेमोरी.
  • लोड का औसत – इससे, उन प्रोसेस की संख्या पता चलता है जो चल रही हैं.
  • नेटवर्क के आंकड़े – किसी खास कॉम्पोनेंट के बारे में ट्रांसमिशन की गड़बड़ियों के साथ, भेजे और पाए गए नेटवर्क पैकेट और/या बाइट.

प्रोसेस/ऐप्लिकेशन की जांच

प्रोसेस के लेवल पर, चल रही सभी प्रोसेस के बारे में अहम जानकारी देखी जा सकती है. उदाहरण के लिए, इनमें ऐसी मेमोरी और सीपीयू के इस्तेमाल के आंकड़े शामिल हैं जिनका इस्तेमाल किसी प्रोसेस या ऐप्लिकेशन में होता है. qpidd, postgres पोस्टमास्टर, java वगैरह प्रोसेस के लिए, यहां दी गई चीज़ों को मॉनिटर किया जा सकता है:

  • प्रोसेस आइडेंटिफ़िकेशन: किसी खास Apigee प्रोसेस की पहचान करें. उदाहरण के लिए, यह मॉनिटर किया जा सकता है कि Apigee सर्वर की JavaScript प्रोसेस मौजूद है या नहीं.
  • थ्रेड के आंकड़े: किसी प्रोसेस में इस्तेमाल होने वाले थ्रेडिंग पैटर्न देखें. उदाहरण के लिए, सभी प्रोसेस के लिए सबसे ज़्यादा थ्रेड की संख्या और थ्रेड की संख्या पर नज़र रखी जा सकती है.
  • मेमोरी का इस्तेमाल: Apigee की सभी प्रोसेस के लिए, मेमोरी के इस्तेमाल की जानकारी देखें. उदाहरण के लिए, हीप मेमोरी के इस्तेमाल, किसी प्रोसेस में इस्तेमाल की जाने वाली नॉन-हीप मेमोरी के इस्तेमाल जैसे पैरामीटर को देखा जा सकता है.

एपीआई लेवल की जांच

एपीआई लेवल पर, यह मॉनिटर किया जा सकता है कि सर्वर चालू है और Apigee से प्रॉक्सी किए गए, अक्सर इस्तेमाल किए जाने वाले एपीआई कॉल के लिए चल रहा है या नहीं. उदाहरण के लिए, मैनेजमेंट सर्वर, राऊटर, और मैसेज प्रोसेसर पर एपीआई की जांच की जा सकती है. इसके लिए, आपको यह cURL निर्देश देना होगा:

curl http://<host>:<port>/v1/servers/self/up

यहां <host>, Apigee Edge कॉम्पोनेंट का आईपी पता है. <port> नंबर हर Edge कॉम्पोनेंट के लिए अलग होता है. उदाहरण के लिए:

मैनेजमेंट सर्वर: 8080

  • राऊटर: 8081
  • मैसेज प्रोसेसर: 8082
  • वगैरह

हर कॉम्पोनेंट के लिए इस निर्देश को चलाने के बारे में जानकारी के लिए, नीचे दिए गए अलग-अलग सेक्शन देखें

यह कॉल "सही" और "गलत" दिखाता है. सबसे अच्छे नतीजे पाने के लिए, सीधे बैकएंड (जिसकी मदद से Apigee सॉफ़्टवेयर इंटरैक्ट करता है) पर एपीआई कॉल भी जारी किए जा सकते हैं. इससे, यह तुरंत पता लगाया जा सकता है कि Apigee सॉफ़्टवेयर एनवायरमेंट में या बैकएंड में, कोई गड़बड़ी है.

ध्यान दें: अपने एपीआई प्रॉक्सी को मॉनिटर करने के लिए, Apigee के एपीआई हेल्थ का भी इस्तेमाल किया जा सकता है. API Health, आपके एपीआई प्रॉक्सी पर शेड्यूल किए गए कॉल करता है. साथ ही, उनके फ़ेल होने और उन्हें हल करने के तरीके की सूचना आपको देता है. कॉल होने पर, एपीआई Health आपको जवाब देने में लगने वाला समय दिखाता है. साथ ही, रिस्पॉन्स में लगने वाला समय ज़्यादा होने पर भी आपको इसकी सूचना दे सकता है. API Health, दुनिया भर की अलग-अलग जगहों से डेटा कॉल कर सकता है, ताकि अलग-अलग इलाकों में एपीआई के काम करने के तरीके की तुलना की जा सके.

मैसेज फ़्लो की जांच

आपके पास मैसेज फ़्लो पैटर्न/आंकड़ों के बारे में राऊटर और मैसेज प्रोसेसर से डेटा इकट्ठा करने का विकल्प होता है. इसकी मदद से, इन चीज़ों पर नज़र रखी जा सकती है:

  • सक्रिय क्लाइंट की संख्या
  • जवाबों की संख्या (10X, 20X, 30X, 40X, और 50X)
  • कनेक्ट नहीं किए जा सके

इससे आपको एपीआई मैसेज फ़्लो के लिए, डैशबोर्ड देने में मदद मिलती है. ज़्यादा जानकारी के लिए, देखें:

मैसेज प्रोसेसर की राऊटर स्थिति की जांच

राऊटर, परफ़ॉर्मेंस की जांच करने का एक तरीका लागू करता है. इससे यह पता चलता है कि कौनसे मैसेज प्रोसेसर उम्मीद के मुताबिक काम कर रहे हैं. अगर मैसेज प्रोसेसर के काम करने की स्पीड धीमी या धीमी है, तो राऊटर मैसेज प्रोसेसर को अपने-आप प्रोसेस से बाहर ले जा सकता है. अगर ऐसा होता है, तो राऊटर /opt/apigee/var/log/edge-router/logs/system.log पर जाकर राऊटर की लॉग फ़ाइल में "मार्क डाउन करें" मैसेज लिखता है).

इन मैसेज के लिए, राऊटर की लॉग फ़ाइल की निगरानी की जा सकती है. उदाहरण के लिए, अगर राऊटर, मैसेज प्रोसेसर को बिना घुमाए रहता है, तो वह इस फ़ॉर्म में लॉग में मैसेज लिखता है:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

यहां /<MP_IP>:<PORT>, मैसेज प्रोसेसर का आईपी पता और पोर्ट नंबर है.

अगर बाद में राऊटर, हेल्थ चेक करता है और तय करता है कि मैसेज प्रोसेसर ठीक से काम कर रहा है, तो राऊटर अपने-आप मैसेज प्रोसेसर को फिर से घुमाकर काम करने लगता है. राऊटर, इस फ़ॉर्म में लॉग में "मार्क अप करें" मैसेज भी लिखता है:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up