আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
অন-প্রিমিসেস ইনস্টলেশনে ভার্চুয়াল হোস্টের ওপর আপনার সম্পূর্ণ নিয়ন্ত্রণ থাকে। আপনি TLS ব্যবহার করে বা না করে, যেকোনো অর্গের জন্য যেকোনো এনভায়রনমেন্টে ভার্চুয়াল হোস্ট তৈরি করতে পারেন।
এই ডকুমেন্টটিতে একটি সাধারণ ভার্চুয়াল হোস্ট তৈরি করার পদ্ধতি বর্ণনা করা হয়েছে। অর্থাৎ, এমন একটি হোস্ট যা TLS সমর্থন করে না। TLS সমর্থনকারী ভার্চুয়াল হোস্ট তৈরির উদাহরণসহ আরও উদাহরণের জন্য, "প্রাইভেট ক্লাউডের জন্য একটি API-তে TLS অ্যাক্সেস কনফিগার করা" দেখুন।
আরও জানুন :
- ভার্চুয়াল হোস্ট সম্পর্কে
- ভার্চুয়াল হোস্ট কনফিগার করা
- TLS কনফিগার করা
- কীস্টোর এবং ট্রাস্টস্টোর
- প্রাইভেট ক্লাউডের জন্য একটি এপিআই-তে টিএলএস অ্যাক্সেস কনফিগার করা
হোস্ট উপনাম সম্পর্কে
ভার্চুয়াল হোস্ট তৈরি করার সময়, আপনাকে অবশ্যই ভার্চুয়াল হোস্টটির হোস্ট অ্যালিয়াস উল্লেখ করতে হবে। সাধারণত এটি ভার্চুয়াল হোস্টটির ডিএনএস নাম হয়ে থাকে।
অনুরোধটি পরিচালনা করবে এমন এপিআই প্রক্সি নির্ধারণ করার অংশ হিসেবে, এজ রাউটার আগত অনুরোধের Host হেডারকে উপলব্ধ হোস্ট অ্যালিয়াসের তালিকার সাথে তুলনা করে। একটি ভার্চুয়াল হোস্টের মাধ্যমে অনুরোধ করার সময়, হয় ভার্চুয়াল হোস্টের হোস্ট অ্যালিয়াসের সাথে মেলে এমন একটি ডোমেইন নাম উল্লেখ করুন, অথবা রাউটারের আইপি অ্যাড্রেস এবং হোস্ট অ্যালিয়াস সম্বলিত Host হেডারটি উল্লেখ করুন।
উদাহরণস্বরূপ, যদি আপনি myapis.apigee.net হোস্ট অ্যালিয়াস এবং 9001 পোর্ট দিয়ে একটি ভার্চুয়াল হোস্ট তৈরি করেন, তাহলে সেই ভার্চুয়াল হোস্টের মাধ্যমে কোনো API-তে করা cURL অনুরোধ নিম্নলিখিত ফর্মগুলির মধ্যে একটি ব্যবহার করতে পারে:
যদি আপনার myapis.apigee.net এর জন্য একটি DNS এন্ট্রি থাকে:
curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
যদি আপনার myapis.apigee.net এর জন্য কোনো DNS এন্ট্রি না থাকে:
curl http://routerIP:9001/proxy-base-path/resource-path -H 'host:myapis.apigee.net'
এই ফর্মে, আপনি রাউটারের আইপি অ্যাড্রেস উল্লেখ করেন এবং
Hostহেডারে হোস্ট অ্যালিয়াসটি পাস করেন।curl http://routerIP:9001/proxy-base-path/resource-path
ভার্চুয়াল হোস্টের জন্য আপনার কোনো DNS এন্ট্রি না থাকলে বিকল্পসমূহ
যখন আপনার কোনো DNS এন্ট্রি থাকে না, তখন একটি উপায় হলো হোস্ট অ্যালিয়াসটিকে রাউটারের আইপি অ্যাড্রেস এবং ভার্চুয়াল হোস্টের পোর্টে সেট করা, যেমন routerIP : port । উদাহরণস্বরূপ:
192.168.1.31:9001
যখন আপনি নিচের ফর্ম্যাটে একটি curl কমান্ড তৈরি করেন:
curl http://routerIP:9001/proxy-base-path/resource-path
এই বিকল্পটি বেশি পছন্দনীয়, কারণ এটি এজ UI-এর সাথে ভালোভাবে কাজ করে।
আপনার একাধিক রাউটার থাকলে, প্রতিটি রাউটারের জন্য একটি করে হোস্ট অ্যালিয়াস যোগ করুন এবং সেখানে প্রতিটি রাউটারের আইপি অ্যাড্রেস ও ভার্চুয়াল হোস্টের পোর্ট উল্লেখ করুন।
বিকল্পভাবে, আপনি হোস্ট অ্যালিয়াসটিকে একটি মানে সেট করতে পারেন, যেমন temp.hostalias.com । তারপর, আপনাকে প্রতিটি অনুরোধে Host হেডারটি পাস করতে হবে:
curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'Host: temp.hostalias.com'
অথবা, আপনার /etc/hosts ফাইলে হোস্ট অ্যালিয়াসটি যোগ করুন। উদাহরণস্বরূপ, /etc/hosts-এ এই লাইনটি যোগ করুন:
192.168.1.31 temp.hostalias.com
তাহলে আপনি এমনভাবে অনুরোধ করতে পারবেন, যেন আপনার একটি DNS এন্ট্রি আছে:
curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path
Edge for Private Cloud 4.16.01 এবং পরবর্তী সংস্করণগুলিতে ভার্চুয়াল হোস্ট পোর্ট সম্পর্কে
ভার্চুয়াল হোস্ট তৈরি করার সময়, আপনাকে ভার্চুয়াল হোস্ট দ্বারা ব্যবহৃত রাউটার পোর্টটি নির্দিষ্ট করে দিতে হয়। উদাহরণস্বরূপ, পোর্ট ৯০০১।
Apigee for Private Cloud রিলিজ 4.16.01 এবং তার পরবর্তী সংস্করণগুলিতে, ডিফল্টরূপে, রাউটারটি "apigee" ব্যবহারকারী হিসাবে চলে, যার বিশেষাধিকারপ্রাপ্ত পোর্টগুলিতে, সাধারণত 1024 এবং তার নিচের পোর্টগুলিতে, অ্যাক্সেস নেই। আপনি যদি এমন একটি ভার্চুয়াল হোস্ট তৈরি করতে চান যা রাউটারটিকে একটি সুরক্ষিত পোর্টের সাথে সংযুক্ত করে, তাহলে আপনাকে রাউটারটিকে এমন একজন ব্যবহারকারী হিসাবে চালানোর জন্য কনফিগার করতে হবে যার সেই পোর্টগুলিতে অ্যাক্সেস আছে। আরও তথ্যের জন্য "একটি ভার্চুয়াল হোস্ট সেট আপ করা" দেখুন।
ভার্চুয়াল হোস্ট তৈরি করুন
এই বিভাগে Apigee Edge for Private Cloud-এর জন্য ভার্চুয়াল হোস্ট তৈরি করার পদ্ধতি বর্ণনা করা হয়েছে। মনে রাখবেন, একটি নতুন ভার্চুয়াল হোস্ট তৈরি করতে হলে আপনাকে অবশ্যই একজন অর্গানাইজেশন অ্যাডমিনিস্ট্রেটর হতে হবে।
আপনি এপিআই (API) অথবা এজ ইউআই (Edge UI) ব্যবহার করে প্রাইভেট ক্লাউডের জন্য এপিজি এজ (Apigee Edge for Private Cloud)-এর ভার্চুয়াল হোস্ট তৈরি করতে পারেন। নিম্নলিখিত বিভাগগুলিতে এগুলি বর্ণনা করা হয়েছে।
ব্রাউজার ব্যবহার করে একটি ভার্চুয়াল হোস্ট তৈরি করুন
এই অংশে ব্রাউজার ব্যবহার করে ভার্চুয়াল হোস্ট তৈরি করার পদ্ধতি বর্ণনা করা হয়েছে (শুধুমাত্র এজ UI-এর জন্য)।
Edge UI-তে একটি নতুন ভার্চুয়াল হোস্ট তৈরি করতে:
- Edge ম্যানেজমেন্ট UI-তে লগ ইন করুন।
- অ্যাডমিন > ভার্চুয়াল হোস্ট নির্বাচন করুন।
ড্রপ-ডাউন তালিকা থেকে পরিবেশ নির্বাচন করুন।
Edge সেই এনভায়রনমেন্টের ভার্চুয়াল হোস্টগুলোর একটি তালিকা প্রদর্শন করে।
- নতুন ভার্চুয়াল হোস্ট তৈরি করতে, + ভার্চুয়াল হোস্ট নির্বাচন করুন।
Edge ভার্চুয়াল হোস্ট তৈরি করার ফর্মটি প্রদর্শন করে।
আপনি বিদ্যমান কোনো ভার্চুয়াল হোস্টের নামে ক্লিক করেও সেটি সম্পাদনা করতে পারেন।
- আপনার নতুন ভার্চুয়াল হোস্ট নির্ধারণ করুন। মনে রাখবেন যে Base URL ফিল্ডে অবশ্যই প্রোটোকল অন্তর্ভুক্ত থাকতে হবে (অর্থাৎ, ফিল্ডের মানের আগে "http://" বা "https://" যোগ করতে হবে)।
এছাড়াও, লক্ষ্য করুন যে:
- আপনি যত খুশি ভার্চুয়াল হোস্ট তৈরি করতে পারেন, এর কোনো সীমা নেই।
- TLS ঐচ্ছিক এবং এর সংস্করণ 1.0, 1.1 বা 1.2 হতে পারে।
- ভার্চুয়াল হোস্টের পোর্টটি কনফিগারযোগ্য।
- আপনার নতুন ভার্চুয়াল হোস্টটি সংরক্ষণ করতে Create বাটনে ক্লিক করুন।
এপিআই ব্যবহার করে একটি ভার্চুয়াল হোস্ট তৈরি করুন
এপিআই ব্যবহার করে একটি ভার্চুয়াল হোস্ট তৈরি করতে, একটি এক্সএমএল অবজেক্ট তৈরি করুন যা ভার্চুয়াল হোস্টটিকে সংজ্ঞায়িত করে। উদাহরণস্বরূপ, নিম্নলিখিত এক্সএমএল অবজেক্টটি একটি ভার্চুয়াল হোস্টকে সংজ্ঞায়িত করে যা এইচটিটিপি প্রোটোকল ব্যবহার করে:
<VirtualHost name="myVHost">
<HostAliases>
<HostAlias>DNS_name_or_IP:port</HostAlias>
</HostAliases>
<Interfaces/>
<Port>9005</Port>
</VirtualHost> লক্ষ্য করুন যে ভার্চুয়াল হোস্টে একটি name প্রপার্টি থাকে। ভার্চুয়াল হোস্টটি ব্যবহার করার জন্য একটি এপিআই প্রক্সি কনফিগার করতে আপনি এই name প্রপার্টির মান ব্যবহার করেন।
এরপর আপনি এই ভার্চুয়াল হোস্টের মাধ্যমে একটি অনুরোধ পাঠিয়ে এপিআই প্রক্সি অ্যাক্সেস করতে পারবেন:
http://routerIP:port/proxy-base-path/resource-path
https://routerIP:port/proxy-base-path/resource-pathকোথায়:
-
httpবাhttps: ভার্চুয়াল হোস্টটি যদি TLS সমর্থন করার জন্য কনফিগার করা থাকে, তাহলে HTTPS ব্যবহার করুন। যদি ভার্চুয়াল হোস্টটি TLS সমর্থন না করে, তাহলে HTTP ব্যবহার করুন। - routerIP : port হলো ভার্চুয়াল হোস্টের আইপি অ্যাড্রেস এবং পোর্ট নম্বর।
- এপিআই প্রক্সি তৈরি করার সময় proxy-base-path এবং resource-path নির্ধারণ করা হয়।
সাধারণত, আপনি আইপি অ্যাড্রেস এবং পোর্ট নম্বর দিয়ে গ্রাহকদের কাছে আপনার এপিআই প্রকাশ করেন না। এর পরিবর্তে, আপনি রাউটার এবং পোর্টের জন্য একটি ডিএনএস এন্ট্রি নির্ধারণ করেন। উদাহরণস্বরূপ:
http://api.myCompany.com/proxy-base-path/resource-path https://api.myCompany.com/proxy-base-path/resource-path
যদি আপনি ডিএনএস এন্ট্রি নির্ধারণ করেন, তাহলে আপনাকে অবশ্যই ভার্চুয়াল হোস্টের জন্য একটি হোস্ট অ্যালিয়াস তৈরি করতে হবে যা ডিএনএস এন্ট্রির ডোমেইন নামের সাথে মেলে। হোস্ট অ্যালিয়াসটি অবশ্যই সেই স্ট্রিংয়ের সাথে মিলতে হবে যা ক্লায়েন্ট Host হেডারে পাঠায়। উপরের উদাহরণ থেকে, আপনাকে api.myCompany.com এর একটি হোস্ট অ্যালিয়াস নির্দিষ্ট করতে হবে।
<VirtualHost name="myVHost">
<HostAliases>
<HostAlias>api.myCompany.com</HostAlias>
</HostAliases>
<Interfaces/>
<Port>9005</Port>
</VirtualHost>HTTP প্রোটোকল ব্যবহার করে এমন একটি ভার্চুয়াল হোস্ট তৈরি করতে, নিম্নলিখিতগুলি সম্পাদন করুন:
- Create a Virtual Host API ব্যবহার করে ভার্চুয়াল হোস্টটি তৈরি করুন, যেখানে ms-IP হলো ম্যানেজমেন্ট সার্ভার নোডের আইপি অ্যাড্রেস বা ডোমেইন নেম:
$ curl -X POST -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts \ -d '<VirtualHost name="newVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>9005</Port> </VirtualHost>' \ -u sysAdminEmail:password
- হোস্ট অ্যালিয়াসের সাথে মেলে এমন ভার্চুয়াল হোস্টের জন্য ডিএনএস রেকর্ড তৈরি করুন।
- আপনার যদি কোনো বিদ্যমান এপিআই প্রক্সি থাকে, তাহলে প্রক্সি এন্ডপয়েন্টের
<HTTPConnection>এলিমেন্টে ভার্চুয়াল হোস্টটি যোগ করুন। সমস্ত নতুন এপিআই প্রক্সিতে ভার্চুয়াল হোস্টটি স্বয়ংক্রিয়ভাবে যুক্ত হয়ে যায়। ভার্চুয়াল হোস্ট ব্যবহার করার জন্য এপিআই প্রক্সি কনফিগার করা দেখুন।
একটি ভার্চুয়াল হোস্ট পরিবর্তন করা
একটি ভার্চুয়াল হোস্ট পরিবর্তন করতে, নিম্নলিখিতগুলি সম্পাদন করুন:
‘Update a Virtual Host’ API ব্যবহার করে ভার্চুয়াল হোস্টটি আপডেট করুন, যেখানে
<ms-IP>হলো ম্যানেজমেন্ট সার্ভার নোডের আইপি অ্যাড্রেস বা ডোমেইন নেম। আপনাকে রিকোয়েস্ট বডিতে ভার্চুয়াল হোস্টের সম্পূর্ণ সংজ্ঞা উল্লেখ করতে হবে, শুধু যে উপাদানগুলো আপনি পরিবর্তন করতে চান তা নয়। এই উদাহরণে, আপনি ভার্চুয়াল হোস্টের পোর্ট নম্বর 9008 থেকে 9009-এ পরিবর্তন করছেন:curl -X PUT -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts/vhost_name \ -d '<VirtualHost name="newVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>9009</Port> </VirtualHost>' \ -u email:password- শুধুমাত্র Edge for Private Cloud ভার্সন 4.16.01 এবং 4.16.05-এর ক্ষেত্রে , যদি আপনি একটি বিদ্যমান ভার্চুয়াল হোস্ট পরিবর্তন করেন এবং পোর্ট নম্বর পরিবর্তন না করে TLS সক্রিয় বা নিষ্ক্রিয় করেন, তাহলে:
রাউটারটি বন্ধ করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/nginx/conf.dতে থাকা যেকোনো ফাইল মুছে ফেলুন:rm -f /opt/nginx/conf.d/*
রাউটারটি চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-router start
- সকল রাউটারের জন্য পুনরাবৃত্তি করুন।