आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
इस पेज पर जाएं
Apigee X दस्तावेज़. जानकारी
इस उदाहरण में, Apigee Edge के साथ Envoy के लिए Apigee अडैप्टर को इस्तेमाल करने का तरीका बताया गया है.
ज़रूरी शर्तें
शुरू करने से पहले: |
---|
|
खास जानकारी
इस उदाहरण में, सार्वजनिक क्लाउड के लिए Apigee Edge के साथ, Envoy के लिए Apigee अडैप्टर को इस्तेमाल करने का तरीका बताया गया है. एपीआई Edge से एपीआई उपलब्ध कराने वाले नेटिव ऐप्लिकेशन के तौर पर चलने वाले Envoy के ज़रिए प्रॉक्सी कॉल फ़्लो Envoy के लिए Apigee रिमोट सर्विस के ज़रिए मैनेजमेंट सेवाएं.
यहां दिए गए डायग्राम में, Apigee Edge के इंटिग्रेशन का बुनियादी आर्किटेक्चर दिखाया गया है:
एक Envoy प्रॉक्सी और Remote Service स्थानीय रूप से चल रहे हैं. Envoy, टारगेट सेवा तक पहुंचने और वहां से आने वाले एपीआई ट्रैफ़िक को मैनेज करता है. साथ ही, रिमोट सेवा. रिमोट सेवा यह भी बताती है कि एपीआई प्रॉडक्ट और प्रॉक्सी जानकारी को वापस पाने के लिए, Apigee Edge Cloud का इस्तेमाल करें.
प्रॉविज़निंग Apigee Edge
इस चरण में, आपको Envoy ऐसेट के लिए Apigee अडैप्टर का प्रावधान करने के लिए रिमोट सर्विस सीएलआई का इस्तेमाल करना होगा Apigee Edge. प्रावधान करने का निर्देश, Apigee Edge पर एपीआई प्रॉक्सी को डिप्लॉय करता है, और इस पर सर्टिफ़िकेट भी सेट अप करता है, Apigee और ऐसे क्रेडेंशियल जनरेट करता है जिनका इस्तेमाल Remote Service सुरक्षित तरीके से करेगा अपने सिस्टम से Apigee से कनेक्ट करें.
$CLI_HOME
डायरेक्ट्री पर जाएं:cd $CLI_HOME
- नीचे दिए गए एनवायरमेंट वैरिएबल बनाएं. इन वैरिएबल का इस्तेमाल इस तरह किया जाएगा
प्रावधान स्क्रिप्ट के पैरामीटर:
export ORG=organization_name
export ENV=environment_name
export USER=your_apigee_username
export PASSWORD=your_apigee_password
कहां:
वैरिएबल ब्यौरा organization_name आपके Apigee संगठन का नाम. environment_name आपके संगठन के एनवायरमेंट का नाम. your_apigee_username आपके Apigee खाते का उपयोगकर्ता नाम. आम तौर पर, उपयोगकर्ता नाम एक ईमेल पता होता है. your_apigee_password आपका Apigee पासवर्ड. - Apigee Edge पर, रिमोट सर्विस के लिए प्रॉक्सी का प्रावधान करने के लिए, यह कमांड इस्तेमाल करें:
./apigee-remote-service-cli provision --legacy --username $USER --password $PASSWORD \ --organization $ORG --environment $ENV > config.yaml
config.yaml
फ़ाइल का कॉन्टेंट देखें. यह कुछ ऐसी नज़र आनी चाहिए:# Configuration for apigee-remote-service-envoy # generated by apigee-remote-service-cli provision on 2020-06-06 11:55:52 tenant: internal_api: https://istioservices.apigee.net/edgemicro remote_service_api: https://my-org-test.apigee.net/remote-service org_name: my-org env_name: test key: ecaa56d4101701cb877670909f3614219091b00ce559842e1b584a34b7c6a3e4 secret: 0c66638bb865c1e13019990ea42da66b097d02a6ba333f050fb27cef20259d98
कुंजी और सीक्रेट वैल्यू का इस्तेमाल, रिमोट सर्विस प्रॉक्सी से अनुरोधों की पुष्टि करने के लिए किया जाता है Apigee Edge.
Envoy सेवा के लिए Apigee रिमोट सेवा चलाएं
आप रिमोट सेवा को या तो नेटिव बाइनरी के रूप में चला सकते हैं के साथ इंटिग्रेट कर सकते हैं.
सेवा को नेटिव तौर पर चलाएं
उस कॉन्फ़िगरेशन फ़ाइल के साथ सर्विस बाइनरी चलाएं जो प्रॉविज़निंग कमांड से जनरेट हुई थी:
$REMOTE_SERVICE_HOME/apigee-remote-service-envoy -c config_file_path/config.yaml
Docker पर सेवा चलाएं
Docker इमेज, रिलीज़ टैग के साथ पब्लिश की जाती हैं. इस इंस्टॉल के लिए, सबसे नए वर्शन का इस्तेमाल करें. यह लीजिए आप इनमें से तीन इमेज वैरिएशन में से चुन सकते हैं:
अलग-अलग तरह का कॉन्टेंट | इमेज |
---|---|
स्क्रैच | google/apigee-envoy-adapter:v1.0.0 |
Ubuntu | google/apigee-envoy-adapter:v1.0.0-ubuntu |
बोरिंग क्रिप्टो के साथ Ubuntu | google/apigee-envoy-adapter:v1.0.0-boring |
उदाहरण के लिए, /config.yaml
के तौर पर उपलब्ध अपने लोकल config.yaml
के साथ स्क्रैच इमेज चलाने के लिए
वॉल्यूम माउंट के ज़रिए, इस निर्देश का इस्तेमाल करें:
docker run -v ./config.yaml:/config.yaml google/apigee-envoy-adapter:v1.0.0
Envoy प्रॉक्सी इंस्टॉल करें और चलाएँ
Envoy प्रॉक्सी इंस्टॉल करने और चलाने के लिए, यह तरीका अपनाएं:
- एक एंवॉय बाइनरी डाउनलोड करें या उसे बनाएं, या Docker का इस्तेमाल करें.
httpbin.org
सेवा के लिए सेट अप की गई एक नमूना कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करके Envoy चलाएं:envoy -c $REMOTE_SERVICE_HOME/samples/native/envoy-httpbin.yaml
इंस्टॉलेशन की जांच करना
httpbin
पर कॉल करें सेवा:curl -i http://localhost:8080/httpbin/headers
इस सेवा को अब Apigee मैनेज कर रहा है. साथ ही, आपने एपीआई पासकोड नहीं दिया है, इसलिए तो कॉल नीचे दी गई गड़बड़ी दिखाता है.
curl -i http://localhost:8080/httpbin/headers HTTP/1.1 403 Forbidden date: Tue, 12 May 2020 17:51:36 GMT server: envoy content-length: 0 x-envoy-upstream-service-time: 11
- किसी एपीआई प्रॉडक्ट को कॉन्फ़िगर करें और यहां बताए गए तरीके से एपीआई पासकोड पाएं एपीआई पासकोड पाने का तरीका.
- कुंजी का इस्तेमाल करके एपीआई कॉल करें:
export APIKEY=YOUR_API_KEY
curl -i http://localhost:8080/httpbin/headers -H "x-api-key: $APIKEY"
कॉल 200 स्थिति के साथ सफल होना चाहिए और रिस्पॉन्स में हेडर की सूची देखनी चाहिए. उदाहरण के लिए:
curl -i httpbin.default.svc.cluster.local/headers -H "x-api-key: kyOTalNNLMPfOSy6rnVeclmVSL6pA2zS" HTTP/1.1 200 OK server: envoy date: Tue, 12 May 2020 17:55:34 GMT content-type: application/json content-length: 828 access-control-allow-origin: * access-control-allow-credentials: true x-envoy-upstream-service-time: 301 { "headers": { "Accept": "*/*", "Content-Length": "0", "Host": "httpbin.default.svc.cluster.local", "User-Agent": "curl/7.70.0-DEV", "X-Api-Key": "kyOTalNNLMPfOSy6rneclmVSL6pA2zS", "X-Apigee-Accesstoken": "", "X-Apigee-Api": "httpbin.default.svc.cluster.local", "X-Apigee-Apiproducts": "httpbin", "X-Apigee-Application": "httpbin", "X-Apigee-Authorized": "true", "X-Apigee-Clientid": "kyOTalNNLMPfOSy6rVeclmVSL6pA2zS", "X-Apigee-Developeremail": "user@example.com", "X-Apigee-Environment": "test", "X-Apigee-Organization": "my-org", "X-Apigee-Scope": "", "X-B3-Parentspanid": "1476f9a2329bbdfa", "X-B3-Sampled": "0", "X-B3-Spanid": "1ad5c19bfb4bc96f", "X-B3-Traceid": "6f329a34e8ca07811476f9a2329bbdfa" } }
अगले चरण
httpbin
सेवा के लिए, एपीआई ट्रैफ़िक को अब Apigee मैनेज करता है. यहां दी गई हैं
कुछ ऐसी सुविधाएँ हैं जिन्हें एक्सप्लोर करके, इन्हें आज़माया जा सकता है:
- अगर आपने एपीआई प्रॉडक्ट को यहां बताए गए तरीके से कॉन्फ़िगर किया है, तो
एपीआई पासकोड पाने का तरीका,
कोटा की सीमा, हर मिनट पांच अनुरोध पर सेट की गई थी.
httpbin
सेवा को कॉल करने की कोशिश करें कोटा को ट्रिगर करने के लिए कुछ और बार. कोटा पार करने पर, आपको यह गड़बड़ी दिखेगी:HTTP/1.1 429 Too Many Requests
- Edge के यूज़र इंटरफ़ेस (यूआई) में Apigee Analytics को ऐक्सेस करें. विश्लेषण करें > पर जाएं एपीआई मेट्रिक > एपीआई प्रॉक्सी परफ़ॉर्मेंस.
- एपीआई कॉल की पुष्टि करने के लिए, JWT टोकन जनरेट करें और उनका इस्तेमाल करें.
- टोकन बनाने, मैनेज करने, और बाइंडिंग कंट्रोल करने के लिए सीएलआई का इस्तेमाल करें. सीएलआई की जानकारी के लिए, रेफ़रंस देखें.