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

ব্যক্তিগত ক্লাউডের জন্য প্রান্ত v. 4.17.05

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

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

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

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

উদাহরণস্বরূপ, setup-org কমান্ডে পাস করা একটি কনফিগার ফাইলে, আপনি এই তথ্যটি নির্দিষ্ট করতে পারেন:

# Specify virtual host information.
VHOST_PORT=9001
VHOST_NAME=default

# If you have a DNS entry for the virtual host.
VHOST_ALIAS=myapis.apigee.net

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

উদাহরণস্বরূপ, আপনি যদি 9001 পোর্টে myapis.apigee.net এর হোস্ট উপনাম দিয়ে একটি ভার্চুয়াল হোস্ট তৈরি করেন, তাহলে সেই ভার্চুয়াল হোস্টের মাধ্যমে একটি API-এর কাছে একটি cURL অনুরোধ নিম্নলিখিত ফর্মগুলির মধ্যে একটি ব্যবহার করতে পারে:

  • আপনার যদি myapis.apigee.net এর জন্য একটি DNS এন্ট্রি থাকে:

    কার্ল http:// myapis.apigee.net :9001/{proxy-base-path}/{resource-path}
  • আপনার যদি myapis.apigee.net এর জন্য একটি DNS এন্ট্রি না থাকে:

    কার্ল http:// <routerIP>:9001 /{proxy-base-path}/{resource-path} -H 'হোস্ট: myapis.apigee.net'

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

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

    কার্ল http://<routerIP>:9001/{proxy-base-path}/{resource-path}

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

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

VHOST_ALIAS=192.168.1.31:9001

তারপরে আপনি নীচের আকারে একটি কার্ল কমান্ড তৈরি করুন:

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

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

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

# Specify the IP and port of each router as a space-separated list enclosed in quotes:
# VHOST_ALIAS="192.168.1.31:9001 192.168.1.32:9001"

বিকল্পভাবে, আপনি হোস্ট উপনাম একটি মান সেট করতে পারেন, যেমন 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

তারপরে আপনি একটি অনুরোধ করতে পারেন যেন আপনার একটি DNS এন্ট্রি ছিল:

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

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

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

একটি ভিন্ন ব্যবহারকারী হিসাবে রাউটার চালানোর জন্য:

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