Edge को कॉन्फ़िगर करने का तरीका

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

Apigee, .properties फ़ाइलों में बदलाव करने की तकनीक को कोड के साथ config (कभी-कभी CwC भी कहा जाता है). असल में, कॉन्फ़िगरेशन वाला कोड, .properties फ़ाइलों की सेटिंग के आधार पर, की/वैल्यू लुकअप टूल होता है. कॉन्फ़िगरेशन वाले कोड में, कुंजियों को टोकन कहा जाता है. इसलिए, Edge को कॉन्फ़िगर करने के लिए .properties में टोकन सेट करें फ़ाइलें.

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

अगर इसे क्रम के हिसाब से क्रम में लगाया जाता है, तो ग्राहक के साथ सेटिंग इस तरह क्रम में लगाई जाती है ऐसी सेटिंग जिन्हें इंस्टॉलर टीम की किसी भी सेटिंग को ओवरराइड करने की प्राथमिकता सबसे ज़्यादा हो या Apigee:

  1. ग्राहक
  2. इंस्टॉलर
  3. कॉम्पोनेंट

किसी टोकन की मौजूदा वैल्यू का पता लगाना

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

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

जहां component_name कॉम्पोनेंट का नाम है और token टोकन है का इस्तेमाल किया जा सकता है.

यह कमांड, कॉम्पोनेंट की .properties फ़ाइलों की हैरारकी खोजता है, ताकि टोकन की मौजूदा वैल्यू का पता लगाया जा सके.

नीचे दिए गए उदाहरण में, राउटर के लिए conf_http_HTTPRequest.line.limit टोकन की मौजूदा वैल्यू की जांच की गई है:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

आपको ऐसा आउटपुट दिखेगा:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

अगर टोकन का मान # से शुरू होता है, तो इसका मतलब है कि इस पर टिप्पणी की गई है और आपको विशेष सिंटैक्स का इस्तेमाल करें. ज़्यादा जानकारी के लिए, यह देखें वह टोकन सेट करें जिस पर फ़िलहाल टिप्पणी की जा रही है.

अगर आपको टोकन का पूरा नाम नहीं पता है, तो खोजने के लिए grep जैसे टूल का इस्तेमाल करें प्रॉपर्टी का नाम या कीवर्ड डालें. अधिक जानकारी के लिए, देखें कि टोकन.

प्रॉपर्टी फ़ाइलें

इसमें कॉम्पोनेंट की ऐसी कॉन्फ़िगरेशन फ़ाइलें मौजूद होती हैं जिनमें बदलाव किया जा सकता है और जिनमें बदलाव नहीं किया जा सकता. इस सेक्शन में, इन फ़ाइलें.

कॉम्पोनेंट की ऐसी कॉन्फ़िगरेशन फ़ाइलें जिनमें बदलाव किया जा सकता है

यहां दी गई टेबल में, Apigee कॉम्पोनेंट और प्रॉपर्टी फ़ाइलों की सूची दी गई है. इन कॉम्पोनेंट को कॉन्फ़िगर करने के लिए, इन फ़ाइलों में बदलाव किया जा सकता है:

कॉम्पोनेंट कॉम्पोनेंट का नाम बदलाव की जा सकने वाली कॉन्फ़िगरेशन फ़ाइल
कास्सांद्रा apigee-cassandra /opt/apigee/customer/application/cassandra.properties
Apigee एसएसओ apigee-sso /opt/apigee/customer/application/sso.properties
मैनेजमेंट सर्वर edge-management-server /opt/apigee/customer/application/management-server.properties
मैसेज प्रोसेसर edge-message-processor /opt/apigee/customer/application/message-processor.properties
apigee-monit apigee-monit /opt/apigee/customer/application/monit.properties
क्लासिक यूआई (नए Edge यूआई पर कोई असर नहीं पड़ता) edge-ui /opt/apigee/customer/application/ui.properties
एज यूआई (सिर्फ़ नया एज यूआई; क्लासिक यूआई पर इसका कोई असर नहीं पड़ता) apigee-management-ui लागू नहीं (इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करें)
OpenLDAP apigee-openldap /opt/apigee/customer/application/openldap.properties
Postgres सर्वर edge-postgres-server /opt/apigee/customer/application/postgres-server.properties
PostgreSQL डेटाबेस apigee-postgresql /opt/apigee/customer/application/postgressql.properties
Qpid सर्वर edge-qpid-server /opt/apigee/customer/application/qpid-server.properties
Qpidd apigee-qpidd /opt/apigee/customer/application/qpidd.properties
राऊटर edge-router /opt/apigee/customer/application/router.properties
ज़ूकीपर apigee-zookeeper /opt/apigee/customer/application/zookeeper.properties

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

इसके अलावा, आपको यह पक्का करना होगा कि प्रॉपर्टी फ़ाइल का मालिकाना हक "apigee" के पास है उपयोगकर्ता:

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

कॉम्पोनेंट की ऐसी कॉन्फ़िगरेशन फ़ाइलें जिनमें बदलाव नहीं किया जा सकता

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

जानकारी देने वाली (बदलाव न की जा सकने वाली) फ़ाइलों में ये चीज़ें शामिल होती हैं:

मालिक फ़ाइल का नाम या डायरेक्ट्री
इंस्टॉल करना
/opt/apigee/token
कॉम्पोनेंट
/opt/apigee/component_name/conf

जहां 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 (क्लासिक यूज़र इंटरफ़ेस (यूआई))

टोकन वैल्यू सेट करें

आप इसमें मौजूद सिर्फ़ .properties फ़ाइलों में बदलाव कर सकते हैं: /opt/apigee/customer/application डायरेक्ट्री. हर कॉम्पोनेंट का अपना होता है .properties फ़ाइल है. उदाहरण के लिए, router.properties और management-server.properties. प्रॉपर्टी फ़ाइलों की पूरी सूची देखने के लिए, .property फ़ाइलों की जगह देखें.

.properties फ़ाइल बनाने के लिए:

  1. एडिटर में एक नई टेक्स्ट फ़ाइल बनाएं. फ़ाइल का नाम ग्राहक फ़ाइलों के लिए ऊपर दी गई तालिका.
  2. फ़ाइल के मालिक को बदलकर "apigee:apigee" करें, जैसा कि नीचे दिए गए उदाहरण में बताया गया है:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    अगर आपने Edge सेवा को चलाने वाले उपयोगकर्ता को "apigee" से बदला है उपयोगकर्ता, इस्तेमाल Edge का इस्तेमाल करने वाले उपयोगकर्ता को मालिकाना हक बदलने के लिए chown सेवा.

जब आप Edge को अपग्रेड करते हैं, तो .properties फ़ाइलों को /opt/apigee/customer/application डायरेक्ट्री पढ़ी गई. इसका मतलब है कि अपग्रेड करने पर, कॉम्पोनेंट पर सेट की गई सभी प्रॉपर्टी बरकरार रहेंगी.

टोकन की वैल्यू सेट करने के लिए:

  1. कॉम्पोनेंट की .properties फ़ाइल में बदलाव करें.
  2. टोकन की वैल्यू जोड़ें या बदलें. नीचे दिया गया उदाहरण "10k" के लिए conf_http_HTTPRequest.line.limit प्रॉपर्टी:
    conf_http_HTTPRequest.line.limit=10k

    अगर टोकन के लिए कई वैल्यू इस्तेमाल की गई हैं, तो हर वैल्यू को कॉमा लगाकर अलग करें, जैसा कि यहां बताया गया है उदाहरण में यह दिखाया गया है:

    conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

    इस तरह की सूची में नई वैल्यू जोड़ने के लिए, आम तौर पर वैल्यू के आखिर में नई वैल्यू जोड़नी होती है सूची में से चुनें.

  3. कॉम्पोनेंट को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service component_name restart

    जहां 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 (क्लासिक यूज़र इंटरफ़ेस (यूआई))

    उदाहरण के लिए, router.properties में बदलाव करने के बाद, राऊटर को रीस्टार्ट करें:

    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  4. (ज़रूरी नहीं) यह जांच करें कि टोकन वैल्यू, नई वैल्यू पर सेट है या नहीं. configure -search विकल्प. जैसे:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

    configure -search के बारे में ज़्यादा जानकारी के लिए, इसे देखें टोकन की मौजूदा वैल्यू तय करना.

टोकन ढूंढें

ज़्यादातर मामलों में, आपको जिन टोकन को सेट करना होता है उनकी पहचान इस गाइड में की जाती है. हालांकि, अगर आपको किसी ऐसे मौजूदा टोकन की वैल्यू को ओवरराइड करने के लिए जिसका पूरा नाम या जगह आपको पता नहीं है, तो इसका इस्तेमाल करें कॉम्पोनेंट की source डायरेक्ट्री खोजने के लिए grep.

उदाहरण के लिए, अगर आपको पता है कि आपने Edge की पिछली रिलीज़ में, session.maxAge प्रॉपर्टी सेट की थी और आपको यह जानना है कि इसे सेट करने के लिए किस टोकन वैल्यू का इस्तेमाल किया गया था, तो /opt/apigee/edge-ui/source डायरेक्ट्री में मौजूद प्रॉपर्टी के लिए grep:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

आपको इस फ़ॉर्म में नतीजा दिखेगा:

/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}

नीचे दिया गया उदाहरण यूज़र इंटरफ़ेस के session.maxAge टोकन की वैल्यू दिखाता है:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

{T}{/T} टैग के बीच की स्ट्रिंग उस टोकन का नाम है जिसे आपके पास सेट करने का विकल्प है यूज़र इंटरफ़ेस (यूआई) की .properties फ़ाइल में.

वह टोकन सेट करें जिस पर फ़िलहाल टिप्पणी की जा रही है

कुछ टोकन, Edge कॉन्फ़िगरेशन फ़ाइलों में टिप्पणी किए जाते हैं. अगर कोई ऐसा टोकन सेट किया जाता है जो किसी इंस्टॉल या कॉम्पोनेंट की कॉन्फ़िगरेशन फ़ाइल में टिप्पणी की गई हो, तो आपकी सेटिंग को अनदेखा कर दिया जाता है.

Edge कॉन्फ़िगरेशन फ़ाइल में टिप्पणी के तौर पर बताए गए टोकन की वैल्यू सेट करने के लिए, 'खास' का इस्तेमाल करें सिंटैक्स का इस्तेमाल इस तरह से किया जा सकता है:

conf/filename+propertyName=propertyValue

उदाहरण के लिए, मैसेज पर HTTPClient.proxy.host नाम की प्रॉपर्टी सेट करने के लिए प्रोसेसर, प्रॉपर्टी का टोकन तय करने के लिए पहला grep:

grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"

grep कमांड, ऐसे नतीजे दिखाता है जिनमें टोकन का नाम शामिल होता है. ध्यान दें कि # प्रीफ़िक्स के ज़रिए, प्रॉपर्टी के नाम को कैसे हटाया गया है:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

इस प्रॉपर्टी का मान सेट करने के लिए, बदलाव करें /opt/apigee/customer/application/message-processor.properties, लेकिन किसी खास सोर्स का इस्तेमाल करें सिंटैक्स की मदद से बनाया गया है, जैसा कि नीचे दिए गए उदाहरण में बताया गया है:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

इस मामले में, आपको प्रॉपर्टी के नाम के आगे conf/http.properties+ जोड़ना होगा. यह प्रॉपर्टी वाली कॉन्फ़िगरेशन फ़ाइल की जगह और नाम है, जिसके बाद "+" आता है.

मैसेज प्रोसेसर को रीस्टार्ट करने के बाद, फ़ाइल की जांच करें /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

फ़ाइल के आखिर में, आपको प्रॉपर्टी का सेट इस फ़ॉर्मैट में दिखेगा:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com

ट्रेस यूज़र इंटरफ़ेस (यूआई) के अनुरोध भेजें सेक्शन से अनुरोधों के लिए फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करें

यह सेक्शन बताता है कि वैकल्पिक प्रॉक्सी क्रेडेंशियल के साथ ट्रेस यूज़र इंटरफ़ेस (यूआई) का अनुरोध सेक्शन भेजें. फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करने के लिए:

  1. /opt/apigee/customer/application/ui.properties में बदलाव करें और पक्का करें कि फ़ाइल मालिक apigee:apigee.
  2. अपने प्रॉक्सी कॉन्फ़िगरेशन की वैल्यू बदलकर, इन बदलावों को जोड़ें:
    conf_application_http.proxyhost=proxy.example.com
    conf_application_http.proxyport=8080
    conf_application_http.proxyuser=apigee
    conf_application_http.proxypassword=Apigee123!
  3. क्लासिक यूज़र इंटरफ़ेस (यूआई) को सेव करें और फिर से शुरू करें.

Apigee राऊटर/Ngnx में कस्टम लॉग फ़ॉर्मैट जोड़ें

कुछ मामलों में, आपको डिफ़ॉल्ट Apigee राऊटर/Nginx लॉग फ़ॉर्मैट को बदलना होगा या वैरिएबल जोड़ें. डिफ़ॉल्ट Apigee राऊटर/Nginx लॉग फ़ॉर्मैट को अपडेट करने के लिए कॉन्फ़िगरेशन:

  1. अगर router.properties फ़ाइल मौजूद नहीं है, तो उसे नीचे दिखाए गए पाथ के साथ बनाएं:
    /opt/apigee/customer/application/router.properties
  2. router_new नाम वाला नया log_format कॉन्फ़िगरेशन बनाने के लिए, router.properties फ़ाइल में यह कॉन्टेंट जोड़ें:
    conf_load_balancing_load.balancing.driver.nginx.global.http.parameters.template.extra=log_format router_new 'time_iso8601\\\\thostname\\\\tremote_addr:remote_port\\\\t'\\\\n\\n 'upstream_addr\\\\trequest_time\\\\t-\\\\t-\\\\t'\\\\n\\n 'status\\\\tupstream_status\\\\trequest_length\\\\t'\\\\n\\n 'body_bytes_sent\\\\t'\\\\n\\n 'request\\\\tupstream_http_x_apigee_message_id\\\\t'\\\\n\\n 'http_user_agent\\\\thost\\thostname-pid-connection-connection_requests\\\\tmy_nginx_var_xff\\t'\\\\n\\n 'upstream_http_x_apigee_fault_flag\\\\tupstream_http_x_apigee_fault_source\\\\tupstream_http_x_apigee_fault_code\\\\t'\\\\n\\n 'upstream_http_x_apigee_fault_policy\\tupstream_http_x_apigee_fault_flow\\tupstream_http_x_apigee_fault_revision\\t'\\\\n\\n 'upstream_http_x_apigee_dp_color\\\\tmy_x_apigee_target_latency\\\\t'\\\\n\\n 'upstream_http_x_apigee_proxy\\\\tupstream_http_x_apigee_proxy_basepath\\\\t'\\\\n\\n 'self_region\\\\tself_pod\\\\tself_color\\\\tssl_protocol\\\\tssl_client_verify\\\\tssl_session_id\\\\tssl_session_reused\\\\tupstream_pod\\\\tupstream_region';\\\\n\\n\n
    conf_load_balancing_load.balancing.driver.nginx.access.log={conf_load_balancing_load.balancing.driver.nginx.log.dir}/{org}~{env}.{port}_access_log router_new

    ऊपर दिए गए निर्देशों में वैरिएबल को ज़रूरत के मुताबिक अपडेट करें. आप खोज बार में डिफ़ॉल्ट नीचे दी गई फ़ाइल में log_format के लिए कॉन्फ़िगरेशन मान:

    /opt/apigee/edge-router/conf/load_balancing.properties

    Nginx वैरिएबल की एक सूची http://nginx.org/en/docs/varindex.html पर दिखाई गई है.

  3. नया कॉन्फ़िगरेशन लागू करने के लिए राऊटर को रीस्टार्ट करें:
    apigee-service edge-router restart
  4. यह पता करना कि log_format का नया कॉन्फ़िगरेशन (router_new) को फ़ाइल में जोड़ दिया गया है /opt/nginx/conf.d/0-default.conf:
        
    cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
  5. एपीआई प्रॉक्सी को कुछ एपीआई अनुरोध भेजें और फ़ाइल में नए लॉग फ़ॉर्मैट की पुष्टि करें
    /opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file