इंस्टॉल करने के बाद 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 कॉम्पोनेंट और उन प्रॉपर्टी फ़ाइलों की सूची दी गई है जिनमें इन कॉम्पोनेंट को कॉन्फ़िगर करने के लिए बदलाव किया जा सकता है:
कॉम्पोनेंट | कॉम्पोनेंट का नाम | ऐसी कॉन्फ़िगरेशन फ़ाइल जिसमें बदलाव किया जा सकता है |
---|---|---|
कासांद्रा | 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 |
लागू नहीं (इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करें) |
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 |
क्विड | 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
अगर आपने "apigee" उपयोगकर्ता की जगह Edge की सेवा चलाने वाले उपयोगकर्ता को बदल दिया है, तो
chown
का इस्तेमाल करके, उस उपयोगकर्ता को दें जो Edge सेवा इस्तेमाल कर रहा है.
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 की कॉन्फ़िगरेशन फ़ाइलों में कुछ टोकन पर टिप्पणी की जाती है. अगर किसी ऐसे टोकन को सेट करने की कोशिश की जाती है जिस पर किसी इंस्टॉल या कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइल में टिप्पणी की गई है, तो आपकी सेटिंग को अनदेखा कर दिया जाता है.
एज कॉन्फ़िगरेशन फ़ाइल में टिप्पणी किए गए टोकन की वैल्यू सेट करने के लिए, नीचे दिए गए फ़ॉर्म में खास सिंटैक्स का इस्तेमाल करें:
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
ट्रेस यूज़र इंटरफ़ेस (यूआई) के 'अनुरोध भेजें' सेक्शन से मिलने वाले अनुरोधों के लिए, फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर करें
इस सेक्शन में बताया गया है कि वैकल्पिक प्रॉक्सी क्रेडेंशियल वाले ट्रेस यूज़र इंटरफ़ेस के 'अनुरोध भेजें' सेक्शन से मिले अनुरोधों के लिए, फ़ॉरवर्ड प्रॉक्सी कैसे कॉन्फ़िगर करें. फ़ॉरवर्ड प्रॉक्सी को कॉन्फ़िगर करने के लिए:
/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/Nlinx में कस्टम लॉग फ़ॉर्मैट जोड़ें
कुछ मामलों में, आपको डिफ़ॉल्ट Apigee Router/Nshinx लॉग फ़ॉर्मैट बदलना होगा या वैरिएबल जोड़ना होगा. डिफ़ॉल्ट Apigee Router/Nshinx लॉग फ़ॉर्मैट कॉन्फ़िगरेशन को अपडेट करने के लिए:
- अगर
router.properties
फ़ाइल मौजूद नहीं है, तो उसे नीचे दिए गए पाथ के साथ बनाएं:/opt/apigee/customer/application/router.properties
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
Nजिनx वैरिएबल की एक सूची 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