ভার্চুয়াল হোস্ট সেট-আপ করা

Edge for Private Cloud v. 4.17.01

Edge-এ ভার্চুয়াল হোস্ট ডোমেন এবং Edge রাউটার পোর্টকে সংজ্ঞায়িত করে যেখানে API প্রক্সি প্রকাশ করা হয় এবং এক্সটেনশনের মাধ্যমে, URL যা অ্যাপ API প্রক্সি অ্যাক্সেস করতে ব্যবহার করে। এছাড়াও, ভার্চুয়াল হোস্ট নির্ধারণ করে যে API প্রক্সি HTTP প্রোটোকল নাকি এনক্রিপ্ট করা HTTPS প্রোটোকল ব্যবহার করে অ্যাক্সেস করা হবে।

Edge অনবোর্ডিং প্রসেসের অংশ হিসেবে, আপনাকে একটি প্রতিষ্ঠান, এনভায়রনমেন্ট এবং ভার্চুয়াল হোস্ট তৈরি করতে হবে। নতুন ব্যবহারকারীদের জন্য এই প্রসেস আরও সহজ করতে, Edge setup-org কমান্ড প্রদান করে।

ভার্চুয়াল হোস্ট তৈরি করার সময় আপনাকে নিম্নলিখিত তথ্য উল্লেখ করতে হবে:

  • আপনার API প্রক্সিতে রেফারেন্স হিসেবে ব্যবহার করার জন্য ভার্চুয়াল হোস্টের নাম।
  • ভার্চুয়াল হোস্টের জন্য রাউটারে পোর্ট। সাধারণত এই পোর্টগুলি 9001 থেকে শুরু হয় এবং প্রতিটি নতুন ভার্চুয়াল হোস্টের জন্য এক করে বৃদ্ধি পায়।
  • ভার্চুয়াল হোস্টের হোস্ট অ্যালিয়াস। সাধারণত ভার্চুয়াল হোস্টের ডিএনএস নাম।

এজ রাউটার ইনকামিং অনুরোধের হোস্ট হেডারের সাথে উপলভ্য হোস্ট উপনামের তালিকার তুলনা করে এবং এর মাধ্যমে অনুরোধ ম্যানেজ করা API প্রক্সি নির্ধারণ করে। ভার্চুয়াল হোস্টের মাধ্যমে অনুরোধ করার সময়, হয় ভার্চুয়াল হোস্টের হোস্ট অ্যালিয়াসের সাথে মেলে এমন ডোমেন নাম উল্লেখ করুন অথবা রাউটারের IP অ্যাড্রেস এবং হোস্ট অ্যালিয়াস সহ হোস্ট হেডার উল্লেখ করুন।

যেমন, আপনি যদি ৯০০১ পোর্টে myapis.apigee.net হোস্ট অ্যালিয়াস সহ ভার্চুয়াল হোস্ট তৈরি করেন, তাহলে সেই ভার্চুয়াল হোস্টের মাধ্যমে 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'

    এই ফর্মে, আপনি রাউটারের IP অ্যাড্রেস নির্দিষ্ট করেন এবং হোস্ট হেডারে হোস্ট অ্যালিয়াস পাস করেন।

    মনে রাখবেন: curl কমান্ড, বেশিরভাগ ব্রাউজার এবং অন্যান্য অনেক ইউটিলিটি অটোমেটিক অনুরোধের অংশ হিসেবে ডোমেনের সাথে হোস্ট হেডার যোগ করে, তাই আপনি আসলে এই ফর্ম্যাটে curl কমান্ড ব্যবহার করতে পারেন:


    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

ভার্চুয়াল হোস্টের জন্য আপনার কাছে DNS এন্ট্রি না থাকলে বিকল্প

আপনার কাছে DNS এন্ট্রি না থাকলে, একটি বিকল্প হল হোস্ট অ্যালিয়াসকে রাউটারের IP অ্যাড্রেস এবং ভার্চুয়াল হোস্টের পোর্টে সেট করা, যেমন <routerIP>:port। যেমন:

192.168.1.31:9001

তারপর নিচে দেখানো ফর্ম্যাটে একটি curl কমান্ড তৈরি করুন:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

এই বিকল্পটি পছন্দ করা হয় কারণ এটি Edge UI-এর সাথে ভালভাবে কাজ করে।

আপনার একাধিক রাউটার থাকলে, প্রতিটি রাউটারের জন্য একটি হোস্ট উপনাম যোগ করুন, প্রতিটি রাউটারের IP অ্যাড্রেস এবং ভার্চুয়াল হোস্টের পোর্ট উল্লেখ করুন।

বিকল্প হিসেবে, আপনি হোস্টের উপনামের জন্য কোনও মান সেট করতে পারেন, যেমন temp.hostalias.com। তারপর, আপনাকে প্রতিটি অনুরোধে হোস্ট হেডার পাঠাতে হবে:

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

তারপর আপনি এমনভাবে অনুরোধ করতে পারেন যেন আপনার কাছে একটি ডিএনএস এন্ট্রি আছে:

curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}

ভার্চুয়াল হোস্টে সুরক্ষিত পোর্ট ব্যবহার করা

আপনি যদি এমন একটি ভার্চুয়াল হোস্ট তৈরি করতে চান যা রাউটারকে একটি সুরক্ষিত পোর্টের সাথে বাইন্ড করে, যেমন 1024-এর কম পোর্ট নম্বর, তাহলে আপনাকে রাউটারকে এমনভাবে কনফিগার করতে হবে যাতে এটি সেইসব পোর্টে অ্যাক্সেস থাকা ব্যবহারকারী হিসেবে রান করে। ডিফল্ট হিসেবে, রাউটার "apigee" ব্যবহারকারী হিসেবে রান করে যার কাছে প্রিভিলেজড পোর্টের অ্যাক্সেস নেই।

অন্য ব্যবহারকারী হিসেবে Router চালাতে:

  1. রুট হিসেবে, /opt/apigee/etc/edge-router.d/RUN_USER.sh ফাইলটি তৈরি করুন।
  2. ফাইলে নিম্নলিখিত এন্ট্রি যোগ করুন:
    RUN_USER=root
    আপনি যদি রুট হিসেবে রাউটার চালাতে না চান, তাহলে পোর্টে অ্যাক্সেস আছে এমন একজন ব্যবহারকারীকে নির্দিষ্ট করুন।
  3. ফাইলটি সেভ করুন।
  4. আপনি যদি রুট ছাড়া অন্য কোনও ব্যবহারকারী নির্দিষ্ট করে থাকেন, তাহলে ফাইলের মালিককে সেই ব্যবহারকারীতে পরিবর্তন করুন:
    > chown USER:USER /opt/apigee/etc/edge-router.d/RUN_USER.sh
  5. রাউটার রিস্টার্ট করুন:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart