इंस्टॉल करने के बाद Edge को कॉन्फ़िगर करने के लिए, .properties
फ़ाइलों और Edge यूटिलिटी का इस्तेमाल किया जाता है. उदाहरण के लिए, Edge UI पर टीएलएस/एसएसएल को कॉन्फ़िगर करने के लिए, ज़रूरी प्रॉपर्टी सेट करने के लिए .properties
फ़ाइलों में बदलाव करें. .properties
फ़ाइलों में किए गए बदलावों को लागू करने के लिए, आपको Edge के उस कॉम्पोनेंट को रीस्टार्ट करना होगा जिस पर बदलावों का असर पड़ा है.
Apigee, .properties
फ़ाइलों में बदलाव करने की तकनीक को कॉन्फ़िगरेशन के साथ कोड कहता है. इसे कभी-कभी CwC भी कहा जाता है. असल में, कॉन्फ़िगरेशन वाला कोड, .properties
फ़ाइलों में मौजूद सेटिंग के आधार पर, की/वैल्यू लुकअप टूल होता है. कॉन्फ़िगरेशन वाले कोड में, कुंजियों को टोकन कहा जाता है. इसलिए, Edge को कॉन्फ़िगर करने के लिए, .properties
फ़ाइलों में टोकन सेट किए जाते हैं.
कॉन्फ़िगरेशन वाले कोड की मदद से, Edge कॉम्पोनेंट डिफ़ॉल्ट वैल्यू सेट कर सकते हैं. ये वैल्यू, प्रॉडक्ट के साथ शिप की जाती हैं. साथ ही, इंस्टॉलेशन टीम को इंस्टॉलेशन टोपोलॉजी के आधार पर इन सेटिंग को बदलने की अनुमति मिलती है. इसके बाद, ग्राहक अपनी पसंद के मुताबिक किसी भी प्रॉपर्टी को बदल सकते हैं.
अगर इसे क्रम के हिसाब से देखा जाए, तो सेटिंग इस तरह से व्यवस्थित की जाती हैं. इसमें ग्राहक की सेटिंग को सबसे ज़्यादा प्राथमिकता दी जाती है, ताकि इंस्टॉलर टीम या Apigee की किसी भी सेटिंग को बदला जा सके:
- ग्राहक
- इंस्टॉलर
- कॉम्पोनेंट
किसी टोकन की मौजूदा वैल्यू का पता लगाना
.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 के कॉम्पोनेंट और प्रॉपर्टी फ़ाइलों की सूची दी गई है. इन फ़ाइलों में बदलाव करके, इन कॉम्पोनेंट को कॉन्फ़िगर किया जा सकता है:
कॉम्पोनेंट | कॉम्पोनेंट का नाम | बदलाव की जा सकने वाली कॉन्फ़िगरेशन फ़ाइल |
---|---|---|
Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
Apigee SSO | 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 |
Edge यूज़र इंटरफ़ेस (सिर्फ़ नए Edge यूज़र इंटरफ़ेस पर लागू होता है; इसका असर क्लासिक यूज़र इंटरफ़ेस पर नहीं पड़ता) | apigee-management-ui |
लागू नहीं होता (इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करें) |
SymasLDAP | 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/postgresql.properties |
Qpid Server | 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 कॉम्पोनेंट की पहचान करता है. ये वैल्यू हो सकती हैं:
|
टोकन की वैल्यू सेट करना
सिर्फ़ /opt/apigee/customer/application
डायरेक्ट्री में मौजूद .properties
फ़ाइलों में बदलाव किया जा सकता है. हर कॉम्पोनेंट की अपनी .properties
फ़ाइल होती है. उदाहरण के लिए, router.properties
और management-server.properties
. प्रॉपर्टी फ़ाइलों की पूरी सूची के लिए, .properties फ़ाइलों की जगह देखें.
.properties
फ़ाइल बनाने के लिए:
- एडिटर में एक नई टेक्स्ट फ़ाइल बनाएं. फ़ाइल का नाम, ऊपर दी गई टेबल में कस्टमर फ़ाइलों के लिए दिखाए गए नाम से मेल खाना चाहिए.
- फ़ाइल के मालिकाना हक को "apigee:apigee" पर सेट करें. उदाहरण के लिए, यहां दिया गया तरीका अपनाएं:
chown apigee:apigee /opt/apigee/customer/application/router.properties
अगर आपने Edge सेवा चलाने वाले उपयोगकर्ता को "apigee" उपयोगकर्ता से बदल दिया है, तो Edge सेवा चलाने वाले उपयोगकर्ता को मालिकाना हक देने के लिए,
chown
का इस्तेमाल करें.
Edge को अपग्रेड करने पर, .properties
डायरेक्ट्री में मौजूद .properties
फ़ाइलें पढ़ी जाती हैं./opt/apigee/customer/application
इसका मतलब है कि अपग्रेड करने पर, कॉम्पोनेंट पर सेट की गई सभी प्रॉपर्टी बनी रहेंगी.
किसी टोकन की वैल्यू सेट करने के लिए:
- कॉम्पोनेंट की
.properties
फ़ाइल में बदलाव करें. - टोकन की वैल्यू जोड़ें या बदलें. यहां दिए गए उदाहरण में,
conf_http_HTTPRequest.line.limit
प्रॉपर्टी की वैल्यू "10k" पर सेट की गई है:conf_http_HTTPRequest.line.limit=10k
अगर टोकन की वैल्यू एक से ज़्यादा हैं, तो हर वैल्यू को कॉमा से अलग करें. जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
इस तरह की सूची में नई वैल्यू जोड़ने के लिए, आम तौर पर नई वैल्यू को सूची के आखिर में जोड़ा जाता है.
- कॉम्पोनेंट को रीस्टार्ट करें:
/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
- (ज़रूरी नहीं)
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
property सेट की थी और आपको इसे सेट करने के लिए इस्तेमाल की गई टोकन वैल्यू के बारे में जानना है, तो /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
उदाहरण के लिए, Message Processor पर 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
Trace UI के 'अनुरोध भेजें' सेक्शन से किए गए अनुरोधों के लिए, फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करें
इस सेक्शन में, Trace UI के 'अनुरोध भेजें' सेक्शन से किए गए अनुरोधों के लिए, फ़ॉरवर्ड प्रॉक्सी को कॉन्फ़िगर करने का तरीका बताया गया है. इसमें प्रॉक्सी क्रेडेंशियल का इस्तेमाल करना ज़रूरी नहीं है. फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करने के लिए:
/opt/apigee/customer/application/ui.properties
में बदलाव करें और पक्का करें कि फ़ाइल का मालिकाना हकapigee:apigee
के पास हो.- यहां दिए गए ओवरराइड जोड़ें. साथ ही, वैल्यू को अपने प्रॉक्सी कॉन्फ़िगरेशन के हिसाब से बदलें:
conf_application_http.proxyhost=proxy.example.com conf_application_http.proxyport=8080 conf_application_http.proxyuser=apigee conf_application_http.proxypassword=Apigee123!
- क्लासिक यूज़र इंटरफ़ेस (यूआई) को सेव करें और फिर से चालू करें.
Apigee Router/Nginx में कस्टम लॉग फ़ॉर्मैट जोड़ना
कुछ मामलों में, आपको Apigee Router/Nginx के डिफ़ॉल्ट लॉग फ़ॉर्मैट में बदलाव करना पड़ सकता है या चर जोड़ना पड़ सकता है. Apigee Router/Nginx के डिफ़ॉल्ट लॉग फ़ॉर्मैट कॉन्फ़िगरेशन को अपडेट करने के लिए:
- अगर
router.properties
फ़ाइल मौजूद नहीं है, तो नीचे दिए गए पाथ पर इसे बनाएं:/opt/apigee/customer/application/router.properties
router_new
नाम से नयाlog_format
कॉन्फ़िगरेशन बनाने के लिए,router.properties
फ़ाइल में यह कॉन्टेंट जोड़ें:log_format
: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 पर दिखती है.
- नया कॉन्फ़िगरेशन लागू करने के लिए, राऊटर को रीस्टार्ट करें:
apigee-service edge-router restart
- देखें कि फ़ाइल
/opt/nginx/conf.d/0-default.conf
में नयाlog_format
कॉन्फ़िगरेशन (router_new
) जोड़ा गया है या नहीं:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- एपीआई प्रॉक्सी को कुछ एपीआई अनुरोध भेजें और फ़ाइल में नए लॉग फ़ॉर्मैट की पुष्टि करें
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file