इंस्टॉल करने के बाद Edge को कॉन्फ़िगर करने के लिए, .properties
फ़ाइलों और Edge की सुविधाओं का इस्तेमाल किया जाता है. उदाहरण के लिए, Edge यूज़र इंटरफ़ेस (यूआई) पर TLS/एसएसएल कॉन्फ़िगर करने के लिए, ज़रूरी प्रॉपर्टी सेट करने के लिए,
.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 के कॉम्पोनेंट और प्रॉपर्टी की उन फ़ाइलों की सूची दी गई है जिनमें बदलाव करके, उन कॉम्पोनेंट को कॉन्फ़िगर किया जा सकता है:
कॉम्पोनेंट | कॉम्पोनेंट का नाम | ऐसी कॉन्फ़िगरेशन फ़ाइल जिसमें बदलाव किया जा सकता है |
---|---|---|
कassandra | 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 |
Edge यूज़र इंटरफ़ेस (सिर्फ़ नए Edge यूज़र इंटरफ़ेस पर लागू होता है. क्लासिक यूज़र इंटरफ़ेस पर इसका कोई असर नहीं पड़ता) | 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/postgresql.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, कॉम्पोनेंट की पहचान करता है. ये वैल्यू हो सकती हैं:
|
टोकन की वैल्यू सेट करना
आपके पास सिर्फ़ /opt/apigee/customer/application
डायरेक्ट्री में मौजूद .properties
फ़ाइलों में बदलाव करने का विकल्प है. उस डायरेक्ट्री में हर कॉम्पोनेंट की अपनी
.properties
फ़ाइल होती है. उदाहरण के लिए, router.properties
और management-server.properties
. प्रॉपर्टी फ़ाइलों की पूरी सूची के लिए, .property फ़ाइलों की जगह देखें.
.properties
फ़ाइल बनाने के लिए:
- किसी एडिटर में एक नई टेक्स्ट फ़ाइल बनाएं. कस्टमर फ़ाइलों के लिए, फ़ाइल का नाम ऊपर दी गई टेबल में दी गई सूची से मेल खाना चाहिए.
- फ़ाइल के मालिक का नाम बदलकर "apigee:apigee" करें, जैसा कि इस उदाहरण में दिखाया गया है:
chown apigee:apigee /opt/apigee/customer/application/router.properties
अगर आपने Edge सेवा को चलाने वाले उपयोगकर्ता को "apigee" उपयोगकर्ता से बदल दिया है, तो Edge सेवा को चलाने वाले उपयोगकर्ता को मालिकाना हक देने के लिए,
chown
का इस्तेमाल करें.
Edge को अपग्रेड करने पर, /opt/apigee/customer/application
डायरेक्ट्री में मौजूद .properties
फ़ाइलों को पढ़ा जाता है. इसका मतलब है कि अपग्रेड करने पर, कॉम्पोनेंट पर सेट की गई सभी प्रॉपर्टी बरकरार रहेंगी.
टोकन की वैल्यू सेट करने के लिए:
- कॉम्पोनेंट की
.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
प्रॉपर्टी सेट की थी और आपको यह जानना है कि इसे सेट करने के लिए किस टोकन वैल्यू का इस्तेमाल किया गया था, तो /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
Trace के यूज़र इंटरफ़ेस के 'अनुरोध भेजें' सेक्शन में, अनुरोधों के लिए फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करना
इस सेक्शन में, अनुरोधों के लिए फ़ॉरवर्ड प्रॉक्सी को कॉन्फ़िगर करने का तरीका बताया गया है. इसके लिए, ज़रूरी नहीं है कि आप प्रॉक्सी क्रेडेंशियल डालें. फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करने के लिए:
/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 राऊटर/Nginx लॉग फ़ॉर्मैट का कॉन्फ़िगरेशन अपडेट करने के लिए:
- अगर
router.properties
फ़ाइल मौजूद नहीं है, तो एक फ़ाइल बनाएं. इसका पाथ नीचे दिया गया है:/opt/apigee/customer/application/router.properties
router.properties
फ़ाइल मेंrouter_new
नाम का एक नया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
- देखें कि
log_format
फ़ाइल में नया कॉन्फ़िगरेशन (router_new
) जोड़ा गया है या नहीं:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
/opt/nginx/conf.d/0-default.conf
- एपीआई प्रॉक्सी को कुछ एपीआई अनुरोध भेजें और फ़ाइल में नए लॉग फ़ॉर्मैट की पुष्टि करें
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file