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

Edge for Private Cloud v4.18.05

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

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

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

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

  1. ग्राहक
  2. इंस्टॉलर
  3. Apigee

.properties फ़ाइलों को इस्तेमाल करने का तरीका

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

उदाहरण के लिए, .properties फ़ाइल बनाने के लिए:

  1. किसी भी उपयोगकर्ता के तौर पर, एडिटर में फ़ाइल बनाएं.
  2. फ़ाइल का मालिकाना हक बदलने के लिए, chown का इस्तेमाल करें और "apigee:apigee" कर दें. इसके अलावा, अगर आपने Edge की सेवा इस्तेमाल करने वाले उपयोगकर्ता की जगह "apigee" इस्तेमाल करने वाले उपयोगकर्ता की जगह पर सेट की है, तो उस उपयोगकर्ता के लिए फ़ाइल का डुप्लीकेट वर्शन बनाएं जो Edge सेवा इस्तेमाल कर रहा है.

किसी कॉम्पोनेंट के लिए प्रॉपर्टी सेट करने के लिए, उससे जुड़ी .properties फ़ाइल में बदलाव करें, ताकि वह टोकन सेट कर सके. इसके बाद, कॉम्पोनेंट को रीस्टार्ट करें:

/opt/apigee/apigee-service/bin/apigee-service component restart

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

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

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

.properties फ़ाइलों की जगह

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

मालिक डिफ़ॉल्ट टोकन रूट डायरेक्ट्री
कॉम्पोनेंट
/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 (क्लासिक यूज़र इंटरफ़ेस (यूआई))
इंस्टॉल करना
/opt/apigee/token
ग्राहक
/opt/apigee/customer

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

कॉम्पोनेंट के लिए, .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

.properties फ़ाइलों में टोकन सेट करना

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

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

उदाहरण के लिए, Edge राऊटर के लिए अनुरोध के लिए लाइन की सीमा सेट करने के लिए:

  1. conf_http_HTTPRequest.line.limit टोकन को सेट करने के लिए, /opt/apigee/customer/application/router.properties फ़ाइल में बदलाव करें:
    conf_http_HTTPRequest.line.limit=8k
  2. Edge राऊटर को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. टोकन की वैल्यू की जांच करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

एक से ज़्यादा वैल्यू लेने वाला टोकन सेट करें

कुछ टोकन, वैल्यू की कॉमा लगाकर अलग की गई सूची लेते हैं. उदाहरण के लिए, conf_security_rbac.restricted.resources टोकन प्रतिबंधित यूआरआई की सूची लेता है, ताकि सिर्फ़ सिस्टम एडमिन उन्हें कॉल कर सके. conf_security_rbac.restricted.resources की वैल्यू देखने के लिए:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

आउटपुट में ये चीज़ें शामिल होती हैं:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

वैल्यू की सूची लेने वाले टोकन को सेट करने के लिए, .properties फ़ाइल में टोकन की मौजूदा वैल्यू में कोई नई वैल्यू जोड़ें. इसलिए, /myuri/* यूआरआई को conf_security_rbac.restricted.resources में जोड़ने के लिए, /opt/apigee/customer/application/management-server.properties फ़ाइल में बदलाव करें, जैसा कि नीचे दिखाया गया है:

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

टोकन ढूंढना

ज़्यादातर मामलों में, आपको जिन टोकन को सेट करना होता है उनकी जानकारी इस गाइड में दी गई है. हालांकि, अगर आपको यह पता करना है कि किसी प्रॉपर्टी को बदलने के लिए किस टोकन का इस्तेमाल किया गया है, तो कॉम्पोनेंट के source फ़ोल्डर में grep डालें.

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

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

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

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

{T}{/T} टैग के बीच की स्ट्रिंग वह टोकन है जिसे .properties फ़ाइल में सेट किया जाता है.

ऐसा टोकन सेट करें जिस पर फ़िलहाल टिप्पणी की गई हो

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

जिस टोकन पर टिप्पणी की गई है उसे सेट करने के लिए, इस फ़ॉर्म में एक खास सिंटैक्स का इस्तेमाल करें:

conf/file.extension+propertyName=propertyValue

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

cd /opt/apigee/edge-message-processor
grep -ri "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