Edge for Private Cloud - الإصدار 4.17.01
متطلبات الأجهزة
يجب أن تستوفي الحد الأدنى من المتطلبات التالية للأجهزة للحصول على بنية أساسية متاحة بدرجة كبيرة في بيئة ذات مستوى إنتاج. بالنسبة إلى جميع سيناريوهات التثبيت الموضّحة في طرق التثبيت، تسرد الجداول التالية الحد الأدنى من متطلبات الأجهزة لمكونات التثبيت.
تشمل هذه الجداول متطلبات القرص الثابت بالإضافة إلى مساحة القرص الثابت التي يتطلبها نظام التشغيل. استنادًا إلى التطبيقات وحركة بيانات الشبكة، قد يتطلب التثبيت موارد أكثر أو أقل مما هو مدرج أدناه.
مكوّن التثبيت |
ذاكرة الوصول العشوائي |
وحدة المعالجة المركزية (CPU) |
الحد الأدنى للقرص الثابت |
---|---|---|---|
من الفئة العمرية 31-45 |
16 غيغابايت |
ثماني النواة |
مساحة تخزين محلية تبلغ 250 غيغابايت مزودة بمحرك أقراص ذات الحالة الصلبة أو محرك أقراص ثابتة سريع متوافق مع معيار 2000 IOPS |
معالج/موجه الرسائل على الجهاز نفسه |
8/16 غيغابايت |
4 أنوية† |
100 غيغابايت |
"إحصاءات Google" - Postgres/Qpid على الخادم نفسه (لا يُنصح به للإنتاج) |
16 غيغابايت* |
ثماني النواة* |
500 غيغابايت - 1 تيرابايت** من مساحة التخزين على الشبكة***، يُفضَّل أن تكون مزوّدة بخلفية SSD، مع دعم 1000 IOPS أو أعلى*. |
إحصاءات Google - Postgres مستقلة |
16 غيغابايت* |
ثماني النواة* |
500 غيغابايت - 1 تيرابايت** من مساحة التخزين على الشبكة***، يُفضَّل أن تكون مزوّدة بخلفية SSD مع دعم 1000 IOPS أو أعلى* |
إحصاءات Google - معرّف Qpid مستقل |
8 غيغابايت |
4 أنوية |
30 غيغابايت: مساحة تخزين محلية تبلغ 50 غيغابايت مع محرك SSD أو محرك أقراص HDD سريع لعمليات التثبيت التي تزيد عن 250 TPS، يُنصح باستخدام محرك أقراص HDD مع مساحة تخزين محلية تدعم 1000 IOPS. يكون حجم قائمة انتظار Qpid التلقائي هو 20 غيغابايت. إذا كنت بحاجة إلى إضافة المزيد من السعة، أضِف عُقد Qpid إضافية. |
غير ذلك (OpenLDAP، واجهة المستخدم، خادم الإدارة) |
4 غيغابايت |
ثنائي النواة |
60 غيغابايت |
† يمكنك ضبط متطلبات نظام "معالج الرسائل" استنادًا إلى سرعة معالجة البيانات: الحد الأدنى للتوصية هو 4 نوى و8 أنوية لنظام سرعة معالجة بيانات عالٍ. يمكنك إجراء اختبارات الأداء لتحديد الحجم الأمثل لواجهات برمجة التطبيقات. |
|||
*اضبط متطلبات نظام Postgres استنادًا إلى سرعة معالجة البيانات:
|
|||
**تستند قيمة القرص الصلب في Postgres إلى إحصاءات جديدة يتم الحصول عليها من خلال
Edge. في حال إضافة قيم مخصّصة إلى بيانات الإحصاءات، يجب
زيادة هذه القيم وفقًا لذلك. استخدِم الصيغة التالية لتقدير مساحة التخزين المطلوبة: |
|||
*** يُنصح باستخدام ميزة تخزين الشبكة لقاعدة بيانات Postgresql للأسباب التالية:
|
بالإضافة إلى ذلك، تنطبق المتطلبات التالية على متطلبات الأجهزة إذا أردت تثبيت "خدمات تحقيق الربح":
مكوّن مرتبط بتحقيق الربح |
ذاكرة الوصول العشوائي |
وحدة المعالجة المركزية (CPU) |
القرص الثابت |
---|---|---|---|
خادم الإدارة (مع خدمات تحقيق الربح) |
8 غيغابايت |
4 أنوية |
60 غيغابايت |
إحصاءات Google - Postgres/Qpid على الخادم نفسه |
16 غيغابايت |
ثماني النواة |
500 غيغابايت - 1 تيرابايت من مساحة التخزين على الشبكة، ويُفضَّل أن تكون مع خلفية SSD، أو تتوافق مع 1000 إدخال في الثانية أو أكثر، أو استخدِم القاعدة المذكورة في الجدول أعلاه. |
إحصاءات Google - Postgres مستقلة |
16 غيغابايت |
ثماني النواة |
500 غيغابايت - 1 تيرابايت من مساحة التخزين على الشبكة، ويُفضَّل أن تكون مع خلفية SSD، أو تتوافق مع 1000 إدخال في الثانية أو أكثر، أو استخدِم القاعدة المذكورة في الجدول أعلاه. |
إحصاءات Google - معرّف Qpid مستقل |
8 غيغابايت |
4 أنوية |
40 غيغابايت: مساحة تخزين محلية تبلغ 500 غيغابايت مع محرك SSD أو محرك أقراص HDD سريع
لعمليات التثبيت التي تزيد عن 250 TPS، يُنصح باستخدام محرك أقراص HDD مع مساحة تخزين محلية تدعم 1000 IOPS.
|
في ما يلي قائمة بمتطلبات الأجهزة إذا كنت تريد تثبيت نظام BaaS لواجهة برمجة التطبيقات:
مكوِّن BaaS لواجهة برمجة التطبيقات |
ذاكرة الوصول العشوائي |
وحدة المعالجة المركزية (CPU) |
القرص الثابت |
---|---|---|---|
عملية البحث ElasticSearch* |
8 غيغابايت |
4 أنوية |
من 60 إلى 80 غيغابايت |
حزمة BaaS لواجهة برمجة التطبيقات * |
8 غيغابايت |
4 أنوية |
من 60 إلى 80 غيغابايت |
بوابة BaaS لواجهة برمجة التطبيقات |
1 غيغابايت |
ثنائي النواة |
20 غيغابايت |
Cassandra (اختيارية: تستخدم عادةً مجموعة Cassandra نفسها لكل من خدمات Edge وواجهة برمجة التطبيقات (BaaS) من واجهة برمجة التطبيقات) |
16 غيغابايت |
ثماني النواة |
مساحة تخزين محلية تبلغ 250 غيغابايت مزودة بمحرك أقراص ذات الحالة الصلبة أو محرك أقراص ثابتة سريع متوافق مع معيار 2000 IOPS |
* يمكنك تثبيت ElasticSearch وواجهة برمجة التطبيقات 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.
إنشاء مستخدم واجهة برمجة التطبيقات
ينشئ إجراء التثبيت مستخدم نظام 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. يجب تنفيذ كل هذه الخطوات كجذر:
- أنشئ المستخدم والمجموعة "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
تحتاج إلى إصدار معتمد من Java1.8 مثبَّت على كل جهاز قبل التثبيت. يتم إدراج ملفات JDK المتوافقة هنا:
https://apigee.com/docs/api-services/reference/supported-software
تأكَّد من أنّ JAVA_HOME يوجّه إلى جذر JDK للمستخدم الذي يُجري التثبيت.
SELinux
استنادًا إلى إعدادات SELinux، قد يواجه Edge مشكلات في تثبيت وبدء مكونات Edge. ويمكنك إذا لزم الأمر إيقاف SELinux أو ضبطه على الوضع المتساهِل أثناء التثبيت، ثم إعادة تفعيله بعد التثبيت. راجع تثبيت الأداة المساعدة لإعداد واجهة برمجة تطبيقات 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 إلى /etc/rc.d/init.d/functions.
تستخدم عُقد جهاز توجيه Edge وبوابة BaaS جهاز التوجيه Nginx وتتطلب إذن الوصول للقراءة إلى /etc/rc.d/init.d/functions.
إذا كانت عملية الأمان تتطلب منك ضبط الأذونات على /etc/rc.d/init.d/functions، لا تضبطها على 700 وإلا سيتعذّر تشغيل جهاز التوجيه. يمكن ضبط الأذونات على 744 للسماح بالوصول للقراءة إلى /etc/rc.d/init.d/functions.
من الفئة العمرية 31-45
يجب توصيل جميع عُقد Cassandra بحلقة. تخزِّن "كاساندرا" نُسخًا طبق الأصل من البيانات على عُقد متعددة لضمان الموثوقية والتوافق مع الأخطاء. تحدد استراتيجية النسخ المماثل لكل مساحة مفاتيح Edge عُقد 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
- المقسّم
- البذور
- listen_address
- rpc_address
- ورشة
تحذير: لا تعدِّل هذا الملف.
قاعدة بيانات 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 /<inst_root>/apigee/customer/application/postgresql.properties
إذا لم يكن الملف متوفّرًا، عليك إنشاؤه. - اضبط الخصائص المدرَجة أعلاه.
- احفظ التعديلات.
- أعِد تشغيل قاعدة بيانات PostgreSQL:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql إعادة تشغيل
حدود النظام
احرص على ضبط حدود النظام التالية على عُقد Cassandra ومعالج الرسائل:
- في عُقد Cassandra، اضبط حدود soft وثابتة مثل soft وثابتة، وعدد غير محدود من الملفات، ومساحة العنوان (as) لمستخدمي عملية التثبيت (الإعداد التلقائي هو "apigee") في /etc/security/limits.d/90-apigee-edge-limits.conf كما هو موضّح أدناه:
apigee soft memlock Unlimited
apigee hard memlock
apigee hard memlock plus
apigee rock soft soft
apigee hard memlock بلا حدود
apigee hard memlock
apigee hard memlock
- في عُقد "معالج الرسائل"، اضبط الحد الأقصى لعدد أدوات وصف الملفات المفتوحة على 64 ألف
في /etc/security/limits.d/90-apigee-edge-limits.conf كما هو موضّح أدناه:
apigee soft nofile 32768
apigee hard nofile 65536
يمكنك رفع هذا الحد إذا لزم الأمر. على سبيل المثال، إذا كان لديك عدد كبير من الملفات المؤقتة المفتوحة في أي وقت.
أداة jsvc
"jsvc" هو شرط أساسي لاستخدام نظام BaaS لواجهة برمجة التطبيقات. يتم تثبيت الإصدار 1.0.15 -dev عند تثبيت BaaS لواجهة برمجة التطبيقات.
خدمات أمان الشبكات (NSS)
خدمات أمان الشبكة (NSS) هي مجموعة من المكتبات التي تدعم تطوير تطبيقات العميل والخادم التي تم تفعيل الأمان عليها. يجب التأكّد من تثبيت الإصدار 3.19 أو الإصدارات الأحدث من NSS.
للتحقّق من الإصدار الحالي، يُرجى اتّباع الخطوات التالية:
> yum info nss
لتحديث NSS:
> yum update nss
يمكنك الاطّلاع على هذه المقالة من RedHat للحصول على مزيد من المعلومات.
إيقاف بحث نظام أسماء النطاقات على IPv6 عند استخدام NSCD (برنامج خفي لذاكرة التخزين المؤقت لخدمة الأسماء)
إذا كنت قد ثبَّت وفعّلت برنامج NSCD (الخفي لذاكرة التخزين المؤقت لخدمة الأسماء)، ستُجري معالِجات الرسائل عمليتَي بحث لنظام أسماء النطاقات: أحدهما لبروتوكول IPv4 والآخر لبروتوكول IPv6. يجب إيقاف بحث نظام أسماء النطاقات على IPv6 عند استخدام NSCD.
لإيقاف بحث نظام أسماء النطاقات على IPv6:
- في كل عقدة من عُقد معالج الرسائل، عدِّل /etc/nscd.conf
- اضبط السمة التالية:
enable-cache devices no
إيقاف IPv6 على Google Cloud Platform لـ RedHat/CentOS 7
إذا كنت تثبّت Edge على RedHat 7 أو CentOS 7 على Google Cloud Platform، عليك إيقاف IPv6 على جميع عُقد Qpid.
راجِع مستندات RedHat أو CentOS لمعرفة إصدار نظام التشغيل الذي تستخدمه للحصول على تعليمات حول إيقاف IPv6.
AWS AMI
في حال تثبيت Edge على AWS Amazon Machine Image (AMI) لنظام التشغيل 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 |
نَفَس في الدقيقة |
unzip |
basename |
grep |
ls |
rpm2cpio |
إضافة مستخدم |
باش |
hostname |
net-tools |
sed |
wc |
bc |
id |
Perl (من procps) |
sudo |
wget |
curl |
ليبايو |
pgrep (من procps) |
القطران |
شيرسيس-سي |
سايروس ساسل
|
libdb-cxx
|
ps | tr | لذيذ |
التاريخ |
الأفعال الكتابية
|
pwd |
uuid |
أمر chkconfig |
dirname |
ليبردماكم
|
python | بلا اسم | |
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: يتطلّب التثبيت داخل المؤسسة توفُّر OpenLDAP 2.4. في حال كان خادمك متصلاً بالإنترنت، سيتم تنزيل البرنامج النصي لتثبيت Edge وتثبيته عبر بروتوكول OpenLDAP. إذا لم يكن الخادم متصلاً بالإنترنت، يجب التأكد من أنّ بروتوكول OpenLDAP قد تم تثبيته من قبل قبل تشغيل النص البرمجي لتثبيت Edge. في RHEL/CentOS، يمكنك تشغيل "yum install openldap-clients openldap-servers" لتثبيت OpenLDAP.
بالنسبة إلى عمليات التثبيت لـ 13 مضيفًا وعمليات التثبيت من 12 مضيفًا مع مركزَي بيانات، يجب طلب النسخ المماثل لخدمة OpenLDAP نظرًا لوجود عُقد متعددة تستضيف OpenLDAP.
جدران الحماية والمضيفون الافتراضيون
عادةً ما يتم تحميل مصطلح "افتراضي" بشكل زائد في مجال تكنولوجيا المعلومات، ومن ثم يكون الأمر كذلك عند نشر Apigee Edge والمضيفين الافتراضيين لهذه الخدمة. للتوضيح، هناك استخدامان أساسيان لمصطلح "افتراضي":
- الأجهزة الافتراضية (VM): ليس مطلوبًا، ولكن تستخدم بعض عمليات النشر تكنولوجيا الأجهزة الافتراضية لإنشاء خوادم معزولة لمكوّنات Apigee. ويمكن أن تحتوي مضيفات الأجهزة الافتراضية، مثل المضيفين الفعليين، على واجهات شبكة وجدران حماية.
- المضيفون الافتراضيون: نقاط نهاية الويب، مشابهة لمضيف افتراضي Apache.
يمكن لجهاز التوجيه في جهاز افتراضي كشف عدة مضيفات افتراضية (طالما يختلفان عن بعضهما في الاسم المستعار الخاص بالمضيف أو في منفذ الواجهة).
ومثلًا في التسمية، قد يشغّل خادم مادي واحد "A" جهازَين افتراضيَّين، باسم "VM1" و"VM2". ولنفترض أنّ الجهاز VM1 يعرض واجهة إيثرنت افتراضية تحمل اسم eth0 داخل الجهاز الافتراضي، ويتم تخصيصه لعنوان IP 111.111.111.111 من خلال جهاز VM1.1111111 الذي تم تخصيصه من خلال جهاز VM1 VM2 أو خادم افتراضي باسم VM1.
قد يكون لدينا جهاز توجيه 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 على VM1 و111.111.111.222 على الجهاز الافتراضي (VM2). هذه الدالة خاصة بعملية التثبيت التي تجريها، ويتم ضبطها من خلال مجموعة الشبكات المحلية.
يتم تحديد المسار الأساسي عند نشر واجهة برمجة تطبيقات. من المثال أعلاه، يمكنك نشر واجهتَي برمجة تطبيقات، هما 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:
ملاحظات في هذا المخطّط البياني:
-
*يجب فتح منفذ 8082 على معالج الرسائل فقط للوصول إلى جهاز التوجيه عند إعداد بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة بين جهاز التوجيه ومعالج الرسائل. في حال عدم ضبط بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة بين جهاز التوجيه ومعالج الرسائل، يجب أن تكون الإعدادات التلقائية للمنفذ 8082 مفتوحة على معالج الرسائل لإدارة المكوّن، إلا أنّ جهاز التوجيه لا يطلب الوصول إليه.
- المنافذ التي يسبقها الرمز "M" هي منافذ تُستخدَم لإدارة المكوِّن ويجب أن تكون مفتوحة على المكوِّن للوصول إليها من خلال "خادم الإدارة".
- تتطلب المكونات التالية الوصول إلى المنفذ 8080 على خادم الإدارة: جهاز التوجيه، ومعالج الرسائل، وواجهة المستخدم، وPostgres، وQpid.
- يجب أن يفتح "معالج الرسائل" المنفذ 4528 ليكون منفذ الإدارة الخاص به. إذا كانت لديك عدة معالجات رسائل، يجب أن تتمكن جميعها من الوصول إلى بعضها عبر المنفذ 4528 (ويشار إليه بسهم التكرار الحلقي في المخطط أعلاه للمنفذ 4528 في معالج الرسائل). وإذا كانت لديك عدة مراكز بيانات، يجب أن تتوفر إمكانية الوصول إلى المنفذ من جميع معالجات الرسائل في جميع مراكز البيانات.
- يمكنك فتح المنفذ 4527 على جهاز التوجيه للوصول إلى البيانات من خلال أي معالج رسائل، علمًا أنّه ليس مطلوبًا. بخلاف ذلك، قد تظهر لك رسائل خطأ في ملفات سجل معالج الرسائل.
- يجب أن يفتح جهاز التوجيه المنفذ 4527 ليكون منفذ الإدارة الخاص به. إذا كانت لديك عدة أجهزة توجيه، يجب أن يكون بمقدورها جميعًا الوصول إلى بعضها عبر المنفذ 4527 (يُشار إليه بسهم التكرار الحلقي في الرسم البياني أعلاه للمنفذ 4527 على جهاز التوجيه).
- تتطلّب واجهة مستخدم Edge الوصول إلى جهاز التوجيه، من خلال المنافذ التي تكشفها الخوادم الوكيلة لواجهة برمجة التطبيقات، لإتاحة استخدام الزر إرسال في أداة التتبُّع.
- يتطلب خادم الإدارة الوصول إلى منفذ JMX في عُقد Cassandra.
- يمكن تهيئة الوصول إلى منافذ JMX بحيث يتطلب اسم مستخدم/كلمة مرور. اطّلِع على مقالة كيفية المراقبة لمزيد من المعلومات.
- يمكنك اختياريًا ضبط إمكانية الوصول إلى بروتوكول أمان طبقة النقل أو طبقة المقابس الآمنة لبعض الاتصالات التي يمكنها استخدام منافذ مختلفة. راجِع بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة لمعرفة المزيد.
- في حال ضبط عقدتَين من 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)/طبقة المقابس الآمنة بين جهاز التوجيه ومعالج الرسائل، يستخدمه جهاز التوجيه لإجراء عمليات التحقّق من سلامة "معالج الرسائل".
|
|
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) |
|
كاساندرا |
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 الذي يتم إرسال طلبات صفحة Smart Docs إليه. |
يعرض الجدول التالي المنافذ نفسها مدرَجة رقميًا مع مكوّنات المصدر والوجهة:
رقم المنفذ |
الغرض |
مكوّن المصدر |
مكوّن الوجهة |
---|---|---|---|
<منفذ المضيف الافتراضي> |
HTTP بالإضافة إلى أي منافذ أخرى تستخدمها لعدد زيارات الاتصال عبر واجهة برمجة تطبيقات المضيف الظاهري. يتم استخدام المنفذين 80 و443 بشكل شائع، حيث يمكن لجهاز توجيه الرسائل إنهاء اتصالات بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة. |
برنامج خارجي (أو موازن تحميل) |
المستمع على جهاز توجيه الرسائل |
1099 إلى 1103 |
إدارة JMX |
عميل JMX |
خادم الإدارة (1099) معالج الرسائل (1101) Qpid Server (1102) Postgres Server (1103) |
2181 |
التواصل مع العميل في Zookeeper |
خادم الإدارة جهاز التوجيه معالج الرسائل خادم Qpid خادم Postgres |
حارس حديقة الحيوان |
2888 و3888 |
إدارة الأجهزة الداخلية في Zookeeper |
حارس حديقة الحيوان |
حارس حديقة الحيوان |
4526 |
منفَذ إدارة RPC |
خادم الإدارة |
خادم الإدارة |
4527 | منفذ إدارة استدعاء إجراء عن بُعد (RPC) لاستدعاءات ذاكرة التخزين المؤقت والإدارة الموزعة، والاتصالات بين أجهزة التوجيه |
خادم الإدارة جهاز التوجيه |
جهاز التوجيه |
4528 |
لاستدعاءات ذاكرة التخزين المؤقت الموزَّعة بين معالِجات الرسائل، وللاتصالات من جهاز التوجيه |
خادم الإدارة جهاز التوجيه معالج الرسائل |
معالج الرسائل |
4529 | منفذ إدارة استدعاء إجراء عن بُعد (RPC) لمكالمات التخزين المؤقت ومكالمات الإدارة الموزعة | خادم الإدارة | خادم Qpid |
4530 | منفذ إدارة استدعاء إجراء عن بُعد (RPC) لمكالمات التخزين المؤقت ومكالمات الإدارة الموزعة | خادم الإدارة | خادم Postgres |
5432 |
عميل Postgres |
خادم Qpid |
بوستجريس |
5672 |
يُستخدم لإرسال الإحصاءات من جهاز التوجيه ومعالج الرسائل إلى معرّف Qpid |
جهاز التوجيه معالج الرسائل |
خادم Qpid |
7000 |
اتصالات بين عقدة كاساندرا |
من الفئة العمرية 31-45 |
عقدة Cassandra أخرى |
7,199 |
إدارة JMX. يجب أن يفتح خادم الإدارة إمكانية الوصول إلى عقدة Cassandra. |
عميل JMX |
من الفئة العمرية 31-45 |
8080 |
منفذ Management API |
برامج Management API |
خادم الإدارة |
8081 إلى 8084 |
منافذ واجهة برمجة التطبيقات للمكوّنات، تُستخدَم لإصدار طلبات البيانات من واجهة برمجة التطبيقات إلى المكوّنات الفردية مباشرةً. يفتح كل مكون منفذ مختلف، ويعتمد المنفذ الدقيق المستخدم على التهيئة ولكن يجب أن يكون مفتوحًا على المكون للوصول إليه من خلال خادم الإدارة |
برامج Management API |
Router (8081) معالجة الرسائل (8082) Qpid Server (8083) Postgres Server (8084) |
8,998 |
الاتصال بين جهاز التوجيه ومعالج الرسائل |
جهاز التوجيه |
معالج الرسائل |
9,000 |
المنفذ التلقائي لواجهة مستخدم إدارة Edge |
المتصفح |
خادم واجهة مستخدم الإدارة |
9042 |
خدمة نقل أصلي من شركة CQL |
جهاز التوجيه معالج الرسائل خادم الإدارة |
من الفئة العمرية 31-45 |
9160 |
عميل للتوفير في "كاساندرا" |
جهاز التوجيه معالج الرسائل خادم الإدارة |
من الفئة العمرية 31-45 |
10389 |
منفذ LDAP |
خادم الإدارة |
OpenLDAP |
15,999 |
منفذ التحقق من الصحة ويستخدم جهاز موازنة الحمل هذا المنفذ لتحديد ما إذا كان جهاز التوجيه متاحًا. |
جهاز موازنة الحمل | جهاز التوجيه |
59001 | المنفذ الذي تستخدمه أداة apigee-validate لاختبار تثبيت Edge | apigee-validate | جهاز التوجيه |
59002 |
منفذ جهاز التوجيه الذي يتم من خلاله إرسال طلبات صفحة Smart Docs |
SmartDocs |
جهاز التوجيه |
يبقي معالج الرسائل مجموعة اتصالات مخصّصة مفتوحة لـ Cassandra، والتي يتم ضبطها على عدم انقضاء المهلة أبدًا. عندما يكون جدار الحماية بين معالج الرسائل وخادم Cassandra، يمكن أن ينتهي جدار الحماية من الاتصال. ومع ذلك، لم يتم تصميم معالج الرسائل لإعادة الربط بـ Cassandra.
لمنع حدوث هذا الموقف، تنصح Apigee بأن يكون خادم Cassandra ومعالج الرسائل وأجهزة التوجيه في الشبكة الفرعية نفسها حتى لا يشارك جدار الحماية في نشر هذه المكونات.
في حال كان جدار الحماية بين جهاز التوجيه ومعالجات الرسائل، وتم ضبط مهلة عدم النشاط لفترة قصيرة، على سبيل المثال، ننصح بما يلي:
- اضبط net.ipv4.tcp_keepalive_time = 1800 في إعدادات sysctl على نظام التشغيل Linux، حيث يجب أن يكون الرقم 1800 أقل من مهلة tcp غير نشطة في جدار الحماية. ومن المفترض أن يؤدي هذا الإعداد إلى إبقاء الاتصال في الحالة الحالية حتى لا يقطع الجدار الناري الاتصال.
- في جميع معالِجات الرسائل، عدِّل /<inst_root>/apigee/customer/application/message-processor.properties
لإضافة السمة التالية. إذا لم يكن الملف موجودًا، فأنشئه.
conf_system_cassandra.maxconnecttimeinmillis=-1 - أعِد تشغيل معالج الرسائل:
> /opt/apigee/apigee-service/bin/apigee-service Edge-message-processor إعادة تشغيل - على جميع أجهزة التوجيه، عدِّل /<inst_root>/apigee/customer/application/router.properties
لإضافة الموقع الإلكتروني التالي. إذا لم يكن الملف موجودًا، فأنشئه.
conf_system_cassandra.maxconnecttimeinmillis=-1 - أعِد تشغيل جهاز التوجيه:
> /opt/apigee/apigee-service/bin/apigee-service Edge-router إعادة تشغيل
في حال تثبيت الإعدادات الـ 12 المجمّعة للمضيفين باستخدام مركزَي بيانات، تأكّد من إمكانية اتصال العُقد في "مركزَي البيانات" عبر المنافذ الموضّحة أدناه:
متطلبات منفذ BaaS لواجهة برمجة التطبيقات
في حال اختيار تثبيت نظام BaaS لواجهة برمجة التطبيقات، يمكنك إضافة مكوّنَي BaaS Stack وواجهة برمجة التطبيقات BaaS المدخل إلى واجهة برمجة التطبيقات. تستخدم هذه المكوّنات المنافذ الموضحة في الشكل أدناه:
ملاحظات في هذا المخطّط البياني:
- لا ترسل بوابة BaaS الخاصة بواجهة برمجة التطبيقات طلبات مباشرةً إلى عقدة BaaS Stack. عندما يسجل مطوّر البرامج الدخول إلى البوابة، يتم تنزيل تطبيق البوابة إلى المتصفّح. يُجري تطبيق البوابة، الذي يعمل في المتصفح، طلبات إلى عُقد BaaS Stack.
- في عملية تثبيت إنتاج BaaS لواجهة برمجة التطبيقات، يتم استخدام أداة موازنة الحمل بين عقدة بوابة BaaS الخاصة بواجهة برمجة التطبيقات وعُقد BaaS Stack لواجهة برمجة التطبيقات. عند إعداد البوابة وعند إجراء طلبات بيانات من BaaS API، عليك تحديد عنوان IP أو اسم نظام أسماء النطاقات في جهاز موازنة الحمل، وليس في عُقد حزمة Stack.
- يجب أن تفتح جميع عُقد حزمة Stack المنفذ 2551 للوصول إليها من جميع عُقد Stack الأخرى (المُشار إليها بسهم التكرار الحلقي في الرسم البياني أعلاه للمنفذ 2551 على عُقد Stack). إذا كانت لديك عدة "مراكز بيانات"، يجب أن تتوفّر إمكانية الوصول إلى المنفذ من جميع عُقد حزمة Stack في جميع "مراكز البيانات".
- يجب إعداد جميع عُقد Baas Stack لإرسال الرسائل الإلكترونية من خلال خادم SMTP خارجي. بالنسبة إلى بروتوكول SMTP الذي لا يستخدم بروتوكول أمان طبقة النقل (TLS)، يكون رقم المنفذ عادةً 25. بالنسبة إلى بروتوكول SMTP الذي تم تفعيل بروتوكول أمان طبقة النقل (TLS)، غالبًا ما يكون فيه 465، ولكن راجِع موفّر بروتوكول نقل البريد البسيط (SMTP).
- يمكن تخصيص عُقد Cassandra لواجهة برمجة التطبيقات BaaS، أو يمكن مشاركتها مع Edge.
يعرض الجدول أدناه المنافذ التلقائية التي يجب فتحها في جدران الحماية حسب المكوِّن:
المكوّن |
المنفذ |
الوصف |
---|---|---|
بوابة BaaS لواجهة برمجة التطبيقات |
9000 |
منفذ واجهة مستخدم BaaS لواجهة برمجة التطبيقات |
حزمة BaaS لواجهة برمجة التطبيقات |
8080 |
المنفذ الذي يتم تلقّي طلب واجهة برمجة التطبيقات عليه |
2551 |
منفذ للاتصال بين جميع عُقد المكدس. يجب أن يكون الوصول إليها متاحًا من خلال جميع عُقد المكدس الأخرى في قسم البيانات. إذا كانت لديك عدة مراكز بيانات، يجب أن يكون الوصول إلى المنفذ متاحًا من جميع عُقد حزمة Stack في جميع مراكز البيانات. |
|
ElasticSearch |
9,200 إلى 9,400 |
للتواصل مع حزمة BaaS Stack لواجهة برمجة التطبيقات والتواصل بين عُقد ElasticSearch |
الترخيص
يتطلب كل تثبيت Edge ملف ترخيص فريد يمكنك الحصول عليه من Apigee. وعليك توفير المسار إلى ملف الترخيص عند تثبيت خادم الإدارة، على سبيل المثال /tmp/ترخيص.txt.
ينسخ المثبِّت ملف الترخيص إلى /<inst_root>/apigee/customer/conf/license.txt.
إذا كان ملف الترخيص صالحًا، يتحقّق خادم الإدارة من عدد انتهاء صلاحية عدد معالجات الرسائل (MP) المسموح به وانتهاء الصلاحية. إذا انتهت صلاحية أي من إعدادات الترخيص، يمكنك العثور على السجلات في الموقع التالي: /<inst_root>/apigee/var/log/edge-management-server/logs. في هذه الحالة، يمكنك التواصل مع فريق دعم Apigee للحصول على تفاصيل نقل البيانات.
وفي حال لم يكن لديك ترخيص إلى الآن، يُرجى التواصل مع فريق المبيعات هنا.