لمحة عن المضيفين الافتراضيين

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

في Edge، يعالج جهاز التوجيه جميع الزيارات الواردة من واجهة برمجة التطبيقات. وهذا يعني أنّ جميع طلبات HTTP وHTTPS الموجّهة إلى خادم وكيل لواجهة برمجة التطبيقات ستتم معالجتها أولاً من خلال جهاز توجيه Edge.

يتيح لك المضيف الافتراضي استضافة عدة أسماء نطاقات على خادم. بالنسبة إلى Edge، يتوافق الخادم مع جهاز توجيه Edge. ومن خلال تحديد عدة مضيفات افتراضية على جهاز توجيه، يستطيع جهاز التوجيه معالجة طلبات واجهة برمجة التطبيقات لأسماء نطاقات متعددة.

يحدد المضيف الافتراضي على Edge بروتوكول الوصول (HTTP أو HTTPS)، ومنفذ جهاز التوجيه المفتوح، واسم المضيف البديل. يكون الاسم المستعار للمضيف هو عادةً اسم نطاق نظام أسماء النطاقات الذي يتم ربطه بعنوان IP لجهاز التوجيه.

على سبيل المثال، تعرض الصورة التالية جهاز توجيه مع تعريفين للمضيف الافتراضي:

يعالج المضيف الافتراضي الأول طلبات HTTPS على النطاق domainName1، في حين يعالج المضيف الثاني طلبات HTTP على domainName2.

عند إرسال طلب إلى خادم وكيل لواجهة برمجة التطبيقات، يقارن جهاز التوجيه عنوان Host للطلب الوارد بقائمة الأسماء المستعارة للمضيف التي تحدّدها جميع المضيفين الافتراضيين لتحديد المضيف الافتراضي الذي يعالج الطلب.

لمحة عن تعريفات المضيف الافتراضي

تحتوي منصات الاستضافة الظاهرية على المعلومات التالية:

  • الاسم الداخلي للمضيف الظاهري. ويمكنك استخدام هذا الاسم للإشارة إلى المضيف الافتراضي في الخوادم الوكيلة لواجهة برمجة التطبيقات وعند إعداد المضيف الافتراضي.
  • الاسم المستعار للمضيف للمضيف الظاهري. ويكون عادةً الاسم المستعار للمضيف هو اسم نطاق نظام أسماء النطاقات المرتبط بعنوان IP على جهاز التوجيه. يجب أن يحتوي العنوان Host لطلبات الخادم الوكيل لواجهة برمجة التطبيقات على الاسم المستعار للمضيف الخاص بالمضيف الافتراضي.
  • منفذ مفتوح على جهاز التوجيه.
  • ما إذا كان بروتوكول أمان طبقة النقل (TLS) مفعَّلاً أم لا (وصول عبر HTTP).

على سبيل المثال، يمكنك تحديد المعلومات التالية عند إنشاء مضيف افتراضي:

  • name = myvhost
  • اسم المضيف المستعار = apis.acme.com
  • المنفذ = 443
  • تم تفعيل بروتوكول أمان طبقة النقل (TLS)

استنادًا إلى الإعداد أعلاه للمضيف الافتراضي، يستخدم الطلب الوكيل لواجهة برمجة التطبيقات النموذج التالي:

https://apis.acme.com/{proxy-base-path}/{resource-path}

المكان:

  • يتم تحديد {proxy-base-path} عند إنشاء خادم وكيل لواجهة برمجة التطبيقات، ويكون فريدًا لكل خادم وكيل لواجهة برمجة التطبيقات. مثلاً:
    https://apis.acme.com/characters
  • {resource-path} المسار إلى مورد يمكن الوصول إليه من خلال الخادم الوكيل لواجهة برمجة التطبيقات. مثلاً:
    https://apis.acme.com/characters/coyote
    https://apis.acme.com/characters/roadrunner

لمحة عن المضيفات الافتراضية في Edge للسحابة الإلكترونية

تتضمن كل مؤسسة في Edge تلقائيًا بيئتين (test وprod)، ومضيفين افتراضيين في كل بيئة (تلقائي وآمن)، وسجلات نظام أسماء النطاقات لكل اسم مستعار للمضيف.

يحتوي الاسم المستعار للمضيف لكل مضيف افتراضي يوفره Apigee على اسم المؤسسة والبيئة، كما هو موضح في الجدول التالي:

البيئة اسم المضيف الافتراضي الاسم المستعار للمضيف المنفذ تفعيل بروتوكول أمان طبقة النقل (TLS)
إنتاج التلقائية {org-name}-prod.apigee.net 80 لا
آمن {org-name}-prod.apigee.net 443 نعم
اختبار التلقائية {org-name}-test.apigee.net 80 لا
آمن {org-name}-test.apigee.net 443 نعم

على سبيل المثال، اسم النطاق التلقائي لمؤسسة تُسمى "myorg" في بيئة prod هو "myorg-prod.apigee.net". وبالتالي، للوصول إلى خادم وكيل لواجهة برمجة التطبيقات في تلك المؤسسة، يمكنك استخدام عنوان URL في النموذج:

http://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}
https://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}

خطط Apigee المدفوعة: قد لا يكون اسم النطاق الذي يتضمّن "apigee.net" هو ما تريد عرضه لعملائك. يمكنك استخدام إدخال نظام أسماء النطاقات وسجلّ CNAME لربط اسم نطاق بمؤسستك على Edge. عليك أيضًا إنشاء مضيف افتراضي مع ضبط الاسم المستعار للمضيف على اسم النطاق هذا. يتيح ذلك للمطوّرين الوصول إلى واجهة برمجة التطبيقات من خلال نطاق خاص بشركتك.

إليك مثال على نطاق خاص في Edge:

https://apis.acme.com/{proxy-base-path}/{resource-path}

معلومات عن المضيفين الافتراضيين على Edge لـ Private Cloud

عند تثبيت Apigee Edge لخدمة Private Cloud، لن يتم إنشاء مؤسسات أو بيئات أو مضيفات افتراضية تلقائية لك. بعد إكمال عملية تثبيت Edge، يكون الإجراء الأول هو عادةً إنشاء مؤسسة وبيئة ومضيف افتراضي من خلال عملية "الإعداد".

لإجراء الإعداد، شغِّل الأمر التالي على عقدة Edge Management Server:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

حيث يحتوي configFile على المعلومات اللازمة لإنشاء مستخدم ومؤسسة وبيئة ومضيف افتراضي.

على سبيل المثال، يمكنك إنشاء:

  • مستخدم من اختيارك أن يكون مشرفًا للمؤسسة
  • مؤسسة باسم example
  • بيئة في المؤسسة باسم prod
  • مضيف افتراضي في البيئة باسم default يسمح بالوصول عبر HTTP عبر المنفذ 9001
  • هو اسم مضيف مستعار لاسم نظام أسماء النطاقات المستخدَم للوصول إلى جهاز التوجيه، أو عنوان IP لجهاز التوجيه ومنفذ المضيف الافتراضي بالصيغة IP:9001.

يمكنك لاحقًا إضافة أي عدد من المؤسسات والبيئات والمضيفين الافتراضيين إلى إصدار Edge داخل المؤسسة. يمكنك الاطّلاع على ما يلي للحصول على مزيد من المعلومات:

يتم فتح الأجهزة المضيفة الظاهرية على جهاز توجيه Edge. لذلك، يجب التأكّد من أنّ المنفذ الذي تحدّده للمضيف الظاهري مفتوح على جهاز التوجيه. يمكنك استخدام أمر في النموذج أدناه لفتح منفذ:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT --verbose

بعد تشغيل هذا الأمر، يمكنك الوصول إلى واجهات برمجة التطبيقات باستخدام عنوان URL على النحو التالي:

http://<router-ip>:9001/{proxy-base-path}/{resource-path}

وفي العادة، لا تنشر واجهات برمجة التطبيقات للعملاء الذين لديهم عنوان IP ورقم منفذ. بل يمكنك بدلاً من ذلك تحديد إدخال نظام أسماء النطاقات لجهاز التوجيه والمنفذ. مثال:

http://myAPI.myCo.com/{proxy-base-path}/{resource-path}

عند تحديد إدخال نظام أسماء النطاقات، يجب أيضًا إنشاء مضيف افتراضي باستخدام اسم مضيف مستعار يطابق اسم النطاق لإدخال نظام أسماء النطاقات. يتضح من المثال أعلاه، أنك ستحدد الاسم المستعار لمضيف الموقع myAPI.myCo.com عند إنشاء المضيف الظاهري.

لمحة عن الأسماء المستعارة للمضيف وأسماء نظام أسماء النطاقات

أحد المواقع التي تعينها للمضيف الظاهري هو الاسم المستعار للمضيف. والاسم المستعار للمضيف هو عادةً اسم نظام أسماء النطاقات للمضيف الافتراضي. تعتمد كيفية ضبط الاسم المستعار للمضيف على نوع تثبيت Edge: Cloud أو Private Cloud.

استضافة الأسماء المستعارة وأسماء نظام أسماء النطاقات في Edge للسحابة الإلكترونية

في Edge for the Cloud، عند إنشاء مؤسسة Edge لأول مرة، تنشئ Apigee تلقائيًا بيئتين (test وprod)، ومضيفَين افتراضيَين في كل بيئة (تلقائي وآمن)، وسجلّات نظام أسماء النطاقات لكل مضيف افتراضي.

يحتوي الاسم المستعار للمضيف للمضيفات الظاهرية على اسم المؤسسة والبيئة. ولذلك، يكون الطلب من خلال مضيف افتراضي على النحو التالي:

  • http://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
  • https://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
  • http://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}
  • https://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}

عادةً ما تحتاج إلى إنشاء مضيفات افتراضية تستخدم اسم نطاقك بدلاً من استخدام نطاق apigee.net التلقائي. لإجراء ذلك، يجب أولاً إنشاء إدخال نظام أسماء النطاقات وسجلّ CNAME.

ويوضح الشكل التالي تكوينًا نموذجيًا لكيفية معالجة Edge لطلب البيانات من واجهة برمجة التطبيقات:

في هذا المثال:

  • api.acme.com هو اسم النطاق المطلوب.
  • حدِّد إدخالاً لنظام أسماء النطاقات وسجلّ CNAME لتوجيه api.acme.com إلى acme-prod.apigee.net.
  • يحتوي الطلب على عنوان Host الذي يستخدمه جهاز التوجيه لتحديد المضيف الافتراضي الذي يعالج الطلب.

في هذا المثال، يمكنك تحديد المعلومات التالية في تعريف المضيف الظاهري:

  • name = myvhost
  • اسم المضيف المستعار = apis.acme.com
  • المنفذ = 443
  • تفعيل إمكانية الوصول عبر بروتوكول أمان طبقة النقل (TLS)

راجع تهيئة المضيفين الافتراضيين للسحابة الإلكترونية لمزيد من المعلومات.

استضافة الأسماء المستعارة وأسماء نظام أسماء النطاقات في Edge لـ Private Cloud

وكما هي الحال في Edge for Cloud، يمكنك إنشاء مضيفات افتراضية تستخدم اسم نطاقك الخاص بالاسم المستعار للمضيف. بعد ذلك، تنشئ إدخال نظام أسماء النطاقات وسجلّ CNAME للوصول إلى هذه المضيفات الظاهرية.

أحد أوجه الاختلاف بين السحابة الإلكترونية والسحابة الخاصة هو أنّه في Cloud Apigee أنشأت تلقائيًا أسماء نظام أسماء النطاقات لمؤسساتك، وتكون الصيغة التالية:

  • name=التلقائي: http://{org-name}-{env-name}.apigee.net (منفذ جهاز التوجيه 80)
  • name=آمن: https://{org-name}-{env-name}.apigee.net (منفذ جهاز التوجيه 443)

في شبكة Edge الخاصة بالسحابة الإلكترونية الخاصة، يجب إنشاء إدخالات نظام أسماء النطاقات إلى عنوان IP ومنفذ جهاز التوجيه.

على سبيل المثال، يمكنك تحديد هذه المعلومات في تعريف المضيف الظاهري:

  • name = myvhost
  • اسم المضيف المستعار = apis.acme.com
  • المنفذ = 9001
  • تفعيل إمكانية الوصول عبر بروتوكول أمان طبقة النقل (TLS)

ويوضح الشكل التالي تكوينًا نموذجيًا لكيفية معالجة Edge لطلب البيانات من واجهة برمجة التطبيقات:

في هذا المثال:

  • api.acme.com هو اسم النطاق المطلوب.
  • يمكنك تحديد إدخال لنظام أسماء النطاقات وسجلّ CNAME لتوجيه api.acme.com إلى عنوان IP ومنفذ جهاز التوجيه.
  • يحتوي الطلب على عنوان Host الذي يستخدمه جهاز التوجيه لتحديد المضيف الافتراضي الذي يعالج الطلب.

راجع تهيئة المضيفين الافتراضيين للسحابة الإلكترونية الخاصة لمزيد من المعلومات.

الأسماء المستعارة للمضيف وأحرف البدل

ويمكنك تضمين حرف البدل "*" في الاسم المستعار للمضيف. لا يمكن أن يكون حرف البدل "*" إلا في بداية الاسم المستعار للمضيف (قبل الحرف الأول من ".")، ولا يمكن مزجه مع أحرف أخرى.

فيما يلي مثال على اسم مستعار لمضيف صالح باستخدام حرف بدل:

*.example.com

الأمثلة التالية غير صالحة:

  www.*.example.com
  w*.example.com

إنّ استخدام حرف بدل في العنوان البديل للمضيف الافتراضي يسمح للخوادم الوكيلة لواجهة برمجة التطبيقات بمعالجة الطلبات الموجَّهة إلى نطاقات فرعية متعددة مثل alpha.example.com أو beta.example.com أو live.example.com. ويساعدك استخدام اسم مستعار لحرف بدل أيضًا في استخدام عدد أقل من المضيفين الافتراضيين لكل بيئة للبقاء ضمن حدود المنتج، لأنّ المضيف الظاهري الذي يتضمّن حرف بدل يُحتسب كمضيف افتراضي واحد فقط.

يجب أن تحتوي شهادة TLS للمضيف الافتراضي على حرف بدل مطابق في اسم CN للشهادة. مثلاً: *.example.com

معلومات عن مواقع المضيف الافتراضية

في Edge، يتم تمثيل المضيف الظاهري بكائن XML. على سبيل المثال، يحدّد كائن XML التالي مضيفًا افتراضيًا:

<VirtualHost name="vhostName">
    <HostAliases>
        <HostAlias>hostAlias</HostAlias>
    </HostAliases>
    <Interfaces>
        <!-- Private Cloud only -->
        <Interface>interfaceName</Interface>
    <Port>portNumber</Port>
    <BaseURL>http://myCo.com<</BaseUrl>
    <OCSPStapling>off</OCSPStapling>
    <RetryOptions/>
   <SSLInfo>
        <Enabled>trueFalse</Enabled>
        <ClientAuthEnabled>trueFalse</ClientAuthEnabled>
        <KeyStore>ref://keystoreRef</KeyStore>
        <KeyAlias>keyAlias</KeyAlias>
        <TrustStore>ref://truststoreRef</TrustStore>
        <IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
    </SSLInfo>
    <Properties>
        <Property name="proxy_read_timeout">timeout</Property>
        <Property name="keepalive_timeout">timeout</Property>
        <Property name="proxy_request_buffering">onOff</Property>
        <Property name="proxy_buffering">onOff</Property>
        <Property name="ssl_protocols">protocolList</Property>
        <Property name="ssl_ciphers">cipherList</Property>
    </Properties>
</VirtualHost>

تستند قائمة الخصائص التي يمكنك ضبطها إلى ما إذا كنت تستخدم Edge للسحابة الإلكترونية أو Edge للسحابة الخاصة. إذا كنت تستخدم Edge لـ Private Cloud، ستعتمد قائمة الخصائص المتاحة أيضًا على إصدار Edge. للحصول على وصف كامل لجميع خصائص المضيف الظاهري، راجع مرجع خاصية المضيف الظاهري.

لمزيد من المعلومات حول إنشاء مضيفات افتراضية لإصدار معين من Edge، انظر: