Edge for Private Cloud الإصدار 4.18.01
متطلبات الأجهزة
يجب استيفاء الحدّ الأدنى من متطلبات الأجهزة التالية للحصول على بنية أساسية عالية التوفّر في بيئة ذات مستوى إنتاج. في جميع سيناريوهات التثبيت الموضّحة في طُرق التثبيت، تعرض الجداول التالية الحد الأدنى من متطلبات الأجهزة لمكوّنات التثبيت.
في هذه الجداول، تكون متطلبات القرص الصلب بالإضافة إلى مساحة القرص الصلب التي يتطلبها نظام التشغيل. استنادًا إلى تطبيقاتك وحركة بيانات الشبكة، قد يتطلّب التثبيت موارد أكثر أو أقل من الموارد المدرَجة أدناه.
| مكوّن التثبيت | ذاكرة الوصول العشوائي (RAM) | وحدة معالجة مركزية (CPU) | الحدّ الأدنى من مساحة القرص الصلب |
|---|---|---|---|
| Cassandra | 16 غيغابايت | 8 نوى | مساحة تخزين محلية تبلغ 250 غيغابايت مع محرك أقراص ذو حالة صلبة (SSD) أو محرك أقراص ثابت (HDD) سريع يتيح 2,000 عملية إدخال وإخراج في الثانية |
| معالج الرسائل/الموجّه على الجهاز نفسه | 16 غيغابايت | 8 نوى | 100 غيغابايت |
| إحصاءات Google - Postgres/Qpid على الخادم نفسه (لا يُنصح به في بيئة الإنتاج) | 16 غيغابايت* | 8‑core* | مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت*****، ويُفضّل أن تكون مزوّدة بنظام SSD، مع إمكانية إجراء 1,000 عملية إدخال/إخراج في الثانية أو أكثر* |
| الإحصاءات - Postgres المستقل | 16 غيغابايت* | 8 نوى* | مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت*****، ويُفضّل أن تكون مزوّدة بنظام SSD، مع إمكانية إجراء 1,000 عملية إدخال/إخراج في الثانية أو أكثر* |
| الإحصاءات - Qpid المستقل | 8 غيغابايت | 4 نوى | مساحة تخزين محلية تتراوح بين 30 و50 غيغابايت مع محرك أقراص ذو حالة صلبة (SSD) أو محرك أقراص ثابت (HDD) سريع
بالنسبة إلى عمليات التثبيت التي تزيد عن 250 معاملة في الثانية، يُنصح باستخدام قرص ثابت (HDD) مع مساحة تخزين محلية تتوافق مع 1000 عملية إدخال/إخراج في الثانية. حجم قائمة انتظار Qpid التلقائي هو 20 غيغابايت. إذا كنت بحاجة إلى إضافة المزيد من السعة، أضِف عقد Qpid إضافية. |
| أخرى (OpenLDAP وواجهة المستخدم وخادم الإدارة) | 4 غيغابايت | نواة مزدوجة | 60 غيغابايت |
* تعديل متطلبات نظام Postgres استنادًا إلى معدل النقل:
- أقل من 250 معاملة في الثانية: يمكن استخدام 8 غيغابايت و4 أنوية مع مساحة تخزين*** على الشبكة المُدارة تتيح 1, 000 عملية إدخال/إخراج في الثانية أو أكثر
- أكثر من 250 معاملة في الثانية: ذاكرة وصول عشوائي بسعة 16 غيغابايت، و8 نوى، ومساحة تخزين مُدارة على الشبكة*** تتيح 1,000 عملية إدخال/إخراج في الثانية أو أكثر
- أكثر من 1, 000 معاملة في الثانية: 16 غيغابايت، و8 أنوية، ومساحة تخزين مُدارة على الشبكة*** تتيح 2, 000 عملية إدخال/إخراج في الثانية أو أكثر
- أكثر من 2, 000 معاملة في الثانية: 32 غيغابايت، و16 وحدة معالجة مركزية، ومساحة تخزين مُدارة على الشبكة*** تتيح 2, 000 عملية إدخال/إخراج في الثانية أو أكثر
- أكثر من 4, 000 معاملة في الثانية: 64 غيغابايت، و32 وحدة معالجة مركزية، ومساحة تخزين مُدارة على الشبكة*** تتيح 4, 000 عملية إدخال/إخراج في الثانية أو أكثر
** تستند قيمة القرص الصلب في Postgres إلى الإحصاءات الجاهزة للاستخدام التي يسجّلها Edge. في حال إضافة قيم مخصّصة إلى بيانات الإحصاءات، يجب زيادة هذه القيم وفقًا لذلك. استخدِم الصيغة التالية لتقدير مساحة التخزين المطلوبة:
bytes of storage needed =
(# bytes of analytics data/request) *
(requests/second) *
(seconds/hour) *
(hours of peak usage/day) *
(days/month) *
(months of data retention)
على سبيل المثال:
(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)
= 1,194,393,600,000 bytes or 1194.4 GB
*** يُنصح باستخدام مساحة تخزين على الشبكة لقاعدة بيانات Postgresql للأسباب التالية:
- تتيح هذه السمة إمكانية زيادة حجم مساحة التخزين بشكل ديناميكي عند الحاجة.
- يمكن تعديل عمليات الإدخال/الإخراج في الثانية للشبكة أثناء التنفيذ في معظم الأنظمة الفرعية للبيئة/التخزين/الشبكة الحالية.
- يمكن تفعيل اللقطات على مستوى التخزين كجزء من حلول الاحتفاظ بنسخة احتياطية والاسترداد.
بالإضافة إلى ذلك، تعرض القائمة التالية متطلبات الأجهزة إذا كنت تريد تثبيت "خدمات تحقيق الربح":
| المكوّن الذي يتضمّن ميزة تحقيق الربح | ذاكرة الوصول العشوائي (RAM) | وحدة معالجة مركزية (CPU) | القرص الصلب |
|---|---|---|---|
| خادم الإدارة (مع خدمات تحقيق الربح) | 8 غيغابايت | معالج رباعي النواة | 60 غيغابايت |
| إحصاءات Google - Postgres/Qpid على الخادم نفسه | 16 غيغابايت | 8 نوى | مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت، ويُفضّل أن تكون مزوّدة بخادم خلفي مزوّد بقرص SSD، وأن تتوافق مع 1,000 عملية إدخال/إخراج في الثانية أو أكثر، أو استخدِم القاعدة من الجدول أعلاه. |
| الإحصاءات - Postgres المستقل | 16 غيغابايت | 8 نوى | مساحة تخزين على الشبكة تتراوح بين 500 غيغابايت و1 تيرابايت، ويُفضّل أن تكون مزوّدة بخادم خلفي مزوّد بقرص SSD، وأن تتوافق مع 1,000 عملية إدخال/إخراج في الثانية أو أكثر، أو استخدِم القاعدة من الجدول أعلاه. |
| الإحصاءات - Qpid المستقل | 8 غيغابايت | 4 نوى | مساحة تخزين محلية تتراوح بين 40 غيغابايت و500 غيغابايت مع محرك أقراص ذو حالة صلبة (SSD) أو محرك أقراص ثابتة (HDD) سريع
بالنسبة إلى عمليات التثبيت التي تزيد عن 250 معاملة في الثانية، يُنصح باستخدام قرص ثابت (HDD) مع مساحة تخزين محلية تتوافق مع 1000 عملية إدخال/إخراج في الثانية. |
في ما يلي قائمة بمتطلبات الأجهزة إذا كنت تريد تثبيت API BaaS:
| مكوّن BaaS لواجهة برمجة التطبيقات | ذاكرة الوصول العشوائي (RAM) | وحدة معالجة مركزية (CPU) | القرص الصلب |
|---|---|---|---|
| ElasticSearch* | 8 غيغابايت | معالج رباعي النواة | 60-80 غيغابايت |
| حزمة BaaS API* | 8 غيغابايت | 4 نوى | 60-80 غيغابايت |
| API BaaS Portal | 1 غيغابايت | نواة مزدوجة | 20 غيغابايت |
| Cassandra** | 16 غيغابايت | 8 نوى | مساحة تخزين محلية تبلغ 250 غيغابايت مع محرك أقراص ذو حالة صلبة (SSD) أو محرك أقراص ثابت (HDD) سريع يتيح 2,000 عملية إدخال وإخراج في الثانية |
* يمكنك تثبيت ElasticSearch وAPI BaaS Stack على العقدة نفسها. في حال حدوث ذلك، اضبط ElasticSearch لاستخدام ذاكرة بسعة 4 غيغابايت (الإعداد التلقائي). إذا كان ElasticSearch مثبّتًا على عقدة خاصة به، اضبطه لاستخدام 6 غيغابايت من الذاكرة.
** اختياري، وعادةً ما تستخدم مجموعة Cassandra نفسها لكل من خدمات Edge وAPI BaaS.
متطلبات نظام التشغيل والبرامج التابعة لجهات خارجية
تم اختبار تعليمات التثبيت وملفات التثبيت المتوفرة على أنظمة التشغيل والبرامج التابعة لجهات خارجية المدرَجة في البرامج والإصدارات المتوافقة.
إنشاء مستخدم Apigee
ينشئ إجراء التثبيت مستخدمًا لنظام Unix باسم "apigee". يملك المستخدم "apigee" أدلة Edge وملفاته، وكذلك عمليات Edge. وهذا يعني أنّ مكوّنات Edge تعمل بصفتها المستخدم "apigee". ويمكنك تشغيل المكوّنات بصفتها مستخدمًا مختلفًا إذا لزم الأمر.
دليل التثبيت
تكتب أداة التثبيت تلقائيًا جميع الملفات في الدليل /opt/apigee. ولا يمكنك تغيير موقع هذا الدليل. على الرغم من أنّه لا يمكنك تغيير هذا الدليل، يمكنك إنشاء رابط رمزي لربط /opt/apigee بموقع جغرافي آخر، كما هو موضّح أدناه.
في التعليمات الواردة في هذا الدليل، يُشار إلى دليل التثبيت بالرمز /opt/apigee.
إنشاء رابط رمزي من /opt/apigee
قبل إنشاء الرابط الرمزي، يجب أولاً إنشاء مستخدم ومجموعة باسم "apigee". هذه هي المجموعة والمستخدم نفسيهما اللذان تم إنشاؤهما بواسطة برنامج تثبيت Edge.
لإنشاء الرابط الرمزي، اتّبِع الخطوات التالية قبل تنزيل ملف bootstrap_4.18.01.sh. يجب تنفيذ جميع هذه الخطوات بصفتك مستخدمًا رئيسيًا:
- أنشئ المستخدم والمجموعة "apigee":
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- أنشِئ رابطًا رمزيًا من
/opt/apigeeإلى دليل التثبيت المطلوب:ln -Ts /srv/myInstallDir /opt/apigee
حيث يمثّل /srv/myInstallDir الموقع الجغرافي المطلوب لملفات Edge.
- غيِّر ملكية جذر التثبيت والارتباط الرمزي إلى المستخدم "apigee":
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
جافا
يجب تثبيت إصدار متوافق من Java 1.8 على كل جهاز قبل التثبيت. يتم إدراج حِزم تطوير Java المتوافقة في البرامج والإصدارات المتوافقة.
تأكَّد من أنّ JAVA_HOME يشير إلى جذر JDK للمستخدم الذي يجري عملية التثبيت.
SELinux
استنادًا إلى إعدادات SELinux، قد يواجه Edge مشاكل في تثبيت مكونات Edge وتشغيلها. إذا لزم الأمر، يمكنك إيقاف SELinux أو ضبطه على وضع التساهل أثناء عملية التثبيت، ثم إعادة تفعيله بعد التثبيت. لمزيد من المعلومات، يُرجى الاطّلاع على تثبيت أداة Edge apigee-setup.
إعدادات الشبكة
ننصحك بالتحقّق من إعدادات الشبكة قبل التثبيت. يتوقّع برنامج التثبيت أن يكون لجميع الأجهزة عناوين IP ثابتة. استخدِم الأوامر التالية للتحقّق من صحة الإعداد:
- تعرض
hostnameاسم الجهاز - تعرض
hostname -iعنوان IP الخاص باسم المضيف الذي يمكن الوصول إليه من أجهزة أخرى.
استنادًا إلى نوع نظام التشغيل وإصداره، قد تحتاج إلى تعديل /etc/hosts و/etc/sysconfig/network إذا لم يتم ضبط اسم المضيف بشكل صحيح. لمزيد من المعلومات، يُرجى الاطّلاع على المستندات الخاصة بنظام التشغيل الذي تستخدمه.
إذا كان الخادم يحتوي على بطاقات واجهة متعدّدة، سيعرض الأمر "hostname -i" قائمة بعناوين IP مفصولة بمسافات. بشكلٍ تلقائي، يستخدم برنامج تثبيت Edge عنوان IP الأول الذي تم عرضه، والذي قد لا يكون صحيحًا في بعض الحالات. كحلّ بديل، يمكنك ضبط السمة التالية في ملف إعداد التثبيت:
ENABLE_DYNAMIC_HOSTIP=y
عند ضبط هذه السمة على "y"، ستطلب منك أداة التثبيت اختيار عنوان IP لاستخدامه كجزء من عملية التثبيت. القيمة التلقائية هي "n". يمكنك الاطّلاع على مرجع ملف إعداد Edge لمزيد من المعلومات.
TCP Wrappers
يمكن أن تحظر TCP Wrappers الاتصال ببعض المنافذ، ويمكن أن تؤثّر في عملية تثبيت 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 يمكنه الوصول إلى /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 بشكل صحيح من خلال فحص الملف /opt/apigee/apigee-cassandra/conf/cassandra.yaml. على سبيل المثال، تأكَّد من أنّ النص البرمجي لتثبيت Edge for Private Cloud قد ضبط الخصائص التالية:
cluster_nameinitial_tokenpartitionerseedslisten_addressrpc_addresssnitch
قاعدة بيانات PostgreSQL
بعد تثبيت Edge، يمكنك ضبط إعدادات قاعدة بيانات PostgreSQL التالية استنادًا إلى مقدار ذاكرة الوصول العشوائي المتوفّرة على نظامك:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
لضبط هذه القيم، اتّبِع الخطوات التالية:
- عدِّل ملف postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
إذا لم يكن الملف متوفّرًا، أنشئه.
- اضبط الخصائص المدرَجة أعلاه.
- احفظ التعديلات.
- أعِد تشغيل قاعدة بيانات PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
حدود النظام
تأكَّد من ضبط حدود النظام التالية على عُقد Cassandra وMessage Processor:
- في عُقد 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
- في عقد Message Processor، اضبط الحد الأقصى لعدد واصفات الملفات المفتوحة على 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 عند تثبيت واجهة برمجة التطبيقات BaaS.
خدمات أمان الشبكة (NSS)
Network Security Services (NSS) هي مجموعة من المكتبات التي تتيح تطوير تطبيقات خادم وعميل مزوّدة بميزات أمان. يجب التأكّد من تثبيت الإصدار 3.19 أو إصدار أحدث من NSS.
للاطّلاع على الإصدار الحالي، اتّبِع الخطوات التالية:
yum info nss
لتعديل NSS، اتّبِع الخطوات التالية:
yum update nss
يمكنك الاطّلاع على هذه المقالة من RedHat للحصول على مزيد من المعلومات.
إيقاف بحث نظام أسماء النطاقات على IPv6 عند استخدام NSCD (برنامج خدمة التخزين المؤقت لأسماء الخدمات)
إذا كنت قد ثبّت NSCD (برنامج Name Service Cache Daemon) وفعّلته، ستجري "معالجات الرسائل" عمليتَي بحث في نظام أسماء النطاقات (DNS): إحداهما للإصدار الرابع من بروتوكول الإنترنت (IPv4) والأخرى للإصدار السادس من بروتوكول الإنترنت (IPv6). يجب إيقاف البحث عن نظام أسماء النطاقات (DNS) على IPv6 عند استخدام NSCD.
لإيقاف بحث نظام أسماء النطاقات على الإصدار السادس من بروتوكول الإنترنت (IPv6)، اتّبِع الخطوات التالية:
- في كل عقدة Message Processor، عدِّل
/etc/nscd.conf - اضبط السمة التالية:
enable-cache hosts no
إيقاف IPv6 على Google Cloud Platform لنظام التشغيل RedHat/CentOS 7
إذا كنت تثبّت Edge على RedHat 7 أو CentOS 7 على Google Cloud Platform، عليك إيقاف IPv6 على جميع عُقد Qpid.
راجِع مستندات RedHat أو CentOS الخاصة بإصدار نظام التشغيل الذي تستخدمه للحصول على تعليمات حول إيقاف IPv6. يمكنك مثلاً:
- افتح
/etc/hostsفي محرِّر. - أدرِج الرمز "#" في العمود الأول من السطر التالي لإضافة تعليق إليه:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- احفظ الملف.
AWS AMI
إذا كنت تثبّت Edge على صورة جهاز Amazon (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 |
libxslt |
rpm |
فك الضغط |
|
اسم الملف الأساسي |
grep |
lua-socket |
rpm2cpio |
useradd |
|
bash |
اسم المضيف |
ls |
sed |
wc |
|
bc |
id |
net-tools |
sudo |
wget |
|
curl |
libaio |
perl (من procps) |
tar |
xerces-c |
| cyrus-sasl | libdb4 | pgrep (من procps) | tr | لذيذ |
|
التاريخ |
libdb-cxx |
ps |
uuid |
chkconfig |
| dirname | libibverbs | pwd | uname | |
| echo | librdmacm | python |
ntpdate
يُنصح بمزامنة أوقات الخوادم. إذا لم يتم ضبطها من قبل، يمكن استخدام أداة ntpdate لهذا الغرض، وهي تتحقّق مما إذا كانت الخوادم متزامنة مع الوقت. يمكنك استخدام yum install ntp لتثبيت الأداة. ويُعدّ ذلك مفيدًا بشكل خاص لتكرار عمليات إعداد OpenLDAP. يُرجى العِلم أنّه عليك ضبط المنطقة الزمنية للخادم على التوقيت العالمي المتفق عليه.
openldap 2.4
يتطلّب التثبيت داخل الشركة OpenLDAP 2.4. إذا كان الخادم متصلاً بالإنترنت، سيؤدي نص برمجي لتثبيت Edge إلى تنزيل OpenLDAP وتثبيته. إذا كان الخادم لا يتضمّن اتصالاً بالإنترنت، عليك التأكّد من أنّ OpenLDAP مثبّتة قبل تشغيل نص برمجي لتثبيت Edge. على نظام التشغيل RHEL/CentOS، يمكنك تشغيل
yum install openldap-clients openldap-servers لتثبيت OpenLDAP.
بالنسبة إلى عمليات التثبيت التي تتضمّن 13 مضيفًا وعمليات التثبيت التي تتضمّن 12 مضيفًا مع مركزَي بيانات، يجب إجراء نسخ مماثل لـ OpenLDAP لأنّه تتوفّر عُقد متعددة تستضيف OpenLDAP.
جدران الحماية والمضيفون الافتراضيون
يتم استخدام مصطلح virtual بشكل مفرط في مجال تكنولوجيا المعلومات، وينطبق ذلك أيضًا على عملية نشر Apigee Edge Private Cloud والمضيفين الظاهريين. لتوضيح ذلك، هناك استخدامان أساسيان للمصطلح virtual:
- الأجهزة الافتراضية (VM): ليست مطلوبة، ولكن تستخدم بعض عمليات النشر تكنولوجيا الأجهزة الافتراضية لإنشاء خوادم معزولة لمكوّنات Apigee. يمكن أن تتضمّن مضيفات الأجهزة الافتراضية، مثل المضيفات الفعلية، واجهات شبكة وجدران حماية.
- المضيفات الافتراضية: نقاط نهاية الويب، وهي مشابهة للمضيف الافتراضي في Apache.
يمكن أن يعرض الموجه في جهاز افتراضي مضيفات افتراضية متعددة (ما دامت تختلف عن بعضها البعض في الاسم المستعار للمضيف أو في منفذ الواجهة).
على سبيل المثال، قد يشغّل خادم مادي واحد A جهازَين افتراضيَين،
يُطلق عليهما اسم "VM1" و "VM2". لنفترض أنّ "الجهاز الظاهري 1" يعرض واجهة إيثرنت افتراضية، ويتم تسميتها "eth0" داخل الجهاز الظاهري، ويتم تعيين عنوان IP 111.111.111.111 لها من خلال آليات المحاكاة الافتراضية أو خادم بروتوكول الإعداد الديناميكي للمضيف (DHCP) على الشبكة. ولنفترض بعد ذلك أنّ "الجهاز الظاهري 2" يعرض واجهة إيثرنت افتراضية تحمل الاسم نفسه "eth0" ويتم تعيين عنوان IP 111.111.111.222 لها.
قد يكون لدينا موجّه Apigee يعمل في كل من الآلتين الافتراضيتين. تعرض أجهزة التوجيه نقاط نهاية المضيف الافتراضي كما في هذا المثال الافتراضي:
يعرض موجّه Apigee في الجهاز الظاهري 1 ثلاثة مضيفين ظاهريين على واجهة 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 للاتصال.
مسار Basepath هو المكوّن الثالث الذي يشارك في توجيه طلبات البيانات من واجهة برمجة التطبيقات إلى خوادم وكيل مختلفة لواجهة برمجة التطبيقات
التي ربما نشرتها. يمكن أن تتشارك حِزم خادم وكيل لواجهة برمجة التطبيقات نقطة نهاية إذا كانت تتضمّن مسارات أساسية مختلفة. على سبيل المثال، يمكن تحديد مسار أساسي على النحو التالي: 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. إذا لم تحدّد basepath في عملية النشر، لن يتمكّن الموجه من معرفة واجهة برمجة التطبيقات التي يجب إرسال الطلبات الواردة إليها.
ومع ذلك، إذا نشرت واجهة برمجة التطبيقات 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/Management Server إلى Postgres |
| 8084 | منفذ الإدارة التلقائي على خادم Postgres ويجب أن يكون مفتوحًا على المكوّن للسماح لخادم الإدارة بالوصول إليه. | |
| 1103 | منفذ JMX | |
| 4530 | للمكالمات الموزّعة الخاصة بإدارة ذاكرة التخزين المؤقت | |
| 22 | في حال إعداد عقدتَي Postgres لاستخدام النسخ المتماثل الرئيسي الاحتياطي، يجب فتح المنفذ 22 على كل عقدة للوصول إلى ssh. | |
| LDAP | 10389 | OpenLDAP |
| SmartDocs | 59002 | المنفذ على جهاز توجيه Edge الذي يتم إرسال طلبات صفحة SmartDocs إليه |
يعرض الجدول التالي المنافذ نفسها، ولكنها مُدرَجة بترتيب رقمي، مع مكوّنات المصدر والوجهة:
| رقم المنفذ | الغرض | المكوّن المصدر | مكوّن الوجهة |
|---|---|---|---|
| virtual_host_port | بروتوكول HTTP بالإضافة إلى أي منافذ أخرى تستخدمها لنقل بيانات طلبات واجهة برمجة التطبيقات للمضيف الافتراضي يُستخدَم المنفذان 80 و443 بشكل شائع، ويمكن أن يوقف "موجّه الرسائل" اتصالات TLS/SSL. | العميل الخارجي (أو جهاز موازنة الحمل) | Listener on Message Router |
| 1099 إلى 1103 | إدارة JMX | JMX Client | خادم الإدارة (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 |
منافذ Component API، تُستخدَم لإرسال طلبات البيانات من واجهة برمجة التطبيقات مباشرةً إلى المكوّنات الفردية. يفتح كل مكوّن منفذًا مختلفًا، ويعتمد المنفذ الدقيق المستخدَم على الإعدادات، ولكن يجب أن يكون المنفذ مفتوحًا على المكوّن ليتمكّن خادم الإدارة من الوصول إليه. |
برامج 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 غير نشطة، ننصحك بما يلي:
- اضبط
net.ipv4.tcp_keepalive_time = 1800في إعدادات sysctl على نظام التشغيل Linux، حيث يجب أن تكون القيمة 1800 أقل من مهلة TCP غير النشطة لجدار الحماية. يجب أن يحافظ هذا الإعداد على حالة الاتصال على النحو المحدّد حتى لا يقطع جدار الحماية الاتصال. - في جميع معالِجات الرسائل، عدِّل
/opt/apigee/customer/application/message-processor.propertiesلإضافة السمة التالية. إذا لم يكن الملف متوفّرًا، أنشئه.conf_system_cassandra.maxconnecttimeinmillis=-1
- أعِد تشغيل "معالج الرسائل":
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- في جميع أجهزة التوجيه، عدِّل
/opt/apigee/customer/application/router.propertiesلإضافة السمة التالية. إذا لم يكن الملف متوفّرًا، أنشئه.conf_system_cassandra.maxconnecttimeinmillis=-1
- أعِد تشغيل جهاز التوجيه:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
في حال تثبيت إعدادات المجموعة المكوّنة من 12 مضيفًا مع مركزَي بيانات، تأكَّد من أنّ العُقد في مركزَي البيانات يمكنها التواصل عبر المنافذ الموضّحة أدناه:

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

ملاحظات حول هذا الرسم البياني:
- لا يرسل "بوابة BaaS API" طلبات مباشرةً إلى عقدة BaaS Stack. عندما يسجّل المطوّر الدخول إلى "البوابة"، يتم تنزيل تطبيق "البوابة" إلى المتصفّح. بعد ذلك، يرسل تطبيق Portal الذي يتم تشغيله في المتصفّح طلبات إلى عُقد BaaS Stack.
- يستخدم الإصدار المتاح للاستخدام من API BaaS جهاز موازنة حمل بين عقدة بوابة API BaaS وعقد API BaaS Stack. عند ضبط إعدادات البوابة وعند إجراء طلبات البيانات من واجهة برمجة التطبيقات BaaS، عليك تحديد عنوان IP أو اسم نظام أسماء النطاقات لموازن التحميل، وليس لعُقد Stack.
- يجب أن تفتح جميع عقد Stack المنفذ 2551 للسماح بالوصول من جميع عقد Stack الأخرى (يُشار إلى ذلك بالسهم الحلقي في الرسم البياني أعلاه للمنفذ 2551 على عقد Stack). إذا كانت لديك مراكز بيانات متعددة، يجب أن يكون المنفذ متاحًا من جميع عقد Stack في جميع مراكز البيانات.
- يجب إعداد جميع عُقد Baas Stack لإرسال الرسائل الإلكترونية من خلال خادم SMTP خارجي. بالنسبة إلى بروتوكول نقل البريد البسيط (SMTP) غير المستند إلى TLS، يكون رقم المنفذ عادةً 25. بالنسبة إلى SMTP الذي تم تفعيل TLS فيه، يكون المنفذ غالبًا 465، ولكن يُرجى التحقّق من ذلك مع موفّر خدمة SMTP.
- يمكن تخصيص عقد Cassandra لخدمة API BaaS، أو يمكن مشاركتها مع Edge.
يوضّح الجدول أدناه المنافذ التلقائية التي يجب فتحها في جدران الحماية، حسب المكوّن:
| المكوّن | المنفذ | الوصف |
|---|---|---|
| بوابة BaaS API | 9000 | المنفذ الخاص بواجهة مستخدم BaaS API |
| API BaaS Stack | 8080 | المنفذ الذي يتم فيه تلقّي طلبات واجهة برمجة التطبيقات |
| 2551 |
المنفذ المستخدَم للتواصل بين جميع عُقد Stack يجب أن تكون متاحة لجميع عقد Stack الأخرى في مركز البيانات. إذا كانت لديك مراكز بيانات متعددة، يجب أن يكون المنفذ متاحًا من جميع عقد Stack في جميع مراكز البيانات. |
|
| ElasticSearch | 9200 إلى 9400 | للتواصل مع حزمة BaaS API وللتواصل بين عُقد ElasticSearch |
الترخيص
يتطلّب كل تثبيت لـ Edge ملف ترخيص فريدًا تحصل عليه من Apigee. يجب تقديم مسار ملف الترخيص عند تثبيت خادم الإدارة، مثل /tmp/license.txt.
ينسخ المثبّت ملف الترخيص إلى /opt/apigee/customer/conf/license.txt.
إذا كان ملف الترخيص صالحًا، يتحقّق خادم الإدارة من تاريخ انتهاء الصلاحية وعدد "معالجات الرسائل" (MP) المسموح به. إذا انتهت صلاحية أيّ من إعدادات الترخيص، يمكنك العثور على السجلات في الموقع الجغرافي التالي: /opt/apigee/var/log/edge-management-server/logs.
في هذه الحالة، يمكنك التواصل مع فريق دعم Apigee Edge للحصول على تفاصيل حول عملية نقل البيانات.
إذا لم يكن لديك ترخيص بعد، يُرجى التواصل مع فريق مبيعات Apigee.