503 सेवा उपलब्ध नहीं है - NoActiveTarget

आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है इस पेज पर जाएं Apigee X दस्तावेज़.
जानकारी

वीडियो

503 कोड की गड़बड़ियों के बारे में ज़्यादा जानकारी के लिए, ये वीडियो देखें:

वीडियो ब्यौरा
503 सेवा उपलब्ध नहीं है से जुड़ी समस्या हल करें और उसे ठीक करें - NoActiveTarget इनके बारे में जानें:
  • टारगेट सर्वर और हेल्थ मॉनिटर की अहमियत
  • रीयल-टाइम 503 सेवा उपलब्ध नहीं है से जुड़ी समस्या को हल करना और उसे हल करना - NoActiveTargets गड़बड़ी

समस्या का ब्यौरा

क्लाइंट ऐप्लिकेशन को सेवा उपलब्ध नहीं है मैसेज और गड़बड़ी कोड NoActiveTarget का इस्तेमाल किया जा सकता है.

गड़बड़ी का मैसेज

आपको गड़बड़ी का यह जवाब दिखेगा:

HTTP/1.1 503 Service Unavailable
  

आपको एचटीटीपी रिस्पॉन्स में गड़बड़ी का यह मैसेज दिखेगा:

{
   "fault": {
      "faultstring": "The Service is temporarily unavailable",
      "detail": {
           "errorcode": "messaging.adaptors.http.flow.NoActiveTargets"
       }
    }
}
  

संभावित कारण

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

नीचे दी गई टेबल में, गड़बड़ी कोड NoActiveTargets रिस्पॉन्स के साथ, 503 सेवा उपलब्ध नहीं है की संभावित वजहों की सूची दी गई है:

वजह ब्यौरा समस्या हल करने वाले चरणों को कौन पूरा कर सकता है
टारगेट सर्वर बंद है टारगेट एंडपॉइंट कॉन्फ़िगरेशन में तय किया गया टारगेट सर्वर बंद है. Edge के सार्वजनिक और प्राइवेट क्लाउड उपयोगकर्ता
गलत डीएनएस रिज़ॉल्यूशन की वजह से कनेक्शन में गड़बड़ियां टारगेट सर्वर के डीएनएस रिज़ॉल्यूशन की वजह से खराब आईपी पते मिले. इनकी वजह से कनेक्शन से जुड़ी गड़बड़ियां हुईं. Edge के प्राइवेट क्लाउड के उपयोगकर्ता
कनेक्शन की गड़बड़ियां नेटवर्क या कनेक्टिविटी से जुड़ी समस्याएं, क्लाइंट को सर्वर से कनेक्ट करने से रोकती हैं. Edge के प्राइवेट क्लाउड के उपयोगकर्ता
टारगेट होस्ट का गलत दूसरा नाम तय किया गया टारगेट सर्वर होस्ट गलत है या उसमें अनचाहे वर्ण (जैसे कि खाली जगह) हैं. Edge के सार्वजनिक और प्राइवेट क्लाउड उपयोगकर्ता
एसएसएल हैंडशेक की समस्याएं क्लाइंट और सर्वर के बीच TLS/SSL हैंडशेक विफल हो गया. Edge के सार्वजनिक और प्राइवेट क्लाउड उपयोगकर्ता
सेहत की जांच में गड़बड़ी टारगेट सर्वर की परफ़ॉर्मेंस की जांच करने के लिए कॉन्फ़िगर की गई जांच में किसी वजह से गड़बड़ी हो सकती है. Edge के प्राइवेट क्लाउड के उपयोगकर्ता

वजह: टारगेट सर्वर बंद है

अगर टारगेट एंडपॉइंट कॉन्फ़िगरेशन में बताए गए सभी टारगेट सर्वर बंद हैं, तो 503 सेवा उपलब्ध नहीं है वाला रिस्पॉन्स, गड़बड़ी कोड NoActiveTargets के साथ पाएं.

संक्रमण की जांच

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

  2. टारगेट एंडपॉइंट की पहचान करने के बाद, टारगेट एंडपॉइंट कॉन्फ़िगरेशन से इस्तेमाल किया गया टारगेट सर्वर नाम पाएं, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:
    <TargetEndpoint name="default">>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="demo-target" />
        </LoadBalancer>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
          
    अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

    ऊपर दिए गए उदाहरण में, डेमो-टारगेट नाम का सिर्फ़ एक टारगेट सर्वर है.

  3. Edge यूज़र इंटरफ़ेस (यूआई) या Edge API कॉल का इस्तेमाल करके, टारगेट एंडपॉइंट में इस्तेमाल किए जाने वाले हर टारगेट सर्वर की परिभाषा पाएं.

    Edge यूज़र इंटरफ़ेस (यूआई)

    Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके परिभाषा पाने के लिए:

    1. एडमिन > एनवायरमेंट > टारगेट सर्वर.
    2. वह विशिष्ट परिवेश चुनें जिसमें आपको विफलता दिखाई दे रही है.
    3. टारगेट सर्वर की परिभाषा पाने के लिए, किसी टारगेट सर्वर का नाम खोजें.

      उदाहरण के लिए, टारगेट सर्वर का नाम demo-target टाइप करें. इसके बाद, आपको उसकी परिभाषा इस तरह दिखेगी:

      टारगेट सर्वर का नाम और चालू/बंद स्थिति

      यहां ध्यान दें कि टारगेट सर्वर डेमो-टारगेट में एक होस्ट उपनाम, पोर्ट #, और एसएसएल की सुविधा चालू है. हालांकि, टारगेट सर्वर अपने-आप बंद है , जो चालू है एलिमेंट के धूसर होने पर दिखता है.

    Edge API

    Edge API का इस्तेमाल करके परिभाषा पाने के लिए:

    का उपयोग करें टारगेट सर्वर की परिभाषा पाने के लिए, TargetServer API पाएं.

    टारगेट सर्वर की परिभाषा का आउटपुट

    <TargetServer name="demo-target">
      <Host>demo-target.apigee.net</Host>
      <Port>443</Port>
      <IsEnabled>false</IsEnabled>
      <SSLInfo>
          <Enabled>true</Enabled>
      </SSLInfo>
    </TargetServer>
              

    Apigee API के आउटपुट से पता चलता है कि टारगेट सर्वर का डेमो-टारगेट बंद है क्योंकि IsEnabled एलिमेंट 'गलत' पर सेट है.

    टारगेट सर्वर बंद होने की वजह से, मैसेज प्रोसेसर 503 Service उपलब्ध नहीं है और गड़बड़ी कोड NoActiveTarget को इस तरह देख सकता है: ग्राहक को तुरंत जवाब दे सकता है.

रिज़ॉल्यूशन

पक्का करें कि आपके एपीआई के टारगेट एंडपॉइंट कॉन्फ़िगरेशन में इस्तेमाल किए गए खास टारगेट सर्वर प्रॉक्सी हमेशा सक्षम होती है.

Edge यूज़र इंटरफ़ेस (यूआई)

  1. एडमिन > एनवायरमेंट > टारगेट सर्वर.
  2. वह विशिष्ट परिवेश चुनें जिसमें आपको विफलता दिखाई दे रही है.
  3. किसी टारगेट सर्वर का नाम डालकर उसकी परिभाषा जानें.
  4. खास टारगेट सर्वर चुनें और फिर बदलाव करें पर क्लिक करें.
  5. चालू किया गया चेकबॉक्स चुनें.
  6. अपडेट करें पर क्लिक करें.

Edge API

का उपयोग करें टारगेट सर्वर की परिभाषा अपडेट करने के लिए, Target Server API को अपडेट करें और पक्का करें कि एपीआई के अनुरोध पेलोड में IsEnabled को यहां दिखाए गए तरीके से सही पर सेट किया गया है:

<TargetServer name="demo-target">
  <Host>demo-target.apigee.net</Host>
  <Port>443</Port>
  <IsEnabled>true</IsEnabled>
  <SSLInfo>
      <Enabled>true</Enabled>
  </SSLInfo>
</TargetServer>
        

अगर इसके बाद भी समस्या बनी रहती है, तो यहां जाएं गड़बड़ी की जानकारी ज़रूर इकट्ठा करें.

एपीआई मॉनिटरिंग का इस्तेमाल करके समस्याओं का पता लगाना

एपीआई मॉनिटरिंग की सुविधा की मदद से, समस्याओं को ठीक किया जा सकता है गड़बड़ी, परफ़ॉर्मेंस, और इंतज़ार के समय से जुड़ी समस्याओं, और इनके सोर्स का तेज़ी से विश्लेषण किया जा सकता है. जैसे, डेवलपर जैसे कि ऐप्लिकेशन, एपीआई प्रॉक्सी, बैकएंड टारगेट या एपीआई प्लैटफ़ॉर्म.

उदाहरण के तौर पर दिए गए किसी उदाहरण को देखना जो एपीआई मॉनिटरिंग का इस्तेमाल करके, आपके एपीआई की 5xx समस्याओं को हल करने का तरीका बताती है. उदाहरण के लिए, आप चाहें, तो एक सूचना सेट अप कर सकते हैं. इससे आपको messaging.adaptors.http.flow.NoActiveTargets की संख्या गड़बड़ियों की संख्या एक तय सीमा से ज़्यादा हो गई है.

ऐप्लिकेशन की परफ़ॉर्मेंस से जुड़ी जानकारी इकट्ठा करना ज़रूरी है

अगर ऊपर दिए गए निर्देशों का पालन करने के बाद भी समस्या बनी रहती है, तो कृपया यह जानकारी इकट्ठा करें डाइग्नोस्टिक जानकारी. Apigee सहायता टीम से संपर्क करें और जानकारी शेयर करें:

  1. अगर आप Public Cloud उपयोगकर्ता हैं, तो यह जानकारी दें:
    1. संगठन का नाम
    2. एनवायरमेंट का नाम
    3. एपीआई प्रॉक्सी का नाम
    4. गड़बड़ी को ठीक करने के लिए curl कमांड पूरा करें
    5. 503 सेवा वाले अनुरोधों वाली ट्रेस फ़ाइल. यह गड़बड़ी कोड NoActiveTargets के साथ उपलब्ध नहीं है
  2. अगर आप प्राइवेट क्लाउड उपयोगकर्ता हैं, तो यह जानकारी दें:
    1. पूरा गड़बड़ी का मैसेज दिखा
    2. एनवायरमेंट का नाम
    3. एपीआई प्रॉक्सी बंडल
    4. 503 सेवा वाले अनुरोधों वाली ट्रेस फ़ाइल. यह गड़बड़ी कोड NoActiveTargets के साथ उपलब्ध नहीं है
    5. NGINX ऐक्सेस लॉग

      (/opt/apigee/var/log/edge-router/nginx/<org>~<env>.<port#>_access_log)

    6. मैसेज प्रोसेसर के लॉग

      (/opt/apigee/var/log/edge-message-processor/logs/system.log)