আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
এই উদাহরণটি দেখায় কিভাবে Apigee এজ এর সাথে দূতের জন্য Apigee অ্যাডাপ্টার ব্যবহার করতে হয়।
পূর্বশর্ত
আপনি শুরু করার আগে: |
---|
ওভারভিউ
এই উদাহরণটি ব্যাখ্যা করে কিভাবে পাবলিক ক্লাউডের জন্য Apigee এজ সহ দূতের জন্য Apigee অ্যাডাপ্টার ব্যবহার করতে হয়। এপিআই প্রক্সি কলগুলি এনভয় এর মাধ্যমে প্রবাহিত হয় একটি নেটিভ অ্যাপ্লিকেশন হিসাবে চলমান এজ এর সাথে এপিজি রিমোট সার্ভিস ফর এনভয় এর মাধ্যমে এপিআই পরিচালনা পরিষেবা প্রদান করে।
নিম্নলিখিত চিত্রটি এপিজি এজ ইন্টিগ্রেশনের জন্য মৌলিক আর্কিটেকচার দেখায়:
একটি দূত প্রক্সি এবং রিমোট সার্ভিস স্থানীয়ভাবে চলছে। দূত টার্গেট সার্ভিসে এবং সেখান থেকে API ট্র্যাফিক পরিচালনা করে এবং রিমোট সার্ভিসের সাথে যোগাযোগ করে। রিমোট সার্ভিস API পণ্য এবং প্রক্সি তথ্য পুনরুদ্ধার করতে Apigee Edge Cloud এর সাথে যোগাযোগ করে।
বিধান Apigee প্রান্ত
এই ধাপে, আপনি Apigee Edge-এ দূত সম্পদের জন্য Apigee অ্যাডাপ্টারের ব্যবস্থা করতে রিমোট সার্ভিস CLI ব্যবহার করবেন। প্রভিশনিং কমান্ড Apigee Edge-এ একটি API প্রক্সি স্থাপন করে এবং Apigee-এ একটি শংসাপত্র সেট আপ করে এবং আপনার সিস্টেম থেকে 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 --mfa $MFA --username $USER --password $PASSWORD \ --organization $ORG --environment $ENV > config.yaml
যেখানে
$MFA
হল একটি Apigee মাল্টি-ফ্যাক্টর অনুমোদন টোকেন। -
config.yaml
ফাইলের বিষয়বস্তু পরীক্ষা করুন। এটি এই মত কিছু দেখা উচিত:# Configuration for apigee-remote-service-envoy (platform: SaaS) # generated by apigee-remote-service-cli provision on 2020-08-26 09:43:41 apiVersion: v1 kind: ConfigMap metadata: name: apigee-remote-service-envoy namespace: apigee data: config.yaml: | tenant: internal_api: https://istioservices.apigee.net/edgemicro remote_service_api: https://my-username-test.apigee.net/remote-service org_name: my-org env_name: my-env key: f7e09c32f827cab87b8ce43842ed8467ffd2c58e6f795241e38fe7b1aec7664 secret: 1cb5cca00dfb433cb80b32837451fce4bf694633cddbb73d704517e12b35e75
রিমোট সার্ভিস প্রক্সি থেকে Apigee এজ-এর অনুরোধ যাচাই করতে কী এবং গোপন মান ব্যবহার করা হয়।
দূত সেবার জন্য Apigee রিমোট সার্ভিস চালান
আপনি একটি নেটিভ বাইনারি বা ডকার হিসাবে দূরবর্তী পরিষেবা চালাতে পারেন।
স্থানীয়ভাবে পরিষেবাটি চালান
প্রভিশনিং কমান্ড দ্বারা আউটপুট করা কনফিগার ফাইলের সাথে পরিষেবা বাইনারি চালান:
$REMOTE_SERVICE_HOME/apigee-remote-service-envoy -c config_file_path/config.yaml
ডকারে পরিষেবাটি চালান
ডকার ইমেজ রিলিজ ট্যাগ সঙ্গে প্রকাশিত হয়. এই ইনস্টল করার জন্য, সর্বশেষ সংস্করণ ব্যবহার করুন. নির্বাচন করার জন্য তিনটি চিত্র বৈচিত্র রয়েছে:
প্রকরণ | ছবি |
---|---|
বিভ্রান্তিহীন গুগল | gcr.io/distroless/base |
উবুন্টু | google/apigee-envoy-adapter:v1.1.0-ubuntu |
বোরিং ক্রিপ্টো সহ উবুন্টু | google/apigee-envoy-adapter:v1.1.0-boring |
উদাহরণস্বরূপ, ভলিউম মাউন্টের মাধ্যমে /config.yaml
হিসাবে উপলব্ধ আপনার স্থানীয় config.yaml
সহ স্ক্র্যাচ চিত্রটি চালানোর জন্য, এই কমান্ডটি ব্যবহার করুন:
docker run -v ./config.yaml:/config.yaml google/apigee-envoy-adapter:v1.1.0
নমুনা কনফিগারেশন ফাইল তৈরি করুন
নমুনা কনফিগারেশন ফাইল তৈরি করতে apigee-remote-service-cli samples create
কমান্ড ব্যবহার করুন।
এই উদাহরণের জন্য, আপনার এই তৈরি করা ফাইলগুলির প্রয়োজন:
-
envoy-config.yaml
- একটি HTTP পরিষেবার জন্য একটি স্থাপনার কনফিগারেশন।
নমুনা তৈরি করতে:
-
$CLI_HOME
ডিরেক্টরিতে যান। ফাইলগুলি তৈরি করতে এই কমান্ডটি চালান:
./apigee-remote-service-cli samples create --template native -c ./config.yaml
নিম্নলিখিত ফাইলগুলি
./samples
ডিরেক্টরির আউটপুট:ls samples envoy-config.yaml
আরও তথ্যের জন্য, নমুনা কমান্ড দেখুন।
এনভয় প্রক্সি ইনস্টল করুন এবং চালান
এনভয় প্রক্সি ইনস্টল এবং চালানোর জন্য এই পদক্ষেপগুলি অনুসরণ করুন:
- একটি দূত বাইনারি ডাউনলোড করুন বা এটি তৈরি করুন , অথবা ডকার ব্যবহার করুন।
- একটি নমুনা কনফিগারেশন ফাইল ব্যবহার করে দূত চালান যা আপনি আগে
httpbin.org
পরিষেবার জন্য তৈরি করেছিলেন:envoy -c $CLI_HOME/samples/envoy-config.yaml
ইনস্টলেশন পরীক্ষা করুন
-
httpbin
পরিষেবাতে কল করুন:curl -i http://localhost:8080/httpbin/headers
পরিষেবাটি এখন Apigee দ্বারা পরিচালিত হচ্ছে, এবং যেহেতু আপনি একটি API কী সরবরাহ করেননি, কলটি নিম্নলিখিত ত্রুটিটি ফেরত দেয়৷
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
- একটি এপিআই পণ্য কনফিগার করুন এবং একটি এপিআই কী পান কিভাবে একটি এপিআই কী পেতে হয় ।
- কী ব্যবহার করে একটি API কল করুন:
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
পরিষেবাতে API ট্র্যাফিক এখন Apigee দ্বারা পরিচালিত হয়। এখানে কিছু বৈশিষ্ট্য রয়েছে যা আপনি অন্বেষণ করতে এবং চেষ্টা করতে পারেন:
- যদি আপনি আপনার API পণ্য কনফিগার করেন যেমন একটি API কী প্রাপ্ত করার জন্য ব্যাখ্যা করা হয়েছে, কোটার সীমা প্রতি মিনিটে 5 অনুরোধে সেট করা হয়েছিল। কোটা ট্রিগার করতে
httpbin
পরিষেবাকে আরও কয়েকবার কল করার চেষ্টা করুন। কোটা শেষ হয়ে গেলে, একটি HTTP স্থিতি 403 ত্রুটি ফিরে আসে। - এজ UI এ Apigee অ্যানালিটিক্স অ্যাক্সেস করুন। বিশ্লেষণ > API মেট্রিক্স > API প্রক্সি পারফরম্যান্স- এ যান।
- API কল প্রমাণীকরণ করতে JWT টোকেন তৈরি এবং ব্যবহার করুন।
- পরিচালনা, টোকেন তৈরি এবং বাইন্ডিং নিয়ন্ত্রণ করতে CLI ব্যবহার করুন। CLI বিবরণের জন্য, রেফারেন্স দেখুন।