एपिजी-मोनीट के साथ खुद को ठीक करना

Apigee Edge for Private Cloud में apigee-monit शामिल है. यह ओपन सोर्स monit यूटिलिटी पर आधारित टूल है. apigee-monit समय-समय पर Edge सेवाओं की जांच करता है. अगर कोई सेवा उपलब्ध नहीं है, तो apigee-monit उसे फिर से शुरू करने की कोशिश करता है.

apigee-monit का इस्तेमाल करने के लिए, आपको इसे मैन्युअल तरीके से इंस्टॉल करना होगा. यह स्टैंडर्ड इंस्टॉलेशन का हिस्सा नहीं है.

डिफ़ॉल्ट रूप से, apigee-monit हर 60 सेकंड में Edge सेवाओं की स्थिति की जांच करता है.

तुरंत शुरू करना

इस सेक्शन में, apigee-monit को तुरंत इस्तेमाल करने का तरीका बताया गया है.

अगर Amazon Linux या Oracle-Linux-7.X का इस्तेमाल किया जा रहा है, तो पहले Fedora के ज़रिए monit इंस्टॉल करें. अगर ऐसा नहीं है, तो इस चरण को छोड़ दें.

sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm

apigee-monit को इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  apigee-monit इंस्टॉल करें
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

इससे apigee-monit इंस्टॉल हो जाता है. साथ ही, यह नोड पर मौजूद सभी कॉम्पोनेंट की निगरानी करना डिफ़ॉल्ट रूप से शुरू कर देता है.

  कॉम्पोनेंट की परफ़ॉर्मेंस को मॉनिटर करना बंद करना
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
  कॉम्पोनेंट की परफ़ॉर्मेंस मॉनिटर करना
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
  खास जानकारी के स्टेटस की जानकारी पाना
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
  apigee-monit लॉग फ़ाइलें देखना
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log

इन विषयों और अन्य विषयों के बारे में, यहां दिए गए सेक्शन में पूरी जानकारी दी गई है.

apigee-monit के बारे में जानकारी

apigee-monit यह पक्का करने में मदद करता है कि नोड पर मौजूद सभी कॉम्पोनेंट चालू रहें और काम करते रहें. यह कई तरह की सेवाएं देकर ऐसा करता है. जैसे:

  • बंद हो चुकी सेवाओं को फिर से चालू करना
  • खास जानकारी दिखाना
  • लॉगिंग मॉनिटरिंग की स्थिति
  • सूचनाएं भेजना
  • Edge के अलावा अन्य सेवाओं की निगरानी करना

Apigee का सुझाव है कि आप apigee-monit पर नज़र रखें, ताकि यह पक्का किया जा सके कि यह काम कर रहा है. ज़्यादा जानकारी के लिए, apigee-monit को मॉनिटर करना लेख पढ़ें.

apigee-monit का आर्किटेक्चर

Apigee Edge for Private Cloud को इंस्टॉल और कॉन्फ़िगर करते समय, आपके पास अपने क्लस्टर के हर नोड पर apigee-monit का अलग इंस्टेंस इंस्टॉल करने का विकल्प होता है. ये अलग-अलग apigee-monit इंस्टेंस, एक-दूसरे से अलग काम करते हैं: ये अपने कॉम्पोनेंट की स्थिति के बारे में अन्य नोड को नहीं बताते हैं. साथ ही, ये मॉनिटरिंग यूटिलिटी की गड़बड़ियों के बारे में किसी भी सेंट्रल सेवा को नहीं बताते हैं.

इस इमेज में, पांच नोड वाले क्लस्टर में apigee-monit का आर्किटेक्चर दिखाया गया है:

पांच नोड वाले क्लस्टर में Apigee monit का आर्किटेक्चर
पहली इमेज: क्लस्टर के हर नोड पर, apigee-monit का एक अलग इंस्टेंस आइसोलेशन में चलता है

कॉम्पोनेंट के कॉन्फ़िगरेशन

apigee-monit, कॉम्पोनेंट कॉन्फ़िगरेशन का इस्तेमाल करता है. इससे यह तय किया जाता है कि किन कॉम्पोनेंट को मॉनिटर करना है, कॉम्पोनेंट के किन पहलुओं की जांच करनी है, और गड़बड़ी होने पर क्या कार्रवाई करनी है.

डिफ़ॉल्ट रूप से, apigee-monit किसी नोड पर मौजूद सभी Edge कॉम्पोनेंट की निगरानी करता है. इसके लिए, पहले से तय किए गए कॉम्पोनेंट कॉन्फ़िगरेशन का इस्तेमाल किया जाता है. डिफ़ॉल्ट सेटिंग देखने के लिए, apigee-monit कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइलें देखें. डिफ़ॉल्ट कॉम्पोनेंट कॉन्फ़िगरेशन में बदलाव नहीं किया जा सकता.

apigee-monit किसी कॉम्पोनेंट के अलग-अलग पहलुओं की जांच करता है. यह इस बात पर निर्भर करता है कि वह किस कॉम्पोनेंट की जांच कर रहा है. इस टेबल में बताया गया है कि apigee-monit हर कॉम्पोनेंट की जांच कैसे करता है. साथ ही, इसमें यह भी बताया गया है कि हर कॉम्पोनेंट के लिए कॉम्पोनेंट कॉन्फ़िगरेशन कहां होता है. ध्यान दें कि कुछ कॉम्पोनेंट, एक ही कॉन्फ़िगरेशन फ़ाइल में तय किए जाते हैं. वहीं, अन्य कॉम्पोनेंट के अपने कॉन्फ़िगरेशन होते हैं.

कॉम्पोनेंट कॉन्फ़िगरेशन की जगह किस तरह की गतिविधि को मॉनिटर किया जाता है
मैनेजमेंट सर्वर /opt/apigee/edge-management-server/monit/default.conf apigee-monit checks:
  • तय किए गए पोर्ट खुले हैं और अनुरोध स्वीकार कर रहे हैं
  • बताए गए प्रोटोकॉल काम करते हैं
  • जवाब की स्थिति

इसके अलावा, इन कॉम्पोनेंट apigee-monit के लिए:

  • कार्रवाई करने से पहले, तय साइकल में कई बार गड़बड़ी होना ज़रूरी है
  • यह कुकी, कस्टम अनुरोध पाथ सेट करती है
मैसेज प्रोसेसर /opt/apigee/edge-message-processor/monit/default.conf
Postgres सर्वर /opt/apigee/edge-postgres-server/monit/default.conf
Qpid Server /opt/apigee/edge-qpid-server/monit/default.conf
राऊटर /opt/apigee/edge-router/monit/default.conf
Cassandra
Edge UI
SymasLDAP
Postgres
Qpid
Zookeeper
/opt/apigee/data/apigee-monit/monit.conf apigee-monit checks:
  • सेवा चल रही है

यहां दिए गए उदाहरण में, edge-router कॉम्पोनेंट के लिए डिफ़ॉल्ट कॉम्पोनेंट कॉन्फ़िगरेशन दिखाया गया है:

check host edge-router with address localhost
  restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart"
  if failed host 10.1.1.0 port 8081 and protocol http
    and request "/v1/servers/self/uuid"
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

  if failed port 15999 and protocol http
    and request "/v1/servers/self"
    and status < 600
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

यहां दिए गए उदाहरण में, Classic UI (edge-ui) कॉम्पोनेंट के लिए डिफ़ॉल्ट कॉन्फ़िगरेशन दिखाया गया है:

check process edge-ui
 with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid
 start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds
 stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"

यह क्लासिक यूज़र इंटरफ़ेस (यूआई) पर लागू होता है, न कि नए Edge यूज़र इंटरफ़ेस (यूआई) पर. नए Edge यूज़र इंटरफ़ेस (यूआई) के कॉम्पोनेंट का नाम edge-management-ui है.

Apigee Edge for Private Cloud के किसी भी कॉम्पोनेंट के लिए, डिफ़ॉल्ट कॉम्पोनेंट कॉन्फ़िगरेशन में बदलाव नहीं किया जा सकता. हालांकि, बाहरी सेवाओं के लिए अपने कॉम्पोनेंट कॉन्फ़िगरेशन जोड़े जा सकते हैं. जैसे, आपका टारगेट एंडपॉइंट या httpd सेवा. ज़्यादा जानकारी के लिए, Apigee के अलावा अन्य कॉम्पोनेंट के कॉन्फ़िगरेशन देखें.

डिफ़ॉल्ट रूप से, apigee-monit उस नोड पर मौजूद सभी कॉम्पोनेंट की निगरानी करता है जिस पर यह चल रहा है. इसे सभी कॉम्पोनेंट या अलग-अलग कॉम्पोनेंट के लिए चालू या बंद किया जा सकता है. ज़्यादा जानकारी के लिए, देखें:

apigee-monit इंस्टॉल करना

apigee-monit डिफ़ॉल्ट रूप से इंस्टॉल नहीं होता है. Apigee Edge for Private Cloud के वर्शन 4.19.01 या इसके बाद के वर्शन को अपग्रेड या इंस्टॉल करने के बाद, इसे मैन्युअल तरीके से इंस्टॉल किया जा सकता है.

इस सेक्शन में, apigee-monit को इंस्टॉल करने का तरीका बताया गया है.

apigee-monit को अनइंस्टॉल करने के बारे में जानकारी के लिए, apigee-monit को अनइंस्टॉल करना लेख पढ़ें.

apigee-monit इंस्टॉल करना

इस सेक्शन में, apigee-monit को इंस्टॉल करने का तरीका बताया गया है.

apigee-monit इंस्टॉल करने के लिए:

  1. apigee-monit को इंस्टॉल करने के लिए, यह कमांड डालें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit install
  2. apigee-monit को इस कमांड की मदद से कॉन्फ़िगर करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  3. apigee-monit को शुरू करने के लिए, यह कमांड चलाएं:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit start
  4. अपने क्लस्टर के हर नोड पर इस प्रोसेस को दोहराएं.

कॉम्पोनेंट की मॉनिटरिंग बंद और चालू करना

किसी भी वजह से सेवा बंद होने पर, apigee-monit सेवा को फिर से शुरू करने की कोशिश करता है.

अगर आपको किसी कॉम्पोनेंट को जानबूझकर रोकना है, तो इससे समस्या हो सकती है. उदाहरण के लिए, आपको किसी कॉम्पोनेंट का बैक अप लेने या उसे अपग्रेड करने के लिए, उसे बंद करना पड़ सकता है. अगर बैकअप या अपग्रेड के दौरान apigee-monit सेवा को फिर से शुरू करता है, तो रखरखाव की प्रोसेस में रुकावट आ सकती है. ऐसा होने पर, हो सकता है कि प्रोसेस पूरी न हो पाए.

यहां दिए गए सेक्शन में, कॉम्पोनेंट की निगरानी रोकने के विकल्प दिखाए गए हैं.

किसी कॉम्पोनेंट को बंद करना और उसकी निगरानी बंद करना

किसी कॉम्पोनेंट को रोकने और उसकी निगरानी बंद करने के लिए, यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
component_name इनमें से कोई एक हो सकता है:
  • apigee-cassandra (कैसंड्रा)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL डेटाबेस)
  • apigee-qpidd (सवाल और जवाब)
  • apigee-sso (Edge एसएसओ)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (मैनेजमेंट सर्वर)
  • edge-management-ui (नया Edge यूज़र इंटरफ़ेस (यूआई))
  • edge-message-processor (मैसेज प्रोसेस करने वाला)
  • edge-postgres-server (पोस्टग्रेस सर्वर)
  • edge-qpid-server (Qpid सर्वर)
  • edge-router (एज राऊटर)
  • edge-ui (क्लासिक यूज़र इंटरफ़ेस (यूआई))

ध्यान दें कि stop-component के लिए "all" मान्य विकल्प नहीं है. stop-component की मदद से, एक बार में सिर्फ़ एक कॉम्पोनेंट की निगरानी रोकी जा सकती है और उसे निगरानी से हटाया जा सकता है.

कॉम्पोनेंट को फिर से शुरू करने और मॉनिटरिंग को फिर से शुरू करने के लिए, यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name

ध्यान दें कि start-component के लिए "all" मान्य विकल्प नहीं है.

सभी कॉम्पोनेंट को मॉनिटर करना बंद करने और उन्हें मॉनिटर न करने के निर्देशों के लिए, सभी कॉम्पोनेंट को मॉनिटर करना बंद करें और उन्हें मॉनिटर न करें लेख पढ़ें.

किसी कॉम्पोनेंट की निगरानी बंद करना (लेकिन उसे रोकना नहीं)

किसी कॉम्पोनेंट की निगरानी बंद करने के लिए (लेकिन उसे बंद न करने के लिए), यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
component_name इनमें से कोई एक हो सकता है:
  • apigee-cassandra (कैसंड्रा)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL डेटाबेस)
  • apigee-qpidd (सवाल और जवाब)
  • apigee-sso (Edge एसएसओ)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (मैनेजमेंट सर्वर)
  • edge-management-ui (नया Edge यूज़र इंटरफ़ेस (यूआई))
  • edge-message-processor (मैसेज प्रोसेस करने वाला)
  • edge-postgres-server (पोस्टग्रेस सर्वर)
  • edge-qpid-server (Qpid सर्वर)
  • edge-router (एज राऊटर)
  • edge-ui (क्लासिक यूज़र इंटरफ़ेस (यूआई))

कॉम्पोनेंट की निगरानी फिर से शुरू करने के लिए, यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name

सभी कॉम्पोनेंट की निगरानी बंद करें (लेकिन उन्हें बंद न करें)

सभी कॉम्पोनेंट की निगरानी बंद करने के लिए (लेकिन उन्हें बंद न करने के लिए), यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

सभी कॉम्पोनेंट की निगरानी फिर से शुरू करने के लिए, यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

सभी कॉम्पोनेंट बंद करें और उनकी निगरानी करना बंद करें

सभी कॉम्पोनेंट को रोकने और उनकी निगरानी बंद करने के लिए, ये कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop

सभी कॉम्पोनेंट को फिर से शुरू करने और मॉनिटरिंग को फिर से शुरू करने के लिए, ये कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

सभी कॉम्पोनेंट की निगरानी बंद करने के लिए, apigee-monit को भी बंद किया जा सकता है. इसके बारे में apigee-monit को बंद करना, शुरू करना, और बंद करना लेख में बताया गया है.

apigee-monit को बंद करना, चालू करना, और बंद करना

किसी भी सेवा की तरह, apigee-monit को apigee-service कमांड का इस्तेमाल करके बंद और चालू किया जा सकता है. इसके अलावा, apigee-monit में unmonitor कमांड का इस्तेमाल किया जा सकता है. इससे कॉम्पोनेंट की निगरानी को कुछ समय के लिए रोका जा सकता है.

apigee-monit को बंद करें

apigee-monit को बंद करने के लिए, यह निर्देश दें:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop

apigee-monit शुरू करें

apigee-monit शुरू करने के लिए, यह कमांड इस्तेमाल करें:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

apigee-monit को बंद करें

नोड पर मौजूद सभी कॉम्पोनेंट की निगरानी को निलंबित करने के लिए, इस कमांड का इस्तेमाल करें:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

इसके अलावा, नोड से apigee-monit को अनइंस्टॉल करके, इसे हमेशा के लिए बंद किया जा सकता है. इसके बारे में apigee-monit को अनइंस्टॉल करना लेख में बताया गया है.

apigee-monit को अनइंस्टॉल करना

apigee-monit को अनइंस्टॉल करने के लिए:

  1. अगर आपने apigee-monit की निगरानी करने के लिए cron जॉब सेट अप की है, तो apigee-monit को अनइंस्टॉल करने से पहले cron जॉब हटा दें:
    sudo rm /etc/cron.d/apigee-monit.cron
  2. apigee-monit को बंद करने के लिए, यह कमांड दें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
  3. apigee-monit को अनइंस्टॉल करने के लिए, यह कमांड दें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit uninstall
  4. अपने क्लस्टर के हर नोड पर इस प्रोसेस को दोहराएं.

हाल ही में इंस्टॉल किए गए कॉम्पोनेंट को मॉनिटर करना

अगर आपको apigee-monit का इस्तेमाल कर रहे किसी नोड पर नया कॉम्पोनेंट इंस्टॉल करना है, तो apigee-monit की restart कमांड को लागू करके, उसकी निगरानी शुरू की जा सकती है. इससे एक नई monit.conf फ़ाइल जनरेट होती है. इसमें कॉम्पोनेंट कॉन्फ़िगरेशन में नया कॉम्पोनेंट शामिल होगा.

यहां दिए गए उदाहरण में, apigee-monit को फिर से शुरू करने का तरीका बताया गया है:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit restart

apigee-monit को पसंद के मुताबिक बनाना

apigee-monit की कई सेटिंग को अपनी पसंद के मुताबिक बनाया जा सकता है. जैसे:

  1. apigee-monit कंट्रोल की डिफ़ॉल्ट सेटिंग
  2. ग्लोबल कॉन्फ़िगरेशन सेटिंग
  3. Apigee के अलावा अन्य कॉम्पोनेंट के कॉन्फ़िगरेशन

apigee-monit कंट्रोल की डिफ़ॉल्ट सेटिंग

आपके पास apigee-monit कंट्रोल की डिफ़ॉल्ट सेटिंग को पसंद के मुताबिक बनाने का विकल्प होता है. जैसे, स्टेटस की जांच करने की फ़्रीक्वेंसी और apigee-monit फ़ाइलों की जगह. इसके लिए, कॉन्फ़िगरेशन के साथ कोड तकनीक का इस्तेमाल करके, प्रॉपर्टी फ़ाइल में बदलाव करें. Apigee Edge for Private Cloud को अपग्रेड करने के बाद भी, प्रॉपर्टी फ़ाइलें बनी रहेंगी.

नीचे दी गई टेबल में, apigee-monit कंट्रोल की डिफ़ॉल्ट सेटिंग के बारे में बताया गया है. इन्हें अपनी पसंद के मुताबिक बनाया जा सकता है:

प्रॉपर्टी ब्यौरा
conf_monit_httpd_port httpd डीमन का पोर्ट. apigee-monit, अपने डैशबोर्ड ऐप्लिकेशन के लिए httpd का इस्तेमाल करता है. साथ ही, रिपोर्ट/खास जानकारी को चालू करने के लिए भी इसका इस्तेमाल करता है. डिफ़ॉल्ट वैल्यू 2812 है.
conf_monit_httpd_allow httpd डेमॉन को किए जाने वाले अनुरोधों पर पाबंदियां. apigee-monit, डैशबोर्ड ऐप्लिकेशन को चलाने और रिपोर्ट/खास जानकारी को चालू करने के लिए httpd का इस्तेमाल करता है. यह वैल्यू, लोकल होस्ट (वह होस्ट जिस पर httpd चल रहा है) की ओर इशारा करनी चाहिए.

अगर आपको यह ज़रूरी करना है कि अनुरोधों में उपयोगकर्ता नाम और पासवर्ड शामिल हो, तो इस सिंटैक्स का इस्तेमाल करें:

conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1

उपयोगकर्ता नाम और पासवर्ड जोड़ते समय, हर शर्त के बीच "\n" डालें. वैल्यू में नई लाइनें या कैरिज रिटर्न न डालें.

conf_monit_monit_datadir वह डायरेक्ट्री जिसमें इवेंट की जानकारी सेव की जाती है.
conf_monit_monit_delay_time यह कुकी, मेमोरी में पहली बार लोड होने के बाद apigee-monit तक इंतज़ार करती है. इसके बाद, यह कुकी काम करती है. इससे सिर्फ़ apigee-monit पहली प्रोसेस की जांच पर असर पड़ता है.
conf_monit_monit_logdir apigee-monit लॉग फ़ाइल की जगह.
conf_monit_monit_retry_time apigee-monit हर प्रोसेस की जांच कितनी बार करता है. डिफ़ॉल्ट रूप से यह 60 सेकंड होता है.
conf_monit_monit_rundir पीआईडी और स्टेट फ़ाइलों की जगह. apigee-monit इनका इस्तेमाल प्रोसेस की जांच करने के लिए करता है.

डिफ़ॉल्ट apigee-monit कंट्रोल सेटिंग को पसंद के मुताबिक बनाने के लिए:

  1. इस फ़ाइल में बदलाव करें:
    /opt/apigee/customer/application/monit.properties

    अगर फ़ाइल मौजूद नहीं है, तो इसे बनाएं और मालिक के तौर पर "apigee" उपयोगकर्ता को सेट करें:

    chown apigee:apigee /opt/apigee/customer/application/monit.properties

    ध्यान दें कि अगर फ़ाइल पहले से मौजूद है, तो हो सकता है कि उसमें ऊपर दी गई टेबल में मौजूद कॉन्फ़िगरेशन प्रॉपर्टी के अलावा, अन्य प्रॉपर्टी भी तय की गई हों. आपको ऊपर दी गई प्रॉपर्टी के अलावा, अन्य प्रॉपर्टी में बदलाव नहीं करना चाहिए.

  2. अपनी नई वैल्यू के हिसाब से प्रॉपर्टी की वैल्यू सेट करें या बदलें.

    उदाहरण के लिए, लॉग फ़ाइल की जगह को /tmp पर बदलने के लिए, यहां दी गई प्रॉपर्टी को जोड़ें या उसमें बदलाव करें:

    conf_monit_monit_logdir=/tmp/apigee-monit.log
  3. monit.properties फ़ाइल में किए गए बदलाव सेव करें.
  4. apigee-monit को फिर से कॉन्फ़िगर करने के लिए, यह कमांड इस्तेमाल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  5. इस कमांड का इस्तेमाल करके, apigee-monit को फिर से लोड करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    अगर apigee-monit को रीस्टार्ट नहीं किया जा सकता, तो गड़बड़ियों के लिए लॉग फ़ाइल देखें. इसके बारे में apigee-monit की लॉग फ़ाइलें ऐक्सेस करना लेख में बताया गया है.

  6. अपने क्लस्टर के हर नोड के लिए, इस प्रोसेस को दोहराएं.

ग्लोबल कॉन्फ़िगरेशन सेटिंग

apigee-monit के लिए ग्लोबल कॉन्फ़िगरेशन सेटिंग तय की जा सकती हैं. उदाहरण के लिए, सूचनाओं के लिए ईमेल सूचनाएं जोड़ी जा सकती हैं. इसके लिए, /opt/apigee/data/apigee-monit डायरेक्ट्री में एक कॉन्फ़िगरेशन फ़ाइल बनाएं. इसके बाद, apigee-monit को फिर से चालू करें.

apigee-monit के लिए ग्लोबल कॉन्फ़िगरेशन सेटिंग तय करने के लिए:

  1. नीचे दी गई जगह पर, नई कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइल बनाएं:
    /opt/apigee/data/apigee-monit/filename.conf

    यहां filename, "monit" को छोड़कर कोई भी मान्य फ़ाइल नाम हो सकता है.

  2. नई कॉन्फ़िगरेशन फ़ाइल के मालिक को "apigee" उपयोगकर्ता के तौर पर बदलें. इसके लिए, यहां दिया गया उदाहरण देखें:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-mail-config.conf
  3. नई फ़ाइल में, अपनी ग्लोबल कॉन्फ़िगरेशन सेटिंग जोड़ें. इस उदाहरण में, एक मेल सर्वर को कॉन्फ़िगर किया गया है और सूचना पाने वालों को सेट किया गया है:
    SET MAILSERVER smtp.gmail.com PORT 465
      USERNAME "example-admin@gmail.com" PASSWORD "PASSWORD"
      USING SSL, WITH TIMEOUT 15 SECONDS
    
    SET MAIL-FORMAT {
      from: edge-alerts@example.com
      subject: Monit Alert -- Service: $SERVICE $EVENT on $HOST
    }
    SET ALERT fred@example.com
    SET ALERT nancy@example.com

    ग्लोबल कॉन्फ़िगरेशन के विकल्पों की पूरी सूची देखने के लिए, monit का दस्तावेज़ देखें.

  4. कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइल में किए गए बदलावों को सेव करें.
  5. इस कमांड का इस्तेमाल करके, apigee-monit को फिर से लोड करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    अगर apigee-monit फिर से शुरू नहीं होता है, तो गड़बड़ियों के लिए लॉग फ़ाइल देखें. इसके बारे में apigee-monit लॉग फ़ाइलें ऐक्सेस करना लेख में बताया गया है.

  6. अपने क्लस्टर के हर नोड के लिए, इस प्रोसेस को दोहराएं.

Apigee के कॉम्पोनेंट के अलावा अन्य कॉम्पोनेंट के कॉन्फ़िगरेशन

apigee-monit में अपने कॉन्फ़िगरेशन जोड़े जा सकते हैं, ताकि यह उन सेवाओं की जांच कर सके जो Apigee Edge for Private Cloud का हिस्सा नहीं हैं. उदाहरण के लिए, apigee-monit का इस्तेमाल करके यह देखा जा सकता है कि आपके एपीआई काम कर रहे हैं या नहीं. इसके लिए, अपने टारगेट एंडपॉइंट को अनुरोध भेजें.

Apigee के अलावा किसी अन्य कॉम्पोनेंट का कॉन्फ़िगरेशन जोड़ने के लिए:

  1. नीचे दी गई जगह पर, नई कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइल बनाएं:
    /opt/apigee/data/apigee-monit/filename.conf

    यहां filename, "monit" को छोड़कर कोई भी मान्य फ़ाइल नाम हो सकता है.

    ज़रूरत के मुताबिक, कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइलें बनाई जा सकती हैं. उदाहरण के लिए, आपको नोड पर जिन नॉन-Apigee कॉम्पोनेंट को मॉनिटर करना है उनके लिए अलग-अलग कॉन्फ़िगरेशन फ़ाइलें बनाई जा सकती हैं.

  2. नई कॉन्फ़िगरेशन फ़ाइल के मालिक को "apigee" उपयोगकर्ता के तौर पर बदलें. इसके लिए, यहां दिया गया उदाहरण देखें:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-config.conf
  3. नई फ़ाइल में अपने कस्टम कॉन्फ़िगरेशन जोड़ें. यहां दिए गए उदाहरण में, लोकल सर्वर पर टारगेट एंडपॉइंट की जांच की गई है:
    CHECK HOST localhost_validate_test WITH ADDRESS localhost
      IF FAILED
        PORT 15999
        PROTOCOL http
        REQUEST "/validate__test"
        CONTENT = "Server Ready"
        FOR 2 times WITHIN 3 cycles
      THEN alert

    कॉन्फ़िगरेशन की संभावित सेटिंग की पूरी सूची देखने के लिए, monit का दस्तावेज़ देखें.

  4. कॉन्फ़िगरेशन फ़ाइल में किए गए बदलावों को सेव करें.
  5. इस कमांड का इस्तेमाल करके, apigee-monit को फिर से लोड करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    अगर apigee-monit फिर से शुरू नहीं होता है, तो गड़बड़ियों के लिए लॉग फ़ाइल देखें. इसके बारे में apigee-monit लॉग फ़ाइलें ऐक्सेस करना लेख में बताया गया है.

  6. अपने क्लस्टर के हर नोड के लिए, इस प्रोसेस को दोहराएं.

ध्यान दें कि यह सुविधा सिर्फ़ नॉन-एज कॉम्पोनेंट के लिए है. Edge कॉम्पोनेंट के लिए, कॉम्पोनेंट कॉन्फ़िगरेशन को पसंद के मुताबिक नहीं बनाया जा सकता.

apigee-monit की लॉग फ़ाइलों को ऐक्सेस करना

apigee-monit सभी गतिविधियों को लॉग करता है. इनमें इवेंट, रीस्टार्ट, कॉन्फ़िगरेशन में बदलाव, और लॉग फ़ाइल में सूचनाएं शामिल हैं.

लॉग फ़ाइल की डिफ़ॉल्ट जगह यह है:

/opt/apigee/var/log/apigee-monit/apigee-monit.log

apigee-monit कंट्रोल की सेटिंग को पसंद के मुताबिक बनाकर, डिफ़ॉल्ट जगह की जानकारी बदली जा सकती है.

लॉग फ़ाइल की एंट्री इस तरह से होती हैं:

'edge-message-processor' trying to restart
[UTC Dec 14 16:20:42] info     : 'edge-message-processor' trying to restart
'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'

apigee-monit लॉग फ़ाइल की एंट्री के फ़ॉर्मैट को अपनी पसंद के मुताबिक नहीं बनाया जा सकता.

apigee-monit की मदद से, एग्रीगेट की गई स्थिति देखना

apigee-monit में ये कमांड शामिल हैं. इनसे आपको नोड पर मौजूद कॉम्पोनेंट की स्थिति के बारे में एग्रीगेट की गई जानकारी मिलती है:

निर्देश इस्तेमाल
report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
summary
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

इनमें से हर कमांड के बारे में, यहां दिए गए सेक्शन में ज़्यादा जानकारी दी गई है.

रिपोर्ट

report कमांड से, आपको यह जानकारी मिलती है कि किसी नोड पर कितने कॉम्पोनेंट चालू हैं, बंद हैं, अभी शुरू हो रहे हैं या फ़िलहाल मॉनिटर नहीं किए जा रहे हैं. यहां दिए गए उदाहरण में, report कमांड को लागू करने का तरीका बताया गया है:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report

यहां दिए गए उदाहरण में, एआईओ (ऑल-इन-वन) कॉन्फ़िगरेशन पर report का आउटपुट दिखाया गया है:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
up:            11 (100.0%)
down:           0 (0.0%)
initialising:   0 (0.0%)
unmonitored:    1 (8.3%)
total:         12 services

इस उदाहरण में, apigee-monit ने 12 में से 11 सेवाओं के चालू होने की जानकारी दी है. फ़िलहाल, एक सेवा की निगरानी नहीं की जा रही है.

report कमांड को पहली बार चलाने पर, आपको Connection refused गड़बड़ी का मैसेज मिल सकता है. ऐसे में, conf_monit_monit_delay_time प्रॉपर्टी की अवधि खत्म होने तक इंतज़ार करें. इसके बाद, फिर से कोशिश करें.

खास जानकारी

summary कमांड से, हर कॉम्पोनेंट की सूची दिखती है. साथ ही, उसकी स्थिति के बारे में भी पता चलता है. यहां दिए गए उदाहरण में, summary कमांड को लागू करने का तरीका बताया गया है:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

यहां दिए गए उदाहरण में, एआईओ (ऑल-इन-वन) कॉन्फ़िगरेशन पर summary का आउटपुट दिखाया गया है:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
Monit 5.25.1 uptime: 4h 20m
 Service Name                     Status                      Type
 host_name                        OK                          System
 apigee-zookeeper                 OK                          Process
 apigee-cassandra                 OK                          Process
 apigee-openldap                  OK                          Process
 apigee-qpidd                     OK                          Process
 apigee-postgresql                OK                          Process
 edge-ui                          OK                          Process
 edge-qpid-server                 OK                          Remote Host
 edge-postgres-server             OK                          Remote Host
 edge-management-server           OK                          Remote Host
 edge-router                      OK                          Remote Host
 edge-message-processor           OK                          Remote Host

अगर आपको summary कमांड पहली बार चलाने पर Connection refused गड़बड़ी का मैसेज मिलता है, तो conf_monit_monit_delay_time प्रॉपर्टी के लिए तय की गई अवधि तक इंतज़ार करें. इसके बाद, फिर से कोशिश करें.

apigee-monit को मॉनिटर करना

यह सबसे सही तरीका है कि आप समय-समय पर यह जांच करें कि हर नोड पर apigee-monit चल रहा है या नहीं.

यह देखने के लिए कि apigee-monit चल रहा है या नहीं, इस कमांड का इस्तेमाल करें:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

Apigee का सुझाव है कि apigee-monit चलाने वाले हर नोड पर, समय-समय पर इस कमांड को जारी करें. ऐसा करने का एक तरीका यह है कि cron जैसे किसी यूटिलिटी का इस्तेमाल किया जाए. यह यूटिलिटी, पहले से तय किए गए इंटरवल पर शेड्यूल किए गए टास्क को पूरा करती है.

apigee-monit को मॉनिटर करने के लिए cron का इस्तेमाल करने के लिए:

  1. cron की सुविधा जोड़ने के लिए, apigee-monit.cron डायरेक्ट्री को /etc/cron.d डायरेक्ट्री में कॉपी करें. ऐसा करने का तरीका यहां दिए गए उदाहरण में बताया गया है:
    cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
  2. बदलाव करने के लिए, apigee-monit.cron फ़ाइल खोलें.

    apigee-monit.cron फ़ाइल में, cron जॉब को लागू करने के साथ-साथ, उस जॉब को लागू करने की फ़्रीक्वेंसी के बारे में भी बताया जाता है. यहां डिफ़ॉल्ट वैल्यू दिखाने वाला उदाहरण दिया गया है:

    # Cron entry to check if monit process is running. If not start it
    */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

    इस फ़ाइल में यहां दिया गया सिंटैक्स इस्तेमाल किया जाता है. इसमें पहले पांच फ़ील्ड, उस समय के बारे में बताते हैं जब apigee-monit अपनी कार्रवाई करता है:

    min hour day_of_month month day_of_week task_to_execute

    उदाहरण के लिए, डिफ़ॉल्ट तौर पर लागू होने का समय */2 * * * * है. इससे cron को हर दो मिनट में apigee-monit प्रोसेस की जांच करने का निर्देश मिलता है.

    cron जॉब को एक मिनट में एक बार से ज़्यादा बार नहीं चलाया जा सकता.

    cron का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, अपने सर्वर ओएस का दस्तावेज़ या मैन पेज देखें.

  3. cron की सेटिंग बदलकर, अपने संगठन की नीतियों के मुताबिक करें. उदाहरण के लिए, अगर आपको हर पांच मिनट में टास्क पूरा करने के लिए, टास्क की फ़्रीक्वेंसी बदलनी है, तो टास्क की परिभाषा को इस तरह सेट करें:
    */5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
  4. apigee-monit.cron फ़ाइल को सेव करें.
  5. अपने क्लस्टर के हर नोड के लिए, इस प्रोसेस को दोहराएं.

अगर cron देखना शुरू नहीं करता है apigee-monit, तो पक्का करें कि:

  • cron नौकरी की परिभाषा के बाद एक खाली लाइन है.
  • फ़ाइल में सिर्फ़ एक cron नौकरी के बारे में बताया गया है. (टिप्पणी की गई लाइनों को नहीं गिना जाता.)

अगर आपको apigee-monit को रोकना है या कुछ समय के लिए बंद करना है, तो आपको इस cron जॉब को भी बंद करना होगा. ऐसा न करने पर, cron apigee-monit को फिर से शुरू कर देगा.

cron को बंद करने के लिए, इनमें से कोई एक तरीका अपनाएं:

  • /etc/cron.d/apigee-monit.cron फ़ाइल मिटाने के लिए:
    sudo rm /etc/cron.d/apigee-monit.cron

    अगर आपको बाद में apigee-monit देखने के लिए cron को फिर से चालू करना है, तो आपको इसे फिर से कॉपी करना होगा.

    या

  • /etc/cron.d/apigee-monit.cron फ़ाइल में बदलाव करें और लाइन की शुरुआत में "#" जोड़कर, नौकरी की परिभाषा पर टिप्पणी करें. उदाहरण के लिए:
    # 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit