এজ মাইক্রোগেটওয়ে FAQ

আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন
.info- তে যান।

শুরু করা হচ্ছে

আমি কীভাবে এজ মাইক্রোগেটওয়ে ইনস্টল করব?
Edge Microgateway ইনস্টল করার পদ্ধতি দেখুন।
আমি কীভাবে এজ মাইক্রোগেটওয়ে চালাব?
Edge Microgateway স্থাপন ও কনফিগার করা দেখুন।
মাইক্রোগেটওয়ে চালানোর জন্য আমার কি একটি ডেটাবেস প্রয়োজন?
Edge Microgateway-এর মাধ্যমে প্রক্সি করা API-গুলো টার্গেট সার্ভিসের অংশ হিসেবে চলমান কোনো ডেটাবেসের সাথে ইন্টারঅ্যাক্ট করতে পারে। তবে, Edge Microgateway যেকোনো ডেটাবেস বা ব্যাকএন্ড ডেটা স্টোর থেকে স্বাধীনভাবে কাজ করে।

অপারেশন

Edge-এ কী কী পরিবর্তন করলে Edge Microgateway রিস্টার্ট করার প্রয়োজন হয়?
Edge Microgateway স্বয়ংক্রিয়ভাবে Apigee Edge-এ করা পরিবর্তনগুলির জন্য পোল করে, যেমন মাইক্রোগেটওয়ে-সচেতন প্রক্সি, পণ্য বা ডেভেলপার অ্যাপের পরিবর্তন। ডিফল্ট পোলিং ব্যবধান হল ৬০০ সেকেন্ড; তবে, আপনি config_change_poll_interval কনফিগারেশন সেটিং দিয়ে ব্যবধানটি পরিবর্তন করতে পারেন। edgemicro অ্যাট্রিবিউটগুলি দেখুন।
আপনি যদি পোলিং ইন্টারভালের জন্য অপেক্ষা করতে না চান, তাহলে সর্বশেষ পরিবর্তনগুলো গ্রহণ করতে edgemicro reload কমান্ডটি ব্যবহার করুন। মাইক্রোগেটওয়ে ক্লাস্টার রিলোড করা দেখুন।
Edge-এ স্থাপন করা প্রক্সি এবং Edge Microgateway-তে থাকা প্রক্সির মধ্যে আমি কীভাবে পার্থক্য করব?
যখন আপনি এজ মাইক্রোগেটওয়ে কনফিগার করেন, তখন এপিজি এজ-এ ডেপ্লয় করা মাইক্রোগেটওয়ে-অ্যাওয়্যার প্রক্সিগুলোর একটি তালিকা এজ মাইক্রোগেটওয়ের লোকাল কনফিগারেশনে ডাউনলোড হয়ে যায়। মাইক্রোগেটওয়ে-অ্যাওয়্যার প্রক্সিগুলো হলো সেগুলো, যেগুলোর নামের শুরুতে edgemicro_ প্রিফিক্স থাকে।
Edge Microgateway ব্যবহার করে লগ ইন করার জন্য আমার কাছে কী কী বিকল্প আছে?
Edge Microgateway-তে একটি অন্তর্নির্মিত লগিং বৈশিষ্ট্য রয়েছে। বিস্তারিত জানতে, লগ ফাইল ব্যবস্থাপনা দেখুন।
আপনি Edge Microgateway-এর সাথে কোনো থার্ড-পার্টি লগিং পরিষেবা ব্যবহার করার জন্য একটি কাস্টম প্লাগইনও লিখতে পারেন। Edge Microgateway-এর কার্যপ্রণালীর কারণে, আপনি Edge Microgateway-এর জন্য মেসেজ লগ করতে Apigee Edge Message Logging পলিসি ব্যবহার করতে পারবেন না। এছাড়াও, Microgateway-এর জন্য লগিং প্লাগইন বিষয়ক কমিউনিটি আর্টিকেলটি দেখুন।
আমি কি Edge Microgateway-এর একাধিক ইনস্ট্যান্সের মধ্যে কী/গোপন কোড পুনরায় ব্যবহার করতে পারি?
যতক্ষণ পর্যন্ত মাইক্রোগেটওয়ে ইনস্ট্যান্সগুলোর সংস্থা এবং পরিবেশ একই থাকবে, ততক্ষণ পর্যন্ত আপনি কনফিগারেশনের সময় তৈরি হওয়া কী/সিক্রেট পেয়ারটি পুনরায় ব্যবহার করতে পারবেন।
প্রোডাকশন পরিবেশে চালু করার জন্য আমি কীভাবে এজ মাইক্রোগেটওয়ে কনফিগার করব?
আপনি স্টার্টআপ কমান্ড প্যারামিটারগুলির জন্য এনভায়রনমেন্ট ভেরিয়েবল সেট করতে পারেন, যেমন EDGEMICRO_KEY , EDGEMICRO_SECRET , EDGEMICRO_ORG , এবং EDGEMICRO_ENV । এই (এবং অন্যান্য) ভেরিয়েবলগুলির সাহায্যে আপনি edgemicro start এই একটিমাত্র কমান্ড দিয়ে Edge Microgateway চালু করতে পারেন। আরও দেখুন এনভায়রনমেন্ট ভেরিয়েবল সেট করা
আমি কি Edge Microgateway-এর সাথে কাস্টম প্রোডাক্ট বা ডেভেলপার অ্যাপ অ্যাট্রিবিউট ব্যবহার করতে পারি?
না। ডিফল্টরূপে, এজ মাইক্রোগেটওয়ে শুধুমাত্র বেসিক রাউটিং এবং নিরাপত্তা সম্পর্কিত অ্যাট্রিবিউটগুলোর উপর কাজ করে। তবে, বিকল্প সমাধান হিসেবে আপনার কাছে নিম্নলিখিত সম্ভাব্য উপায়গুলো রয়েছে:
  1. Edge Microgateway দ্বারা Apigee Edge-এ স্থাপন করা edgemicro-auth প্রক্সিতে কাস্টম অ্যাট্রিবিউট যোগ করুন। API Key বা OAuth টোকেন নিরাপত্তা ব্যবহার করার সময় এই অ্যাট্রিবিউটগুলো উপলব্ধ হবে।
  2. ওই অ্যাট্রিবিউটগুলোর ওপর কাজ করার জন্য OAuth প্লাগইনটি পরিবর্তন করুন।
অনুরোধ হেডারের আকারের কি কোনো সীমা আছে?
আপনি যদি Node.js v8.14.0 বা তার পরবর্তী কোনো সংস্করণে আপগ্রেড করেন, তবে জেনে রাখুন যে রিকোয়েস্টের জন্য অনুমোদিত সর্বোচ্চ হেডার সাইজ ৮০KB থেকে কমিয়ে ৮KB করা হয়েছে। ৮KB-এর বেশি আকারের হেডারের ফলে একটি HTTP 431 এরর দেখা দেয়।
Node.js v11.6.0-এ যোগ করা একটি কনফিগারেশন অপশন আপনাকে ডিফল্ট সর্বোচ্চ হেডার সাইজ পরিবর্তন করার সুযোগ দেয়। এই প্যারামিটার, --max-http-header-size , আপনাকে HTTP হেডারের সর্বোচ্চ সাইজ বাইটে নির্দিষ্ট করতে দেয়।
ডিফল্ট কনফিগারেশন পরিবর্তন করতে, কমান্ড লাইনে NODE_OPTIONS এনভায়রনমেন্ট ভেরিয়েবলের মান নিম্নরূপভাবে সেট করুন:
NODE_OPTIONS=--max-http-header-size=NUM_BYTES

উদাহরণস্বরূপ:

NODE_OPTIONS=--max-http-header-size=80000

Edge Microgateway কোন ম্যানেজমেন্ট API গুলো ব্যবহার করে?

নিম্নলিখিত Edge Microgateway কমান্ডগুলি তাদের কাজ করার জন্য Apigee Edge ম্যানেজমেন্ট API-কে কল করে, যেমনটি Edge Microgateway-এর CLI রেফারেন্সে বর্ণনা করা হয়েছে:

  • edgemicro configure
  • edgemicro upgradeauth
  • edgemicro upgradekvm
  • edgemicro rotatekey
  • edgemicro cert check
  • edgemicro cert delete
  • edgemicro cert install

নিম্নলিখিত বিভাগগুলিতে প্রতিটি কমান্ড দ্বারা ব্যবহৃত ম্যানেজমেন্ট এপিআই কলগুলি তালিকাভুক্ত করা হয়েছে।

edgemicro configure এবং upgradeauth কমান্ডগুলো নিম্নলিখিত ম্যানেজমেন্ট API-গুলোকে কল করে:

  • (ডিপ্লয়মেন্টের তালিকা) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/deployments
  • (ডিপ্লয়মেন্টের তথ্য পেতে) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=java&name=micro-gateway-products-javacallout-2.0.0.jar
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=adjust-quota.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-jwk.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-verify-jwt.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jsrsasign-all-min.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jwt-initialization.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-jwk-response.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-product-list.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-public-key.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-jwt-variables.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-quota-variables.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-response.js
  • (রিসোর্স আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=validate-params.js
  • (এপিআই প্রক্সি তৈরি করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis?action=import&validate=false&name=edgemicro-auth
  • (আপলোড নীতিমালা) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/policies
  • (প্রক্সি আপলোড করুন) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/proxies?name=default
  • (ডিপ্লয় প্রক্সি) POST: https://api.enterprise.apigee.com/v1/o/[org]/e/[env]/apis/edgemicro-auth/revisions/1/deployments

upgradekvm কমান্ডটি নিম্নলিখিত ম্যানেজমেন্ট API-কে কল করে:

  • PUT: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

rotatekey কমান্ডটি নিম্নলিখিত ম্যানেজমেন্ট API-কে কল করে:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway/entries/private_key

cert check কমান্ডটি নিম্নলিখিত ম্যানেজমেন্ট এপিআই-কে কল করে:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

cert delete কমান্ডটি নিম্নলিখিত ম্যানেজমেন্ট এপিআই-কে কল করে:

  • DELETE: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

cert install কমান্ডটি নিম্নলিখিত ম্যানেজমেন্ট API-কে কল করে:

  • POST: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps

মোতায়েন

যে সার্ভারে আমার টার্গেট সার্ভিসটি চলছে, আমি কি সেখানে Edge Microgateway স্থাপন করতে পারি?
হ্যাঁ। এজ মাইক্রোগেটওয়ে একটি লাইটওয়েট প্রসেস যা আপনার টার্গেট সার্ভিসের কাছাকাছি, এমনকি একই মেশিনেও চলতে পারে।
আমি কি একটি বিদ্যমান এজ প্রক্সি বান্ডেলকে এজ মাইক্রোগেটওয়ে ডিপ্লয়মেন্ট হিসেবে স্থাপন করতে পারি?
না। Edge Microgateway-aware প্রক্সিগুলির নির্দিষ্ট কিছু আবশ্যকতা রয়েছে এবং এগুলি সাধারণ Edge প্রক্সিগুলির সমস্ত বৈশিষ্ট্য সমর্থন করে না। পর্ব ২ দেখুন: Apigee Edge-এ এনটিটি তৈরি করুন।
আমি কি একই এপিআই প্রক্সির জন্য এজ প্রক্সি বান্ডেল ডিপ্লয়মেন্ট এবং এজ মাইক্রোগেটওয়ে ডিপ্লয়মেন্টের মধ্যে ফেইলওভার সক্ষম করতে পারি?
না, Edge Microgateway, Apigee Edge-এ থাকা নন-মাইক্রোগেটওয়ে এপিআই প্রক্সি ডেপ্লয়মেন্ট সম্পর্কে জানে না।
এজ মাইক্রোগেটওয়ের জন্য উচ্চ প্রাপ্যতা স্থাপন মডেলটি কী?
লোড ব্যালান্সার হিসেবে NGINX ব্যবহার করে কীভাবে Edge Microgateway চালানো যায়, সে সম্পর্কে বিস্তারিত আলোচনার জন্য, Managing APIs with Apigee Edge Microgateway and NGINX দেখুন।
এজ মাইক্রোগেটওয়ের সাথে আমি কোন লোড ব্যালেন্সারগুলো ব্যবহার করতে পারি?
Edge Microgateway যেকোনো লোড ব্যালান্সারের সাথে কাজ করতে পারে।
আমি কতগুলো এজ মাইক্রোগেটওয়ে প্রক্সি স্থাপন করতে পারব তার কি কোনো সীমা আছে?
সাধারণ এজ প্রক্সিগুলির জন্য নির্দিষ্ট প্রোডাক্ট কনফিগারেশন সীমাগুলি দেখুন। একটি Apigee Edge অর্গানাইজেশন ও এনভায়রনমেন্টে আপনি যতগুলি মাইক্রোগেটওয়ে-অ্যাওয়্যার প্রক্সি ডেপ্লয় করতে পারবেন এবং এজ মাইক্রোগেটওয়ের মাধ্যমে কল করতে পারবেন, সেগুলিকে অবশ্যই সেই একই সীমা মেনে চলতে হবে।
আমি কি আমার এজ মাইক্রোগেটওয়ে ডেপ্লয়মেন্টকে একটি নির্দিষ্ট সংস্থা এবং পরিবেশের সাথে যুক্ত করতে পারি?
যখন আপনি Edge Microgateway-এর একটি ইনস্ট্যান্স কনফিগার করেন, তখন আপনাকে অবশ্যই এটিকে একটি নির্দিষ্ট Edge অর্গানাইজেশন এবং এনভায়রনমেন্টের সাথে যুক্ত করতে হবে।
আমি কি আমার এজ মাইক্রোগেটওয়ে ডেপ্লয়মেন্টকে একটি নির্দিষ্ট অঞ্চলের সাথে যুক্ত করতে পারি (যদি আমি একজন মাল্টি-রিজিওন গ্রাহক হই)?
Edge Microgateway, Apigee Edge-এর সাথে যোগাযোগের জন্য স্বয়ংক্রিয়ভাবে সেরা অঞ্চলটি বেছে নেয়। আপনি যে যে অঞ্চলে পরিষেবা দিতে চান, তার প্রতিটিতে Edge Microgateway ইনস্ট্যান্স স্থাপন করতে পারেন।

প্রশাসন

Edge Microgateway কনফিগার এবং ডেপ্লয় করতে আমাকে কি অর্গ অ্যাডমিনিস্ট্রেটর হতে হবে?
হ্যাঁ। এজ মাইক্রোগেটওয়ে কনফিগার এবং ডেপ্লয় করতে আপনার প্রতিষ্ঠানের অ্যাডমিন ক্রেডেনশিয়াল থাকা প্রয়োজন।
Edge Microgateway চালানোর জন্য আমাকে কি প্রতিষ্ঠানের প্রশাসক হতে হবে?
না। Edge Microgateway একটি Node.js অ্যাপ্লিকেশন, এবং কোনো নির্দিষ্ট মেশিনে এই ধরনের অ্যাপ্লিকেশন চালানোর অনুমতি আছে এমন যে কেউ এটি চালাতে পারে।
আমার প্রতিষ্ঠানের কোনো ব্যবহারকারী কি এজ মাইক্রোগেটওয়ে ব্যবহার করতে পারবেন?
Edge Microgateway-এর মাধ্যমে API কল করার জন্য আপনাকে Apigee Edge অর্গানাইজেশনের ব্যবহারকারী হতে হবে না। তবে, Edge-এ ডেপ্লয় করা Edge Microgateway-অ্যাওয়্যার প্রক্সি তৈরি বা পরিবর্তন করার জন্য আপনার অবশ্যই অর্গ-লেভেলের অনুমতি থাকতে হবে।

কর্মক্ষমতা

Edge Microgateway ব্যবহারের ক্ষেত্রে পারফরম্যান্স সংক্রান্ত বিষয়গুলো কী কী?
টার্গেট অ্যাপ্লিকেশনের সাথে একই স্থানে এজ মাইক্রোগেটওয়ে চালালে, সার্ভারটির পর্যাপ্ত ধারণক্ষমতা আছে কিনা তা নিশ্চিত করুন।
বৃহৎ পরিসরে এজ মাইক্রোগেটওয়ে চালানোর সর্বোত্তম পদ্ধতিগুলো কী কী?
Apigee বিভিন্ন সার্ভারে Edge Microgateway-এর একাধিক ইনস্ট্যান্স চালানোর পরামর্শ দেয়, যেগুলোর সামনে NGINX-এর মতো লোড ব্যালেন্সার থাকে। Apigee কমিউনিটিতে ‘Managing APIs with Apigee Edge Microgateway and NGINX’ এবং ‘Vertical horizontal scaling’- ও দেখুন।
ডিফল্টভাবে এজ মাইক্রোগেটওয়ের টিপিএস (TPS) কী এবং একটি মাইক্রোগেটওয়ে ইনস্ট্যান্সের জন্য কী কী হার্ডওয়্যার প্রয়োজনীয়তা রয়েছে?
Edge Microgateway-এর ক্ষেত্রে হার্ডওয়্যারের প্রয়োজনীয়তা এবং TPS পরিমাপ সঠিকভাবে নির্ণয় করা কঠিন। এটি আপনার সেটআপের উপর নির্ভর করে, যা Edge Microgateway টিউনিং, প্লাগইন ব্যবহার, কাস্টম প্লাগইন এবং TLS-এর মতো অন্যান্য বিষয় কনফিগার করার একটি সমন্বয়। Apigee সাধারণত পরামর্শ দেয় যে, আপনি এই উপাদানগুলোর সমন্বয় সম্পর্কে একটি ধারণা নিন এবং আপনার নির্দিষ্ট সেটআপ দিয়ে পারফরম্যান্স টেস্টিং করুন।

প্রাইভেট ক্লাউড স্থাপন

Edge Microgateway কি Edge for Private Cloud-এর সাথে কাজ করে?
হ্যাঁ। বিস্তারিত জানতে Apigee প্রাইভেট ক্লাউড কনফিগারেশনের ধাপগুলো দেখুন।

প্লাগইন

Edge Microgateway-এর মাধ্যমে কোটা কীভাবে প্রয়োগ করা হয়?
আপনি চাইলে আপনার Edge Microgateway ইনস্ট্যান্সে একটি কোটা প্লাগইন যোগ করতে পারেন। বিস্তারিত জানতে “Using the quota plugin” দেখুন।
Edge Microgateway-এর মাধ্যমে Spike Arrest কীভাবে কার্যকর করা হয়?
আপনি চাইলে আপনার Edge Microgateway ইনস্ট্যান্সে একটি স্পাইক অ্যারেস্ট প্লাগইন যোগ করতে পারেন। বিস্তারিত জানতে “স্পাইক অ্যারেস্ট প্লাগইন ব্যবহার” দেখুন।
Edge Microgateway-এর জন্য Node.js ছাড়া প্লাগইন লেখার অন্য কোনো উপায় আছে কি?
না। প্লাগইনগুলো অবশ্যই Node.js এ লিখতে হবে।
যখন Edge Microgateway, Edge-এ অ্যানালিটিক্স ডেটা আপলোড করতে পারে না, তখন কী হয়?
Edge Microgateway-এর একটি ইন-মেমরি বাফার রয়েছে। বাফারটি পূর্ণ হয়ে গেলে, API ট্র্যাফিকের প্রবাহ নির্বিঘ্ন রাখতে পুরোনো পেলোডগুলো বাদ দেওয়া হয়।
আমি কি Edge Microgateway-তে পলিসি যোগ করতে পারি?
আপনি যদি Apigee Edge-এর মাইক্রোগেটওয়ে-অ্যাওয়ার প্রক্সিগুলিতে সাধারণ Apigee Edge পলিসি সংযুক্ত করেন, তবে সেগুলি উপেক্ষা করা হয়। এর পরিবর্তে, Edge Microgateway প্লাগইন ব্যবহার করে Edge-এর পলিসির মতো কার্যকারিতা প্রদান করে, যেমন কোটা, স্পাইক অ্যারেস্ট, API কী নিরাপত্তা এবং OAuth2 নিরাপত্তা। আপনি কাস্টম প্লাগইনও লিখতে পারেন। প্লাগইন ব্যবহার এবং কাস্টম প্লাগইন তৈরি দেখুন।

নিম্নলিখিত Apigee কমিউনিটি পোস্ট এবং ব্লগগুলিতে প্লাগইনের অতিরিক্ত ব্যবহারের ক্ষেত্রগুলি নিয়ে আলোচনা করা হয়েছে:

নিরাপত্তা

আমি কীভাবে /products রিসোর্সটি সুরক্ষিত করব?
সংক্ষিপ্ত বিবরণ
আপনি যখন Edge Microgateway কনফিগার করেন , তখন Apigee Edge-এ আপনার organization:environment-এ edgemicro-auth নামের একটি API প্রক্সি ডেপ্লয় করা হয়। এই প্রক্সিটি একটি /products এন্ডপয়েন্ট উন্মুক্ত করে, যা API প্রোডাক্টগুলোর একটি তালিকা ফেরত দেয়। আপনি যদি ৫ই অক্টোবর, ২০১৮ বা তার আগে Edge Microgateway ইনস্টল করে থাকেন, তাহলে Apigee এই এন্ডপয়েন্টটি সুরক্ষিত করার জন্য পদক্ষেপ নেওয়ার পরামর্শ দেয়, কারণ এর রেসপন্সে সেই ডেভেলপারের ইমেল অ্যাড্রেস থাকে যিনি আপনার Apigee অর্গানাইজেশনে API প্রোডাক্টগুলো তৈরি ও পরিবর্তন করেছেন।
আপনি Edge Microgateway আপগ্রেড করে অথবা Mutual TLS কনফিগার করে এন্ডপয়েন্টটি সুরক্ষিত করতে পারেন। এই উভয় বিকল্পই নিচে বর্ণনা করা হলো।
/products এন্ডপয়েন্টটি সুরক্ষিত কিনা তা পরীক্ষা করুন।

/products এন্ডপয়েন্টটি সুরক্ষিত কিনা সে বিষয়ে আপনি অনিশ্চিত থাকলে, "Verify that the /products resource is protected" বিভাগে যান এবং এগিয়ে যাওয়ার আগে সেখানকার ধাপগুলো অনুসরণ করুন।

বিকল্প ১: এজ মাইক্রোগেটওয়ে আপগ্রেড করুন

আপনি যদি ৫ই অক্টোবর, ২০১৮ বা তার আগে Edge Microgateway ইনস্টল করে থাকেন, তাহলে Apigee আপনাকে Edge Microgateway-এর সর্বশেষ সংস্করণে আপগ্রেড করার পরামর্শ দিচ্ছে। আপনার ইন্টারনেট সংযোগ থাকলে Edge Microgateway আপগ্রেড করার ধাপগুলো অনুসরণ করুন।

আপনি যদি এই মুহূর্তে আপগ্রেড করতে না পারেন, তাহলে বিকল্প ২-এ যান।

বিকল্প ২: পারস্পরিক TLS কনফিগার করুন

আপনি যদি এই মুহূর্তে Edge Microgateway আপগ্রেড করতে না পারেন, তাহলে Apigee পরামর্শ দেয় যে আপনি Edge Microgateway এবং edgemicro-auth প্রক্সির মধ্যকার যোগাযোগকে মিউচুয়াল TLS (যা টু-ওয়ে TLS নামেও পরিচিত) দিয়ে সুরক্ষিত করুন।

  1. $HOME/.edgemicro/ org - env -config.yaml ফাইলটি খুলুন। যদি এই ফাইলটি খুঁজে না পান, তবে "Where is Edge Microgateway installed" দেখুন।
  2. Edge Microgateway এবং Apigee Edge-এর মধ্যে পারস্পরিক TLS সক্রিয় করতে org - env -config.yaml ফাইলে নিম্নলিখিত tlsOptions ব্লকটি যোগ করুন:
    edge_config:
      bootstrap: >-
        https://domain/edgemicro/bootstrap/organization/org/environment/env
      jwt_public_key: 'https://domain/edgemicro-auth/publicKey'
      managementUri: 'https://api.enterprise.apigee.com'
      tlsOptions:
        agentOptions:
          requestCert: true
          cert: 'path/to/cert'
          key: 'path/to/key'

    উদাহরণস্বরূপ:

    tlsOptions:
      agentOptions:
        requestCert: true
        cert: '/Users/jdoe/twowayssl/ssl/client.key'
        key: '/Users/jdoe/twowayssl/ssl/ca.crt'

    আপনি নিম্নলিখিত ঐচ্ছিক agentOptions প্যারামিটারগুলোও অন্তর্ভুক্ত করতে পারেন:

    • ca : সার্টিফিকেট অথরিটির পথ নির্দিষ্ট করে।
    • pfx : যদি আপনি cert এবং key-এর পরিবর্তে একটি p12/pfx ফাইল ব্যবহার করতে চান, তাহলে এটি অন্তর্ভুক্ত করুন।
    • passphrase : pfx ফাইলের পাসফ্রেজ।
    • ciphers : টিএলএস সাইফারসমূহ নির্দিষ্ট করে।
  3. নিশ্চিত করুন যে ভার্চুয়াল হোস্ট, যেখানে edgemicro-auth প্রক্সিটি স্থাপন করা হয়েছে, সেখানে মিউচুয়াল TLS সক্রিয় আছে। বিস্তারিত জানতে, Apigee Edge ডকুমেন্টেশনে "Defining a virtual host for two-way TLS" দেখুন।

    নিম্নলিখিত স্ক্রিনশটটিতে দেখানো হয়েছে কিভাবে Apigee Edge UI-তে একটি ভার্চুয়াল হোস্টে মিউচুয়াল TLS সক্রিয় করতে হয়:

  4. Edge UI-তে edgemicro-auth API প্রক্সিটি দেখুন এবং নিশ্চিত করুন যে প্রক্সি কনফিগে সঠিক ভার্চুয়াল হোস্ট নির্দিষ্ট করা আছে। উদাহরণস্বরূপ, যদি আপনি mutualtls নামে একটি TLS-সক্ষম ভার্চুয়াল হোস্ট তৈরি করে থাকেন, তাহলে প্রক্সির HTTPProxyConnection স্ট্যানজাটি দেখতে এইরকম হবে:
    <HTTPProxyConnection>
        <BasePath>/edgemicro-auth</BasePath>
        <Properties/>
        <VirtualHost>mutualtls</VirtualHost>
    </HTTPProxyConnection>
যাচাই করুন যে /products রিসোর্সটি সুরক্ষিত আছে।
এই বিভাগে ব্যাখ্যা করা হয়েছে কিভাবে /products রিসোর্সটি সুরক্ষিত কিনা তা পরীক্ষা করতে হয়। রিসোর্সটি সুরক্ষিত করার জন্য ধাপগুলো (বিকল্প ১ বা বিকল্প ২) সম্পন্ন করার পরে এই পরীক্ষাটি করা গুরুত্বপূর্ণ। উদাহরণস্বরূপ, আপনি cURL ব্যবহার করে এটি করতে পারেন:
curl -v https://your_domain/edgemicro-auth/products
আপনি যদি নিম্নলিখিতগুলির মতো কোনো প্রতিক্রিয়া দেখতে পান, তাহলে /products এন্ডপয়েন্টটি সুরক্ষিত:
{
  "error":"unauthorized",
  "error_description": "authentication failed"
}

অথবা

curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

যদি আপনি এইরকম দেখতে কোনো প্রতিক্রিয়া দেখেন, তাহলে /products রিসোর্সটি অরক্ষিত এবং ডেভেলপারদের ইমেল ফাঁস হয়ে যেতে পারে:

{
   "apiProduct":[
      {
         "apiResources":[
            "/",
            "/**"
         ],
         "approvalType":"auto",
         "attributes":[

         ],
         "createdAt":1537374680948,
         "createdBy":"jdoe@foo.com",
         "description":"",
         "displayName":"mock",
         "environments":[
            "test"
         ],
         "lastModifiedAt":1537374680948,
         "lastModifiedBy":"test@test.com",
         "name":"mock",
         "proxies":[
            "edgemicro-auth",
            "edgemicro_mock"
         ],
         "quota":"null",
         "quotaInterval":"null",
         "quotaTimeUnit":"null",
         "scopes":[
            ""
         ]
      }
   ]
}

Apigee আরও সুপারিশ করে যে আপনি HTTP ভার্চুয়াল হোস্টটি পরীক্ষা করে দেখুন:

উদাহরণস্বরূপ:

curl -v http://your_domain/edgemicro-auth/products

যদি cURL কলটি API প্রোডাক্টের তালিকা ফেরত দেয়, তাহলে ডেভেলপারদের ইমেল ফাঁস হয়ে যাওয়ার সম্ভাবনা থাকে। আপনি যদি এই নন-TLS ভার্চুয়াল হোস্ট সহ এন্ডপয়েন্টটি প্রকাশ করতে না চান, তাহলে edgemicro-auth HTTPProxyConnection কনফিগারেশন থেকে এটি সরিয়ে ফেলতে ভুলবেন না।

সম্পদটি সুরক্ষিত করতে নিম্নলিখিত বিকল্পগুলির মধ্যে একটি বেছে নিন:

মেয়াদোত্তীর্ণ অ্যাক্সেস টোকেন কীভাবে নবায়ন করব?

বর্তমানে, আপনি কোনো নির্দিষ্ট Edge Microgateway ইনস্ট্যান্সের জন্য JWT টোকেন নবায়ন করতে পারবেন না।

বিকল্প সমাধান:

প্রতিটি JWT টোকেনের একটি exp অ্যাট্রিবিউট থাকে যা টোকেনটির মেয়াদ শেষ হওয়ার তারিখ নির্দেশ করে। একটি অ্যাপ সরাসরি edgemicro-auth টোকেন এন্ডপয়েন্টে একটি API কল করার মাধ্যমে মেয়াদ শেষ হওয়ার সময় গণনা করতে এবং একটি নতুন টোকেনের জন্য অনুরোধ করতে পারে। উদাহরণস্বরূপ, আপনি এইভাবে একটি API কল করতে পারেন:

POST https: //{your_org}-{your_env}.apigee.net/edgemicro-auth/token

... এইরকম একটি JSON বডি সহ:

{ "client_id": {your_id}, "client_secret": {your_secret}, "grant_type": "client_credentials" }

আরও দেখুন:

উইন্ডোজে SSL কনফিগার করা
আপনি যদি উইন্ডোজে এজ মাইক্রোগেটওয়ে (Edge Microgateway) চালান, তবে মেশিনে ওপেনএসএসএল (OpenSSL) ইনস্টল করে PATH-এ যুক্ত করতে হবে। সব উইন্ডোজ মেশিনে ওপেনএসএসএল আগে থেকে ইনস্টল করা থাকে না। ওপেনএসএসএল ডাউনলোড এবং ইনস্টল করার তথ্যের জন্য ওপেনএসএসএল ডকুমেন্টেশন দেখুন।
আমি কি এজ মাইক্রো-অ্যাওয়্যার প্রক্সির সাথে যুক্ত এপিআই প্রোডাক্ট ব্যবহার করে এপিআই রিসোর্সগুলিতে অ্যাক্সেসের অনুমতি দিতে পারি?

বর্তমানে, কোনো নির্দিষ্ট OAuth টোকেনের সাথে যুক্ত API প্রোডাক্টগুলোর জন্য একটি API অনুমোদিত কিনা, তা নির্ধারণ করতে শুধুমাত্র বেসপ্যাথ যাচাই করা হয়।

উদাহরণস্বরূপ:

  1. আপনি বেস পাথ এবং টার্গেট দিয়ে একটি edgemicro_ প্রিফিক্সযুক্ত প্রক্সি তৈরি করেন।
  2. আপনি এই প্রক্সিটি একটি প্রোডাক্টে যোগ করবেন। ধরা যাক, এটির নাম edgemicro-prod1
  3. When an API call is made through Edge Microgateway using either an API key or an OAuth token, Edge Microgateway checks if the basepath of the API matches with the basepath of edgemicro_* proxy that is approved for the list of products approved for that key or token.

Apigee কমিউনিটিতে "When using the edgemicro gateway in the products which url needs whitelisting in the products used under resources?" প্রশ্নটিও দেখুন।

আমি কি এজ মাইক্রোগেটওয়ের সাথে কাস্টম এসএসএল সার্টিফিকেট ব্যবহার করতে পারি?

বর্তমানে শুধুমাত্র ডিফল্ট Apigee SSL সার্টিফিকেটটি সমর্থিত। এই মুহূর্তে কাস্টম SSL সার্টিফিকেট সমর্থিত নয়।

বিকল্প উপায়:

আপনি যদি একটি কাস্টম (Apigee-র ডিফল্ট নয় এমন) SSL সার্টিফিকেট ব্যবহার করতে চান, তাহলে আপনার জন্য এই বিকল্পগুলো রয়েছে:

  • একটি নন-এসএসএল jwt_public_key এন্ডপয়েন্ট ব্যবহার করুন। Edge Microgateway কনফিগারেশন ফাইলটি পরিবর্তন করে http://{org}-{env}.apigee.net/edgemicro-auth/publicKey -অথবা- ব্যবহার করুন।
  • Edge Microgateway শুরু করার আগে, এই এনভায়রনমেন্ট ভেরিয়েবলটি সেট করুন: export NODE_TLS_REJECT_UNAUTHORIZED ="0"

Apigee কমিউনিটিতে SSL সার্টিফিকেটের ক্ষেত্রে Edge Micro ইনস্টলেশনের ত্রুটিগুলো যাচাই করার বিষয়টিও দেখুন।

আমি কি Edge Microgateway-এর সাথে Org Admin অ্যাকাউন্ট ব্যবহার করা এড়াতে পারি?
Edge Microgateway কনফিগারেশন স্ক্রিপ্টটি Edge-এ একটি edgemicro-auth প্রক্সি স্থাপন করে, এবং এই স্থাপনের জন্য Org Admin ক্রেডেনশিয়াল প্রয়োজন হয়।
তবে, এই প্রাথমিক ডেপ্লয়মেন্টের পরে, আপনার অর্গ অ্যাডমিন ক্রেডেনশিয়াল ছাড়াই বাকি সেটআপ এবং কনফিগারেশন করতে পারার কথা। অর্গ অ্যাডমিন ক্রেডেনশিয়াল সম্পর্কে এই কমিউনিটি পোস্টটিও দেখুন।
আমি কি Edge Microgateway-এর সাথে আমার নিজের OAuth টোকেন ব্যবহার করতে পারি?

আপনি আপনার নিজস্ব টোকেন ব্যবহার করতে পারেন, কিন্তু তার আগে, আপনাকে Edge Microgateway-এর বিল্ট-ইন অথরাইজেশন বন্ধ করতে হবে। এটি করতে:

  1. Edge Microgateway-এর কনফিগারেশন ফাইলটি খুলুন।
  2. নিম্নলিখিতভাবে দুটি oauth সেটিং true-তে পরিবর্তন করুন:

    oauth:
        allowNoAuthorization: true
        allowInvalidAuthorization: true
Edge Microgateway চালু করার সময় আমি একটি অ্যাক্সেস ডিনাইড ত্রুটি পাচ্ছি।
এই কমান্ড দিয়ে Edge Microgateway চালু করার সময় যদি অ্যাক্সেস ডিনাইড এরর পান:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
কোনো কারণে কী এবং সিক্রেটটি বৈধ নাও হতে পারে। এক্ষেত্রে সবচেয়ে ভালো উপায় হলো edgemicro genkeys কমান্ড ব্যবহার করে কী এবং সিক্রেটটি পুনরায় তৈরি করা।

পরীক্ষা এবং ডিবাগিং

লোড টেস্টিং চলাকালীন "অনেক বেশি ফাইল খোলা" ত্রুটি কীভাবে প্রতিরোধ করব?

কিছু ক্ষেত্রে, আপনার সিস্টেমে অনেক বেশি ফাইল কানেকশন খোলা থাকতে পারে, এবং এর ফলে Edge Micro ক্র্যাশ করতে পারে। ডিফল্ট লগিংয়ের জন্য মাইক্রোগেটওয়ের মাধ্যমে ইনকামিং এবং আউটগোয়িং ট্রানজ্যাকশনের জন্য দুটি HTTP কানেকশনের প্রয়োজন হয়।

টেস্টিং এবং বেঞ্চমার্কিংয়ের উদ্দেশ্যে, Apigee আপনার সিস্টেমের ulimit কমান্ডটি unlimited-এ সেট করার পরামর্শ দেয়: ulimit -n unlimited । Apigee কমিউনিটিতে লোড টেস্টিংয়ের সময় Edge Microgateway ত্রুটিও দেখুন।

দ্রুত উন্নয়ন ও ডিবাগিংয়ের জন্য কিছু টিপস

আপনি যদি এজ মাইক্রোগেটওয়ের জন্য প্লাগইন তৈরি করেন, তাহলে আপনি দেখতে পারেন যে দ্রুত উন্নয়নের জন্য সহায়তা সীমিত।

আপাতত, এখানে কিছু পরামর্শ দেওয়া হলো:

  • Edge Microgateway চালু করার জন্য, আপনি EDGEMICRO_KEY এবং EDGEMICRO_SECRET এনভায়রনমেন্ট ভেরিয়েবলগুলোকে Microgateway স্টার্টআপ কমান্ডের জন্য প্রয়োজনীয় কী/সিক্রেট পেয়ারে সেট করতে পারেন। এর ফলে আপনি কমান্ড লাইনে কী/সিক্রেট প্রবেশ না করেই Edge Microgateway চালু করতে পারবেন। Edge Microgateway ডক্স-এ ‘এনভায়রনমেন্ট ভেরিয়েবল সেট করা’ অংশটিও দেখুন।
  • কমান্ড টার্মিনালে অতিরিক্ত আউটপুট দেখতে Edge Microgateway DEBUG মোডে চালু করুন: DEBUG=* edgemicro start -o [org] -e [env] -k [key] -s [secret]

ব্যবসা এবং লাইসেন্সিং

Apigee-127 এবং Edge Microgateway সাপোর্ট মডেলগুলোর মধ্যে সম্পর্ক কী?

Apigee-127 একটি ওপেন সোর্স সফটওয়্যার প্রজেক্ট যা ওপেন সোর্স মডেলে সমর্থিত। অর্থাৎ, আপনি GitHub প্রজেক্টে কোনো সমস্যা উত্থাপন করতে পারেন এবং কিছু ঠিক করার চেষ্টা করলে একটি পুল রিকোয়েস্ট পাঠাতে পারেন। Apigee-127-এর জন্য Apigee-এর সাথে কোনো সফটওয়্যার লাইসেন্স চুক্তির প্রয়োজন হয় না বা এটি অন্তর্ভুক্তও নয়।

অন্যদিকে, এজ মাইক্রোগেটওয়ে হলো একটি এন্টারপ্রাইজ প্রোডাক্ট যা Apigee গ্রাহকদের জন্য Apigee দ্বারা সমর্থিত। অর্থাৎ, Apigee গ্রাহকরা Google Cloud Apigee Edge Support ব্যবহার করে সাপোর্ট টিকেট, ফিচার রিকোয়েস্ট এবং বাগ রিপোর্ট তৈরি করতে পারেন।