متطلبات التثبيت

الإصدار 4.17.01 من Edge for Private Cloud

متطلبات الأجهزة

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

في هذه الجداول، تُضاف متطلبات القرص الصلب إلى مساحة القرص الصلب التي يتطلبها نظام التشغيل. بناءً على تطبيقاتك وحركة بيانات الشبكة، قد يتطلّب التثبيت موارد أكثر أو أقل من الموارد المدرَجة أدناه.

مكوّن التثبيت

ذاكرة الوصول العشوائي (RAM)

وحدة المعالجة المركزية

الحد الأدنى للقرص الصلب

Cassandra

16 غيغابايت

8 نوى

مساحة تخزين محلية تبلغ 250 غيغابايت مع محرك أقراص ذي حالة صلبة (SSD) أو محرك أقراص ثابتة (HDD) سريع يتيح 2000 عملية إدخال/إخراج في الثانية

معالج الرسائل/الموجّه على الجهاز نفسه

‫8/16 غيغابايت

‫4 نوى†

‫100 غيغابايت

"إحصاءات Google" - Postgres/Qpid على الخادم نفسه (لا يُنصح به للإنتاج)

‫16 غيغابايت*

‫8 نوى*

مساحة تخزين على الشبكة*** تتراوح بين 500 غيغابايت و1 تيرابايت**، ويُفضَّل أن تكون مزوّدة بواجهة خلفية لمحرك أقراص ذي حالة صلبة (SSD) تتيح إجراء 1000 عملية إدخال/إخراج في الثانية أو أكثر*.

إحصاءات - Postgres مستقل

‫16 غيغابايت*

‫8 نوى*

مساحة تخزين على الشبكة*** تتراوح بين 500 غيغابايت و1 تيرابايت**، ويُفضَّل أن تكون مزوّدة بوحدة تخزين SSD في الخلفية، وتتيح إجراء 1000 عملية إدخال/إخراج في الثانية أو أكثر*.

Analytics - Qpid standalone

‫8 غيغابايت

‫4 نوى

مساحة تخزين محلية تتراوح بين 30 غيغابايت و50 غيغابايت مع محرك أقراص ذي حالة صلبة (SSD) أو محرك أقراص ثابتة (HDD) سريع

بالنسبة إلى عمليات التثبيت التي تزيد عن 250 معاملة في الثانية، يُنصح باستخدام محرك أقراص ثابتة (HDD) مع مساحة تخزين محلية تتيح 1000 عملية إدخال/إخراج في الثانية.

يبلغ حجم قائمة انتظار Qpid التلقائي 20 غيغابايت. إذا كنت بحاجة إلى إضافة المزيد من السعة، يمكنك إضافة عُقد Qpid إضافية.

غير ذلك (OpenLDAP، واجهة المستخدم، خادم الإدارة)

4 غيغابايت

نواة مزدوجة

‫60 غيغابايت

† يمكنك تعديل متطلبات نظام معالج الرسائل استنادًا إلى معدل النقل:

الحد الأدنى المقترح هو 4 أنوية، و8 أنوية لنظام ذي معدّل أعلى لنقل البيانات. يمكنك إجراء اختبارات الأداء لتحديد الحجم الأمثل لواجهات برمجة التطبيقات.

*ضبط متطلبات نظام Postgres استنادًا إلى معدل النقل:

  • أقل من 250 معاملة في الثانية: يمكن استخدام ذاكرة بسعة 8 غيغابايت ومعالج رباعي النواة مع مساحة تخزين مُدارة على الشبكة*** تتيح إجراء 1000 عملية إدخال/إخراج في الثانية أو أكثر
  • أكثر من 250 معاملة في الثانية: 16 غيغابايت، 8 نوى، مساحة تخزين مُدارة على الشبكة*** تتيح 1000 عملية إدخال/إخراج في الثانية أو أكثر
  • أكثر من 1000 معاملة في الثانية: 16 غيغابايت، 8 نوى، مساحة تخزين شبكة مُدارة*** تدعم 2000 عملية إدخال/إخراج في الثانية أو أكثر
  • أكثر من 2000 معاملة في الثانية: 32 غيغابايت، 16 نواة، مساحة تخزين مُدارة على الشبكة*** تتيح 2000 عملية إدخال/إخراج في الثانية أو أكثر
  • أكثر من 4000 معاملة في الثانية: 64 غيغابايت، 32 نواة، مساحة تخزين مُدارة على الشبكة*** تتيح 4000 عملية إدخال/إخراج في الثانية أو أكثر

**تستند قيمة القرص الثابت في Postgres إلى الإحصاءات الجاهزة التي تم تسجيلها من خلال Edge. إذا أضفت قيمًا مخصّصة إلى بيانات الإحصاءات، يجب زيادة هذه القيم وفقًا لذلك. استخدِم الصيغة التالية لتقدير مساحة التخزين المطلوبة:

(عدد وحدات البايت/الطلب) * (الطلبات في الثانية) * (الثواني في الساعة) * (ساعات ذروة الاستخدام في اليوم) * (الأيام في الشهر) * (أشهر الاحتفاظ بالبيانات) = وحدات البايت المطلوبة لمساحة التخزين

على سبيل المثال:

(2 كيلوبايت من بيانات الإحصاءات لكل طلب) * 100 طلب/ثانية * 3600 ثانية/ساعة * 18 ساعة ذروة الاستخدام في اليوم * 30 يومًا/شهر * الاحتفاظ بالبيانات لمدة 3 أشهر = 1,194,393,600,000 بايت أو 1194.4 غيغابايت.

*** يُنصح باستخدام مساحة التخزين على الشبكة لقاعدة بيانات Postgresql للأسباب التالية:

  • تتيح هذه الميزة إمكانية زيادة حجم مساحة التخزين بشكل ديناميكي عند الحاجة.
  • يمكن تعديل عمليات الإدخال/الإخراج في الثانية (IOPS) للشبكة أثناء التشغيل في معظم الأنظمة الفرعية الحالية للبيئة/التخزين/الشبكة.
  • يمكن تفعيل اللقطات على مستوى مساحة التخزين كجزء من حلول الاحتفاظ بنسخة احتياطية والاسترداد.

بالإضافة إلى ذلك، في ما يلي متطلبات الأجهزة إذا أردت تثبيت "خدمات تحقيق الربح":

مكوّن يتضمّن ميزة تحقيق الربح

ذاكرة الوصول العشوائي (RAM)

وحدة المعالجة المركزية

القرص الثابت

خادم الإدارة (مع خدمات تحقيق الربح)

‫8 غيغابايت

‫4 نوى

‫60 غيغابايت

"إحصاءات Google" - Postgres/Qpid على الخادم نفسه

16 غيغابايت

8 نوى

مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت، ويُفضَّل أن تكون مزوّدة بوحدة تخزين SSD في الخلفية، وتدعم 1000 عملية إدخال/إخراج في الثانية أو أكثر، أو يمكنك استخدام القاعدة الواردة في الجدول أعلاه.

إحصاءات - Postgres مستقل

16 غيغابايت

8 نوى

مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت، ويُفضَّل أن تكون مزوّدة بوحدة تخزين SSD في الخلفية، وتدعم 1000 عملية إدخال/إخراج في الثانية أو أكثر، أو يمكنك استخدام القاعدة الواردة في الجدول أعلاه.

Analytics - Qpid standalone

‫8 غيغابايت

‫4 نوى

مساحة تخزين محلية تتراوح بين 40 غيغابايت و500 غيغابايت مع محرك أقراص ذي حالة صلبة (SSD) أو محرك أقراص ثابتة (HDD) سريع
بالنسبة إلى عمليات التثبيت التي تزيد عن 250 معاملة في الثانية، يُنصح باستخدام محرك أقراص ثابتة (HDD) مع مساحة تخزين محلية تتيح 1000 عملية إدخال/إخراج في الثانية.

في ما يلي متطلبات الأجهزة إذا أردت تثبيت API BaaS:

مكوّن واجهة برمجة التطبيقات BaaS

ذاكرة الوصول العشوائي (RAM)

وحدة المعالجة المركزية

القرص الثابت

ElasticSearch*‎

‫8 غيغابايت

‫4 نوى

من 60 إلى 80 غيغابايت

API BaaS Stack *

‫8 غيغابايت

‫4 نوى

من 60 إلى 80 غيغابايت

بوابة API BaaS

1 غيغابايت

نواة مزدوجة

‫20 غيغابايت

‫Cassandra (اختياري: عادةً ما تستخدم مجموعة Cassandra نفسها لكل من خدمات Edge وAPI BaaS)

16 غيغابايت

8 نوى

مساحة تخزين محلية تبلغ 250 غيغابايت مع محرك أقراص ذي حالة صلبة (SSD) أو محرك أقراص ثابتة (HDD) سريع يتيح 2000 عملية إدخال/إخراج في الثانية

* يمكنك تثبيت ElasticSearch وAPI BaaS Stack على العقدة نفسها. في حال استخدامها، اضبط ElasticSearch لاستخدام 4 غيغابايت من الذاكرة (الإعداد التلقائي). إذا كان ElasticSearch مثبّتًا على عقدة خاصة به، اضبطه لاستخدام 6 غيغابايت من الذاكرة.

ملاحظة:

  • إذا لم يكن نظام الملفات الجذر كبيرًا بما يكفي للتثبيت، ننصحك بوضع البيانات على قرص أكبر.
  • في حال تثبيت إصدار قديم من Apigee Edge for Private Cloud على الجهاز، تأكَّد من حذف المجلد ‎/tmp/java قبل إجراء عملية تثبيت جديدة.
  • يحتاج المجلد المؤقت على مستوى النظام /tmp إلى أذونات تنفيذ من أجل بدء Cassandra.
  • إذا تم إنشاء المستخدم "apigee" قبل التثبيت، تأكَّد من أنّ "/home/apigee" متوفّر كدليل رئيسي وأنّه مملوك من قِبل "apigee:apigee".

متطلبات نظام التشغيل والبرامج الخارجية

تم اختبار تعليمات التثبيت هذه وملفات التثبيت المرفقة على أنظمة التشغيل والبرامج الخارجية المدرَجة هنا: https://apigee.com/docs/api-services/reference/supported-software.

جارٍ إنشاء مستخدم Apigee

تنشئ عملية التثبيت مستخدمًا لنظام Unix باسم "apigee". وتكون أدلة وملفات Edge مملوكة لـ "apigee"، وكذلك عمليات Edge. يعني ذلك أنّ مكوّنات Edge تعمل كمستخدم "apigee". ويمكنك تشغيل المكوّنات كمستخدم مختلف إذا لزم الأمر. يمكنك الاطّلاع على "ربط جهاز التوجيه بمنفذ محمي" في تثبيت مكوّنات Edge على عقدة للحصول على مثال.

دليل التثبيت

تكتب أداة التثبيت تلقائيًا جميع الملفات في الدليل /opt/apigee. ولا يمكنك تغيير موقع هذا الدليل. على الرغم من أنّه لا يمكنك تغيير هذا الدليل، يمكنك إنشاء رابط رمزي لربط /opt/apigee بموقع آخر، كما هو موضّح أدناه.

في التعليمات الواردة في هذا الدليل، يُشار إلى دليل التثبيت باسم /<inst_root>/apigee، حيث يكون /<inst_root> هو /opt تلقائيًا.

جارٍ إنشاء رابط رمزي من /opt/apigee

قبل إنشاء الرابط الرمزي، عليك أولاً إنشاء مستخدم ومجموعة باسم "apigee". وهذه هي المجموعة والمستخدم نفسهما اللذان تم إنشاؤهما بواسطة أداة تثبيت Edge.

لإنشاء الرابط الرمزي، اتّبِع الخطوات التالية قبل تنزيل ملف bootstrap_4.17.01.sh. يجب تنفيذ جميع هذه الخطوات بصفتك مستخدمًا جذرًا:

  1. أنشئ المستخدم والمجموعة "apigee":
    > groupadd -r apigee
    > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
  2. أنشئ رابطًا رمزيًا من ‎/opt/apigee إلى جذر التثبيت المطلوب:
    > ln -Ts /srv/myInstallDir /opt/apigee
    حيث يكون ‎/srv/myInstallDir هو الموقع المطلوب لملفات Edge.
  3. غيِّر ملكية جذر التثبيت والرابط الرمزي إلى مستخدم "apigee":
    > chown -h apigee:apigee /srv/myInstallDir /opt/apigee

جافا

يجب تثبيت إصدار متوافق من Java1.8 على كل جهاز قبل التثبيت. في ما يلي قائمة بإصدارات JDK المتوافقة:

https://apigee.com/docs/api-services/reference/supported-software

تأكَّد من أنّ JAVA_HOME يشير إلى جذر حزمة تطوير البرامج (JDK) للمستخدم الذي يُجري عملية التثبيت.

SELinux

وفقًا لإعدادات SELinux، قد يواجه Edge مشاكل في تثبيت مكوّنات Edge وبدء تشغيلها. If necessary, you can disable SELinux or set it to permissive mode during installation, and then re-enabling it after installation. لمزيد من المعلومات، يُرجى الاطّلاع على تثبيت أداة apigee-setup في Edge.

إعدادات الشبكة

ننصحك بالتحقّق من إعدادات الشبكة قبل التثبيت. يتوقع برنامج التثبيت أن تكون جميع الأجهزة لها عناوين IP ثابتة. استخدِم الأوامر التالية للتحقّق من صحة الإعداد:

  • hostname: لعرض اسم الجهاز
  • يعرض الأمر hostname -i عنوان IP لاسم المضيف الذي يمكن الوصول إليه من الأجهزة الأخرى.

استنادًا إلى نوع نظام التشغيل وإصداره، قد تحتاج إلى تعديل /etc/hosts و/etc/sysconfig/network إذا لم يتم ضبط اسم المضيف بشكل صحيح. لمزيد من المعلومات، يُرجى الاطّلاع على المستندات الخاصة بنظام التشغيل الذي تستخدمه.

برامج تضمين TCP

يمكن أن تحظر برامج تضمين TCP الاتصال ببعض المنافذ، ويمكن أن تؤثر في تثبيت OpenLDAP وPostgres وCassandra. في هذه العُقد، تحقَّق من /etc/hosts.allow و/etc/hosts.deny للتأكّد من عدم وجود قيود على منافذ OpenLDAP وPostgres وCassandra المطلوبة.

iptables

تأكَّد من عدم وجود سياسات iptables تمنع إمكانية الاتصال بين العُقد على منافذ Edge المطلوبة. إذا لزم الأمر، يمكنك إيقاف iptables أثناء التثبيت باستخدام الأمر:

> sudo /etc/init.d/iptables stop

على CentOS 7.x:

> systemctl stop firewalld

التأكّد من أنّ Edge Router يمكنه الوصول إلى ‎ /etc/rc.d/init.d/functions

تستخدم عُقد Edge Router وBaaS Portal جهاز توجيه Nginx وتتطلّب إذن الوصول للقراءة إلى /etc/rc.d/init.d/functions.

إذا كانت عملية الأمان تتطلّب منك ضبط الأذونات على /etc/rc.d/init.d/functions، لا تضبطها على 700 وإلا سيتعذّر بدء تشغيل جهاز التوجيه. يمكن ضبط الأذونات على 744 للسماح بالوصول للقراءة إلى /etc/rc.d/init.d/functions.

Cassandra

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

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

بعد تثبيت Edge for Private Cloud، يمكنك التحقّق من ضبط Cassandra بشكل صحيح من خلال فحص ملف /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml. على سبيل المثال، تأكَّد من أنّ النص البرمجي لتثبيت Edge for Private Cloud يضبط السمات التالية:

  • cluster_name
  • initial_token
  • partitioner
  • بذور
  • listen_address
  • rpc_address
  • snitch

تحذير: لا تعدِّل هذا الملف.

قاعدة بيانات PostgreSQL

بعد تثبيت Edge، يمكنك ضبط إعدادات قاعدة بيانات PostgreSQL التالية استنادًا إلى مقدار ذاكرة الوصول العشوائي (RAM) المتاحة على نظامك:

conf_postgresql_shared_buffers = 35% of RAM      # min 128kB
conf_postgresql_effective_cache_size = 45% of RAM
conf_postgresql_work_mem = 512MB       # min 64kB

لضبط هذه القيم، اتّبِع الخطوات التالية:

  1. عدِّل postgresql.properties:
    > vi /<inst_root>/apigee/customer/application/postgresql.properties

    إذا لم يكن الملف متوفّرًا، أنشِئه.
  2. اضبط السمات المذكورة أعلاه.
  3. احفظ التعديلات.
  4. أعِد تشغيل قاعدة بيانات PostgreSQL:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

حدود النظام

تأكَّد من ضبط حدود النظام التالية على عُقد Cassandra و"معالج الرسائل":

  • في عُقد Cassandra، اضبط حدود memlock وnofile ومساحة العنوان (as) اللينة والصلبة لمستخدم التثبيت (الإعداد التلقائي هو "apigee") في /etc/security/limits.d/90-apigee-edge-limits.conf كما هو موضّح أدناه:
    apigee soft memlock unlimited
    apigee hard memlock unlimited
    apigee soft nofile 32768
    apigee hard nofile 65536
    apigee soft as unlimited
    apigee hard as unlimited

  • في عُقد معالج الرسائل، اضبط الحد الأقصى لعدد واصفات الملفات المفتوحة على 64 ألفًا في /etc/security/limits.d/90-apigee-edge-limits.conf كما هو موضّح أدناه:
    apigee soft nofile 32768
    apigee hard nofile 65536


    يمكنك رفع هذا الحدّ إذا لزم الأمر. على سبيل المثال، إذا كان لديك عدد كبير من الملفات المؤقتة المفتوحة في وقت واحد.

jsvc

"jsvc" هو شرط أساسي لاستخدام API BaaS. يتم تثبيت الإصدار 1.0.15-dev عند تثبيت API BaaS.

خدمات أمان الشبكة (NSS)

&quot;خدمات أمان الشبكة&quot; (NSS) هي مجموعة من المكتبات التي تتيح تطوير تطبيقات العميل والخادم المزوّدة بميزات الأمان. يجب التأكّد من تثبيت الإصدار 3.19 من NSS أو إصدار أحدث.

للتحقّق من الإصدار الحالي:

> yum info nss

لتحديث NSS:

> yum update nss

لمزيد من المعلومات، يُرجى الاطّلاع على هذه المقالة من RedHat.

إيقاف بحث نظام أسماء النطاقات على IPv6 عند استخدام NSCD (برنامج Name Service Cache Daemon)

إذا كنت قد ثبّتّ NSCD (برنامج Name Service Cache Daemon) وفعّلته، ستُجري معالجات الرسائل عمليتَي بحث في نظام أسماء النطاقات: واحدة لـ IPv4 والأخرى لـ IPv6. يجب إيقاف بحث نظام أسماء النطاقات على IPv6 عند استخدام NSCD.

لإيقاف بحث نظام أسماء النطاقات على الإصدار السادس من بروتوكول الإنترنت (IPv6)، اتّبِع الخطوات التالية:

  1. في كل عقدة من عقد معالج الرسائل، عدِّل /etc/nscd.conf
  2. اضبط السمة التالية:
    enable-cache hosts no

إيقاف IPv6 على Google Cloud Platform لنظام التشغيل RedHat/CentOS 7

إذا كنت بصدد تثبيت Edge على RedHat 7 أو CentOS 7 على Google Cloud Platform، عليك إيقاف IPv6 على جميع عُقد Qpid.

يمكنك الاطّلاع على مستندات RedHat أو CentOS لإصدار نظام التشغيل المحدّد للحصول على تعليمات حول إيقاف IPv6.

AWS AMI

إذا كنت بصدد تثبيت Edge على صورة جهاز Amazon Machine Image (AMI) في AWS لنظام التشغيل Red Hat Enterprise Linux 7.x، عليك أولاً تنفيذ الأمر التالي:

> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

الأدوات

يستخدم برنامج التثبيت أدوات UNIX التالية في الإصدار العادي كما هو مقدَّم من EL5 أو EL6.

awk

expr

lua-socket

دورة في الدقيقة

فك الضغط

basename

grep

ls

rpm2cpio

useradd

bash

اسم المضيف

net-tools

sed

wc

bc

id

perl (من procps)

sudo

wget

curl

libaio

pgrep (من procps)

tar

xerces-c

cyrus-sasl
libdb-cxx
ps tr لذيذ

التاريخ

libibverbs

pwd

uuid

chkconfig

dirname
librdmacm
python uname
echo
libxslt

ملاحظة:

  • يتوفّر الملف التنفيذي للأداة useradd في ‎/usr/sbin وللأداة chkconfig في ‎/sbin.
  • باستخدام إذن الوصول sudo، يمكنك الوصول إلى بيئة المستخدم الذي يجري المكالمة، على سبيل المثال، يمكنك عادةً الاتصال بـ "sudo <command>" أو "sudo PATH=$PATH:/usr/sbin:/sbin <command>".
  • تأكَّد من تثبيت أداة "التصحيح" قبل تثبيت حزمة الخدمة (التصحيح).

‫ntpdate: يُنصح بمزامنة وقت الخوادم. إذا لم يتم ضبطها من قبل، يمكن أن تخدم أداة "ntpdate" هذا الغرض، والتي تتحقق مما إذا كانت الخوادم متزامنة مع الوقت. يمكنك استخدام الأمر "yum install ntp" لتثبيت الأداة المساعدة. ويُعدّ ذلك مفيدًا بشكل خاص لتكرار إعدادات OpenLDAP. يُرجى العِلم أنّه يتم ضبط المنطقة الزمنية للخادم على التوقيت العالمي المتفق عليه (UTC).

‫openldap 2.4: يتطلّب التثبيت داخل المؤسسة الإصدار 2.4 من OpenLDAP. إذا كان الخادم متصلاً بالإنترنت، سيتم تنزيل وتثبيت OpenLDAP من خلال نص Edge البرمجي للتثبيت. إذا لم يكن الخادم متصلاً بالإنترنت، عليك التأكّد من أنّ OpenLDAP مثبَّت قبل تشغيل نص Edge البرمجي للتثبيت. على نظام التشغيل RHEL/CentOS، يمكنك تشغيل "yum install openldap-clients openldap-servers" لتثبيت OpenLDAP.

بالنسبة إلى عمليات التثبيت التي تتضمّن 13 مضيفًا وعمليات التثبيت التي تتضمّن 12 مضيفًا مع مركزَي بيانات، عليك استخدام النسخ المتماثل لـ OpenLDAP لأنّ هناك عُقدًا متعددة تستضيف OpenLDAP.

جدران الحماية والأجهزة المضيفة الظاهرية

يتم استخدام المصطلح "افتراضي" بشكل مفرط في مجال تكنولوجيا المعلومات، وينطبق ذلك على عمليات نشر Apigee Edge for Private Cloud والمضيفين الافتراضيين. للتوضيح، هناك استخدامان أساسيان لمصطلح "افتراضي":

  • الأجهزة الافتراضية (VM): ليست مطلوبة، ولكن تستخدم بعض عمليات النشر تكنولوجيا الأجهزة الافتراضية لإنشاء خوادم معزولة لمكوّنات Apigee. يمكن أن تحتوي مضيفات الأجهزة الافتراضية، مثل المضيفات الفعلية، على واجهات شبكة وجدران حماية.
  • المضيفون الافتراضيون: نقاط نهاية الويب، مثل المضيف الافتراضي Apache

يمكن لجهاز توجيه في جهاز افتراضي عرض عدة مضيفين افتراضيين (طالما أنّهم يختلفون عن بعضهم البعض في الاسم المستعار للمضيف أو في منفذ الواجهة).

على سبيل المثال، قد يشغّل خادم فعلي واحد "أ" جهازَين افتراضيَين باسم "VM1" و"VM2". لنفترض أنّ VM1 يعرض واجهة إيثرنت افتراضية باسم eth0 داخل الجهاز الافتراضي، ويتم تخصيص عنوان IP‏ 111.111.111.111 لها من خلال جهاز المحاكاة الافتراضية أو خادم بروتوكول الإعداد الديناميكي للمضيف (DHCP) على الشبكة. لنفترض بعد ذلك أنّ VM2 يعرض واجهة إيثرنت افتراضية باسم eth0 أيضًا، ويتم تخصيص عنوان IP‏ 111.111.111.222 لها.

قد يكون لدينا موجّه Apigee يعمل في كل من الجهازين الافتراضيين. تعرض أجهزة التوجيه نقاط نهاية المضيف الافتراضي كما في هذا المثال الافتراضي:

يعرض موجّه Apigee في VM1 ثلاثة مضيفين افتراضيين على واجهة eth0 (التي تحتوي على عنوان IP محدّد)، وهم api.mycompany.com:80 وapi.mycompany.com:443 وtest.mycompany.com:80.

يعرض جهاز التوجيه في VM2‏ api.mycompany.com:80 (الاسم والمنفذ نفسهما اللذان يعرضهما VM1).

قد يحتوي نظام تشغيل المضيف الفعلي على جدار حماية للشبكة، وفي هذه الحالة، يجب ضبط جدار الحماية هذا للسماح بمرور زيارات بروتوكول TCP الموجّهة إلى المنافذ التي يتم عرضها على الواجهات الافتراضية (111.111.111.111:{80, 443} و111.111.111.222:80). بالإضافة إلى ذلك، قد يوفّر نظام التشغيل لكل جهاز افتراضي جدار حماية خاصًا به على واجهة eth0، ويجب أن تسمح هذه الجدران أيضًا باتصال حركة البيانات على المنفذين 80 و443.

المسار الأساسي هو المكوّن الثالث الذي يشارك في توجيه طلبات البيانات من واجهة برمجة التطبيقات إلى الخوادم الوكيلة المختلفة لواجهة برمجة التطبيقات التي قد تكون نشرتها. يمكن أن تشارك حِزم الخوادم الوكيلة لواجهة برمجة التطبيقات نقطة نهاية إذا كانت لها مسارات أساسية مختلفة. على سبيل المثال، يمكن تحديد مسار أساسي واحد على النحو التالي: http://api.mycompany.com:80/‎ وتحديد مسار آخر على النحو التالي: http://api.mycompany.com:80/salesdemo.

في هذه الحالة، تحتاج إلى جهاز موازنة الحمل أو موجّه زيارات من نوع ما لتقسيم زيارات http://api.mycompany.com:80/ بين عنوانَي IP (111.111.111.111 على الجهاز الافتراضي 1 و111.111.111.222 على الجهاز الافتراضي 2). هذه الوظيفة خاصة بعملية التثبيت المحددة، ويتم ضبطها من خلال مجموعة الشبكات المحلية.

يتم ضبط المسار الأساسي عند نشر واجهة برمجة تطبيقات. من المثال أعلاه، يمكنك نشر واجهتَي برمجة تطبيقات، mycompany وtestmycompany، للمؤسسة mycompany-org مع المضيف الافتراضي الذي يتضمّن الاسم المستعار للمضيف api.mycompany.com والمنفذ الذي تم ضبطه على 80. إذا لم تحدّد مسارًا أساسيًا في عملية النشر، لن يتمكّن جهاز التوجيه من معرفة واجهة برمجة التطبيقات التي يجب إرسال الطلبات الواردة إليها.

ومع ذلك، إذا نشرت واجهة برمجة التطبيقات testmycompany باستخدام الجزء الأساسي من عنوان URL ‎/salesdemo، سيتمكّن المستخدمون من الوصول إلى واجهة برمجة التطبيقات هذه باستخدام http://api.mycompany.com:80/salesdemo. إذا نشرت واجهة برمجة التطبيقات mycompany باستخدام الجزء الأساسي من عنوان URL ‏/، سيتمكّن المستخدمون من الوصول إلى واجهة برمجة التطبيقات من خلال عنوان URL ‏http://api.mycompany.com:80/.

متطلبات منفذ Edge

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

تعرض الصورة التالية متطلبات المنافذ لكل مكوّن من مكوّنات Edge:

ملاحظات حول هذا المخطّط البياني:

  • *يجب أن يكون المنفذ 8082 على "معالج الرسائل" مفتوحًا فقط للوصول إليه من خلال "الموجّه" عند ضبط بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) بين "الموجّه" و"معالج الرسائل". إذا لم تضبط بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL) بين "الموجّه" و"معالج الرسائل"، يجب أن يظل المنفذ 8082، وهو الإعداد التلقائي، مفتوحًا على "معالج الرسائل" لإدارة المكوّن، ولكن لا يحتاج "الموجّه" إلى الوصول إليه.
  • إنّ المنافذ التي تبدأ بالحرف "M" هي منافذ تُستخدَم لإدارة المكوّن ويجب أن تكون مفتوحة على المكوّن ليتمكّن خادم الإدارة من الوصول إليها.
  • تتطلّب المكوّنات التالية الوصول إلى المنفذ 8080 على خادم الإدارة: جهاز التوجيه ومعالج الرسائل وواجهة المستخدم وPostgres وQpid.
  • يجب أن يفتح معالج الرسائل المنفذ 4528 كمنفذ إدارة. إذا كان لديك عدة معالجات رسائل، يجب أن يتمكنوا جميعًا من الوصول إلى بعضهم البعض عبر المنفذ 4528 (يُشار إليه بسهم التكرار في المخطط البياني أعلاه للمنفذ 4528 في معالج الرسائل). إذا كان لديك عدة مراكز بيانات، يجب أن يكون المنفذ متاحًا من جميع معالجات الرسائل في جميع مراكز البيانات.
  • على الرغم من أنّ ذلك ليس مطلوبًا، يمكنك فتح المنفذ 4527 على جهاز التوجيه للوصول إليه من خلال أي معالج رسائل. وإلا، قد تظهر لك رسائل خطأ في ملفات سجلّ "معالج الرسائل".
  • يجب أن يفتح جهاز التوجيه المنفذ 4527 كمنفذ إدارة. إذا كان لديك عدة أجهزة توجيه، يجب أن يتمكّن كل منها من الوصول إلى الآخر عبر المنفذ 4527 (يُشار إليه بسهم الحلقة في المخطّط البياني أعلاه للمنفذ 4527 على جهاز التوجيه).
  • تتطلّب واجهة مستخدم Edge الوصول إلى جهاز التوجيه، على المنافذ التي تعرضها الخوادم الوكيلة لواجهة برمجة التطبيقات، لإتاحة الزر إرسال في أداة التتبُّع.
  • يتطلّب خادم الإدارة الوصول إلى منفذ JMX على عُقد Cassandra.
  • يمكن ضبط الوصول إلى منافذ JMX لطلب اسم مستخدم وكلمة مرور. لمزيد من المعلومات، يُرجى الاطّلاع على كيفية المراقبة.
  • يمكنك اختياريًا ضبط إمكانية الوصول إلى بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL) لاتصالات معيّنة يمكنها استخدام منافذ مختلفة. لمزيد من المعلومات، يُرجى الاطّلاع على بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL).
  • في حال ضبط عقدتَي Postgres لاستخدام النسخ المتماثل الرئيسي الاحتياطي، يجب فتح المنفذ 22 على كل عقدة للوصول إلى بروتوكول النقل الآمن (SSH). يمكنك فتح منافذ على عُقد فردية للسماح بالوصول عبر بروتوكول النقل الآمن (SSH).
  • يمكنك ضبط خادم الإدارة وواجهة مستخدم Edge لإرسال الرسائل الإلكترونية من خلال خادم SMTP خارجي. في هذه الحالة، عليك التأكّد من أنّ خادم الإدارة وواجهة المستخدم يمكنهما الوصول إلى المنفذ اللازم على خادم SMTP. بالنسبة إلى بروتوكول SMTP غير المتوافق مع بروتوكول أمان طبقة النقل (TLS)، يكون رقم المنفذ عادةً 25. بالنسبة إلى بروتوكول SMTP المفعَّل فيه بروتوكول أمان طبقة النقل (TLS)، غالبًا ما يكون المنفذ 465، ولكن يُرجى مراجعة مزوّد خدمة SMTP.

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

المكوّن

المنفذ

الوصف

منافذ HTTP العادية

80, 443

‫HTTP بالإضافة إلى أي منافذ أخرى تستخدمها للمضيفين الافتراضيين

خادم الإدارة

8080

المنفذ المخصّص لطلبات البيانات من واجهة برمجة التطبيقات لإدارة Edge تتطلّب هذه المكوّنات الوصول إلى المنفذ 8080 على خادم الإدارة: جهاز التوجيه ومعالج الرسائل وواجهة المستخدم وPostgres وQpid.

1099

منفذ JMX

4526

لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة

واجهة مستخدم الإدارة

9000

المنفذ الذي يتيح للمتصفّح الوصول إلى واجهة مستخدم الإدارة

معالِج الرسائل

8998

منفذ معالج الرسائل للاتصالات من جهاز التوجيه

8082

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

في حال ضبط بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) بين "الموجّه" و"معالج الرسائل"، يستخدمه "الموجّه" لإجراء عمليات التحقّق من السلامة في "معالج الرسائل".

1101

منفذ JMX

4528

لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة بين معالجات الرسائل، وللاتصال من جهاز التوجيه

جهاز التوجيه

8081

منفذ الإدارة التلقائي لـ "الموجّه" ويجب أن يكون مفتوحًا على المكوّن ليتمكّن "خادم الإدارة" من الوصول إليه.

4527

لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة

15999

منفذ التحقّق من الصحة يستخدم جهاز موازنة الحمل هذا المنفذ لتحديد ما إذا كان جهاز التوجيه متاحًا.

لمعرفة حالة جهاز توجيه، يرسل جهاز موازنة الحمل طلبًا إلى المنفذ 15999 على جهاز التوجيه:

> curl -v http://<routerIP>:15999/v1/servers/self/reachable

إذا كان من الممكن الوصول إلى جهاز التوجيه، يعرض الطلب HTTP 200.

59001

المنفذ المستخدَم لاختبار تثبيت Edge من خلال الأداة المساعدة apigee-validate تتطلّب هذه الأداة المساعدة الوصول إلى المنفذ 59001 على جهاز التوجيه. لمزيد من المعلومات عن المنفذ 59001، يُرجى الاطّلاع على اختبار التثبيت.

ZooKeeper

2181

تستخدمه المكوّنات الأخرى، مثل خادم الإدارة وجهاز التوجيه ومعالج الرسائل وما إلى ذلك

‫2888 و3888

يستخدمه ZooKeeper داخليًا للتواصل مع مجموعة ZooKeeper (المعروفة باسم مجموعة ZooKeeper)

Cassandra

7000, 9042, 9160

منافذ Apache Cassandra للتواصل بين عُقد Cassandra والوصول إليها من خلال مكوّنات Edge الأخرى

7199

منفذ JMX يجب أن يكون مفتوحًا للوصول إليه من خلال خادم الإدارة.

Qpid

5672

يُستخدَم للاتصالات من جهاز التوجيه ومعالج الرسائل إلى خادم Qpid

8083

منفذ الإدارة التلقائي على خادم Qpid ويجب أن يكون مفتوحًا على المكوّن للوصول إليه من خلال خادم الإدارة.

1102

منفذ JMX

4529

لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة

Postgres

5432

يُستخدَم للاتصال من Qpid/خادم الإدارة إلى Postgres

8084

منفذ الإدارة التلقائي على خادم Postgres ويجب أن يكون مفتوحًا على المكوّن للوصول إليه من خلال خادم الإدارة.

1103

منفذ JMX

4530

لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة

22

في حال ضبط عقدتَي Postgres لاستخدام النسخ المتماثل الرئيسي الاحتياطي، يجب فتح المنفذ 22 على كل عقدة للوصول إلى بروتوكول النقل الآمن (SSH).

LDAP

10389

OpenLDAP

SmartDocs

59002

المنفذ على جهاز توجيه Edge الذي يتم إرسال طلبات صفحة SmartDocs إليه.

يعرض الجدول التالي المنافذ نفسها، مدرَجة عدديًا، مع مكوّنات المصدر والوجهة:

رقم المنفذ

الغرض

المكوّن المصدر

مكوّن الوجهة

<virtual host port#>

‫HTTP بالإضافة إلى أي منافذ أخرى تستخدمها لزيارات طلبات البيانات من واجهة برمجة التطبيقات للمضيف الافتراضي. يُعدّ المنفذان 80 و443 الأكثر استخدامًا، ويمكن لبرنامج &quot;موجِّه الرسائل&quot; إنهاء اتصالات بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL).

العميل الخارجي (أو جهاز موازنة الحمل)

Listener on Message Router

من 1099 إلى 1103

إدارة JMX

برنامج JMX

خادم الإدارة (1099)

معالج الرسائل (1101)

خادم Qpid‏ (1102)

خادم Postgres‏ (1103)

2181

اتصال عميل Zookeeper

خادم الإدارة

جهاز التوجيه

معالج الرسائل

خادم Qpid

خادم Postgres

حارس حديقة حيوانات

‫2888 و3888

إدارة العُقد الداخلية في Zookeeper

حارس حديقة حيوانات

حارس حديقة حيوانات

4526

منفذ إدارة RPC

خادم الإدارة

خادم الإدارة

4527 منفذ إدارة RPC لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة وللاتصالات بين أجهزة التوجيه

خادم الإدارة

جهاز التوجيه

جهاز التوجيه

4528

لمكالمات ذاكرة التخزين المؤقت الموزّعة بين معالجات الرسائل وللاتصال من جهاز التوجيه

خادم الإدارة

جهاز التوجيه

معالج الرسائل

معالج الرسائل

4529 منفذ إدارة RPC لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة خادم الإدارة خادم Qpid
4530 منفذ إدارة RPC لذاكرة التخزين المؤقت الموزّعة ومكالمات الإدارة خادم الإدارة خادم Postgres

5432

عميل Postgres

خادم Qpid

Postgres

5672

يُستخدَم لإرسال الإحصاءات من "الموجّه" و"معالج الرسائل" إلى Qpid

جهاز التوجيه

معالج الرسائل

خادم Qpid

7000

اتصالات Cassandra بين العُقد

Cassandra

عقدة Cassandra أخرى

7199

إدارة JMX يجب أن يكون مفتوحًا للوصول إلى عقدة Cassandra من خلال خادم الإدارة.

عميل JMX

Cassandra

8080

منفذ Management API

عملاء Management API

خادم الإدارة

من 8081 إلى 8084

منافذ واجهة برمجة التطبيقات للمكوّنات، وتُستخدَم لإصدار طلبات بيانات من واجهة برمجة التطبيقات مباشرةً إلى مكوّنات فردية يفتح كل مكوّن منفذًا مختلفًا، ويعتمد المنفذ الدقيق المستخدَم على الإعدادات ولكن يجب أن يكون مفتوحًا على المكوّن ليتمكّن خادم الإدارة من الوصول إليه

عملاء Management API

جهاز التوجيه (8081)

معالج الرسائل (8082)

خادم Qpid‏ (8083)

خادم Postgres ‏ (8084)

8998

التواصل بين الموجّه ومعالج الرسائل

جهاز التوجيه

معالج الرسائل

9000

منفذ واجهة مستخدم إدارة Edge التلقائي

المتصفح

خادم واجهة مستخدم الإدارة

9042

النقل الأصلي لـ CQL

جهاز التوجيه

معالج الرسائل

خادم الإدارة

Cassandra

9160

عميل Cassandra thrift

جهاز التوجيه

معالج الرسائل

خادم الإدارة

Cassandra

10389

منفذ LDAP

خادم الإدارة

OpenLDAP

15999

منفذ التحقّق من الصحة يستخدم جهاز موازنة الحمل هذا المنفذ لتحديد ما إذا كان جهاز التوجيه متاحًا.

جهاز موازنة الحمل جهاز التوجيه
59001 المنفذ الذي تستخدمه الأداة المساعدة apigee-validate لاختبار تثبيت Edge apigee-validate جهاز التوجيه

59002

منفذ جهاز التوجيه الذي يتم إرسال طلبات صفحة SmartDocs إليه

SmartDocs

جهاز التوجيه

يُبقي معالج الرسائل مجموعة مخصّصة من الاتصالات مفتوحة مع Cassandra، والتي تم ضبطها على عدم انتهاء المهلة أبدًا. عندما يكون جدار الحماية بين معالج الرسائل وخادم Cassandra، يمكن أن ينهي جدار الحماية الاتصال. ومع ذلك، لم يتم تصميم معالج الرسائل لإعادة إنشاء الاتصالات بـ Cassandra.

لتجنُّب هذا الموقف، تنصح Apigee بأن يكون خادم Cassandra ومعالج الرسائل وأجهزة التوجيه في الشبكة الفرعية نفسها حتى لا يشارك جدار الحماية في نشر هذه المكوّنات.

إذا كان هناك جدار حماية بين جهاز التوجيه ومعالِجات الرسائل، وتم ضبط مهلة TCP غير نشطة، ننصحك بما يلي:

  1. اضبط net.ipv4.tcp_keepalive_time = 1800 في إعدادات sysctl على نظام التشغيل Linux، حيث يجب أن تكون القيمة 1800 أقل من مهلة tcp الخاملة لجدار الحماية. يجب أن يحافظ هذا الإعداد على الاتصال في حالة ثابتة حتى لا يفصل جدار الحماية الاتصال.
  2. في جميع معالِجات الرسائل، عدِّل /<inst_root>/apigee/customer/application/message-processor.properties لإضافة السمة التالية. إذا لم يكن الملف متوفّرًا، أنشِئه.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. أعِد تشغيل معالج الرسائل:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. في جميع أجهزة التوجيه، عدِّل /<inst_root>/apigee/customer/application/router.properties لإضافة السمة التالية. إذا لم يكن الملف متوفّرًا، أنشِئه.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. أعِد تشغيل جهاز التوجيه:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart

في حال تثبيت الإعداد العنقودي المكوّن من 12 مضيفًا مع مركزَي بيانات، تأكَّد من أنّ العُقد في مركزَي البيانات يمكنها الاتصال عبر المنافذ الموضّحة أدناه:

متطلبات منفذ API BaaS

إذا اخترت تثبيت واجهة برمجة التطبيقات BaaS، يمكنك إضافة مكوّنات حزمة واجهة برمجة التطبيقات BaaS وبوابة واجهة برمجة التطبيقات BaaS. تستخدم هذه المكوّنات المنافذ الموضّحة في الشكل أدناه:

ملاحظات حول هذا المخطّط البياني:

  • لا ترسل بوابة API BaaS طلبات مباشرةً إلى عقدة BaaS Stack. عندما يسجّل المطوّر الدخول إلى &quot;البوابة&quot;، يتم تنزيل تطبيق &quot;البوابة&quot; على المتصفّح. بعد ذلك، يرسل تطبيق Portal الذي يعمل في المتصفّح طلبات إلى عُقد BaaS Stack.
  • يستخدم تثبيت الإنتاج في API BaaS جهاز موازنة الحمل بين عقدة بوابة API BaaS وعقد حزمة API BaaS. عند ضبط &quot;البوابة&quot; وإجراء طلبات بيانات من واجهة برمجة التطبيقات في BaaS، عليك تحديد عنوان IP أو اسم نظام أسماء النطاقات لجهاز موازنة الحمل، وليس لعُقد Stack.
  • يجب أن تفتح جميع عُقد Stack المنفذ 2551 للوصول من جميع عُقد Stack الأخرى (يُشار إليها بسهم التكرار في المخطّط البياني أعلاه للمنفذ 2551 على عُقد Stack). إذا كانت لديك عدة مراكز بيانات، يجب أن يكون المنفذ متاحًا من جميع عُقد Stack في جميع مراكز البيانات.
  • يجب ضبط جميع عُقد Baas Stack لإرسال الرسائل الإلكترونية من خلال خادم SMTP خارجي. بالنسبة إلى بروتوكول SMTP غير المتوافق مع بروتوكول أمان طبقة النقل (TLS)، يكون رقم المنفذ عادةً 25. بالنسبة إلى بروتوكول SMTP المفعَّل فيه بروتوكول أمان طبقة النقل (TLS)، غالبًا ما يكون المنفذ 465، ولكن يُرجى مراجعة مقدّم خدمة SMTP.
  • يمكن تخصيص عُقد Cassandra لـ API BaaS، أو يمكن مشاركتها مع Edge.

يعرض الجدول أدناه المنافذ التلقائية التي يجب فتحها في جدران الحماية، حسب المكوّن:

المكوّن

المنفذ

الوصف

API BaaS Portal

9000

منفذ واجهة مستخدم API BaaS

API BaaS Stack

8080

المنفذ الذي يتم تلقّي طلبات البيانات من واجهة برمجة التطبيقات عليه

2551

منفذ للتواصل بين جميع نقاط Stack يجب أن يكون من الممكن الوصول إليه من خلال جميع عُقد Stack الأخرى في مركز البيانات.

إذا كانت لديك عدة مراكز بيانات، يجب أن يكون المنفذ متاحًا من جميع عُقد Stack في جميع مراكز البيانات.

ElasticSearch

من 9200 إلى 9400

للتواصل مع حزمة API BaaS وللتواصل بين عُقد ElasticSearch

الترخيص

يتطلّب كل تثبيت لـ Edge ملف ترخيص فريدًا تحصل عليه من Apigee. يجب تقديم المسار إلى ملف الترخيص عند تثبيت خادم الإدارة، على سبيل المثال /tmp/license.txt.

ينسخ المثبِّت ملف الترخيص إلى /<inst_root>/apigee/customer/conf/license.txt.

إذا كان ملف الترخيص صالحًا، يتحقّق خادم الإدارة من تاريخ انتهاء الصلاحية وعدد معالجات الرسائل (MP) المسموح بها. إذا انتهت صلاحية أي من إعدادات الترخيص، يمكنك العثور على السجلّات في الموقع التالي: /<inst_root>/apigee/var/log/edge-management-server/logs. في هذه الحالة، يمكنك التواصل مع فريق دعم Apigee للحصول على تفاصيل حول عملية نقل البيانات.

إذا لم يكن لديك ترخيص بعد، يُرجى التواصل مع فريق المبيعات هنا.