আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন। তথ্য
এই উদাহরণে দেখানো হয়েছে কীভাবে Apigee Edge-এর সাথে Apigee Adapter for Envoy ব্যবহার করতে হয়।
পূর্বশর্ত
| শুরু করার আগে: |
|---|
|
|
এক নজরে
এই উদাহরণে কীভাবে পাবলিক ক্লাউডের জন্য Apigee Edge-এর সাথে Apigee Adapter for Envoy ব্যবহার করতে হয় তা ব্যাখ্যা করা হয়েছে। API প্রক্সি কল, Envoy-এর মাধ্যমে ফ্লো করে যা Edge-এর সাথে নেটিভ অ্যাপ্লিকেশন হিসেবে রান করে এবং Envoy-এর জন্য Apigee রিমোট পরিষেবার মাধ্যমে API ম্যানেজমেন্ট পরিষেবা প্রদান করে।
নিচের ছবিতে Apigee Edge ইন্টিগ্রেশনের প্রাথমিক আর্কিটেকচার দেখানো হয়েছে:

Envoy প্রক্সি ও রিমোট পরিষেবা লোকালি চলছে। Envoy টার্গেট পরিষেবাতে ও সেখান থেকে API ট্রাফিক ম্যানেজ করে এবং রিমোট পরিষেবার সাথে যোগাযোগ করে। এছাড়াও, API প্রোডাক্ট ও প্রক্সি সংক্রান্ত তথ্য পেতে রিমোট পরিষেবা Apigee Edge Cloud-এর সাথে যোগাযোগ করে।
Apigee Edge প্রভিশন করা
এই ধাপে, আপনি Apigee Edge-এ Apigee Adapter for Envoy অ্যাসেট প্রভিশন করার জন্য রিমোট সার্ভিস CLI ব্যবহার করবেন। প্রভিশনিং কমান্ড Apigee Edge-এ একটি API প্রক্সি ডিপ্লয় করে, এছাড়াও, এটি Apigee-তে একটি সার্টিফিকেট সেট-আপ করে এবং এমন ক্রেডেনশিয়াল তৈরি করে যা রিমোট সার্ভিস নিরাপদে আপনার সিস্টেম থেকে Apigee-তে কানেক্ট করার জন্য ব্যবহার করবে।
$CLI_HOMEডিরেক্টরিতে যান:cd $CLI_HOME
- নিম্নলিখিত এনভায়রনমেন্ট ভেরিয়েবল তৈরি করুন। এইসব ভেরিয়েবলকে প্রভিশনিং স্ক্রিপ্টের
প্যারামিটার হিসেবে ব্যবহার করা হবে:
export ORG=organization_nameexport ENV=environment_nameexport USER=your_apigee_usernameexport 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-এ Remote Service Proxy থেকে আসা অনুরোধ যাচাই করার জন্য কী ও সিক্রেট ভ্যালু ব্যবহার করা হয়।
Envoy পরিষেবার জন্য Apigee Remote Service চালান
আপনি নেটিভ বাইনারি অথবা Docker হিসেবে রিমোট পরিষেবা চালাতে পারবেন।
নেটিভ হিসেবে পরিষেবা রান করানো
প্রভিশনিং কমান্ডের আউটপুট হিসেবে পাওয়া কনফিগারেশন ফাইল সহ পরিষেবা বাইনারি এক্সিকিউট করুন:
$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 |
| Boring Crypto সহ 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 প্রক্সি ইনস্টল ও রান করতে এইসব ধাপ অনুসরণ করুন:
- Envoy বাইনারি ডাউনলোড করুন অথবা এটি বিল্ড করুন, অথবা Docker ব্যবহার করুন।
httpbin.orgপরিষেবার জন্য সেট-আপ করা একটি নমুনা কনফিগারেশন ফাইল ব্যবহার করে Envoy চালান:envoy -c $REMOTE_SERVICE_HOME/samples/native/envoy-httpbin.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 প্রোডাক্ট কনফিগার করুন এবং কীভাবে API কী পাবেন নিবন্ধে যেভাবে বলা হয়েছে সেইভাবে API কী পান।
- কী ব্যবহার করে API কল করুন:
export APIKEY=YOUR_API_KEYcurl -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 প্রোডাক্ট কনফিগার করে থাকেন, তাহলে কোটা সীমা প্রতি মিনিটে ৫টি অনুরোধ হিসেবে সেট করা হয়েছে। কোটা ট্রিগার করতে
httpbinপরিষেবায় আরও কয়েকবার কল করে দেখুন। কোটা পেরিয়ে গেলে, আপনি এই সমস্যা দেখতে পাবেন:HTTP/1.1 429 Too Many Requests
- Edge UI-তে Apigee Analytics অ্যাক্সেস করুন। বিশ্লেষণ করুন > API মেট্রিক > API প্রক্সি পারফর্ম্যান্স বিকল্পে যান।
- API কল যাচাই করতে JWT টোকেন তৈরি ও ব্যবহার করুন।
- টোকেন ম্যানেজ, তৈরি ও বাইন্ডিং কন্ট্রোল করতে CLI ব্যবহার করুন। CLI সংক্রান্ত বিবরণের জন্য, রেফারেন্স দেখুন।