الزامات نصب

Edge for Private Cloud نسخه 4.18.01

الزامات سخت افزاری

شما باید حداقل الزامات سخت افزاری زیر را برای یک زیرساخت بسیار در دسترس در یک محیط درجه تولید برآورده کنید. برای تمام سناریوهای نصب شرح داده شده در توپولوژی های نصب ، جداول زیر حداقل نیازهای سخت افزاری برای اجزای نصب را فهرست می کنند.

در این جداول الزامات هارد دیسک علاوه بر فضای هارد دیسک مورد نیاز سیستم عامل است. بسته به برنامه های کاربردی و ترافیک شبکه شما، نصب شما ممکن است به منابع بیشتر یا کمتری نسبت به فهرست زیر نیاز داشته باشد.

مؤلفه نصب رم CPU حداقل هارد دیسک
کاساندرا 16 گیگابایت 8 هسته ای 250 گیگابایت حافظه محلی با SSD یا HDD سریع که از 2000 IOPS پشتیبانی می کند
پردازشگر/روتر پیام در همان دستگاه 16 گیگابایت 8 هسته ای 100 گیگابایت
تجزیه و تحلیل - Postgres/Qpid در همان سرور (برای تولید توصیه نمی شود) 16 گیگابایت * 8 هسته * 500 گیگابایت - 1 ترابایت ** فضای ذخیره سازی شبکه *** ، ترجیحاً با SSD پشتیبان، پشتیبانی از 1000 IOPS یا بالاتر *
تجزیه و تحلیل - Postgres مستقل 16 گیگابایت * 8 هسته * 500 گیگابایت - 1 ترابایت ** فضای ذخیره سازی شبکه *** ، ترجیحاً با SSD پشتیبان، پشتیبانی از 1000 IOPS یا بالاتر *
تجزیه و تحلیل - Qpid مستقل 8 گیگابایت 4 هسته ای حافظه محلی 30 تا 50 گیگابایت با SSD یا HDD سریع

برای نصب های بیشتر از 250 TPS، HDD با حافظه محلی با پشتیبانی از 1000 IOPS توصیه می شود.

اندازه پیش فرض صف Qpid 20 گیگابایت است. اگر نیاز به اضافه کردن ظرفیت بیشتری دارید، گره‌های Qpid اضافی اضافه کنید.

دیگر (OpenLDAP، UI، سرور مدیریت) 4 گیگابایت 2 هسته ای 60 گیگابایت

* الزامات سیستم Postgres را بر اساس توان تنظیم کنید:

  • کمتر از 250 TPS: 8 گیگابایت، 4 هسته را می توان با ذخیره سازی شبکه مدیریت شده در نظر گرفت *** پشتیبانی از 1000 IOPS یا بالاتر
  • از 250 TPS: 16 گیگابایت، 8 هسته، ذخیره سازی شبکه مدیریت شده ** * پشتیبانی از 1000 IOPS یا بالاتر
  • بیشتر از 1000 TPS: 16 گیگابایت، 8 هسته، ذخیره سازی شبکه مدیریت شده *** پشتیبانی از 2000 IOPS یا بالاتر
  • بیش از 2000 TPS: 32 گیگابایت، 16 هسته، ذخیره سازی شبکه مدیریت شده *** پشتیبانی از 2000 IOPS یا بالاتر
  • بیش از 4000 TPS: 64 گیگابایت، 32 هسته، ذخیره سازی شبکه مدیریت شده *** با پشتیبانی از 4000 IOPS یا بالاتر

** مقدار هارد دیسک 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 توصیه می‌شود زیرا:

  • این امکان را به شما می‌دهد که در صورت نیاز و در صورت نیاز، اندازه ذخیره‌سازی را به صورت پویا افزایش دهید.
  • IOPS شبکه را می توان به سرعت در اکثر زیرسیستم های محیط/ذخیره/شبکه ​​امروزی تنظیم کرد.
  • عکس های فوری سطح ذخیره سازی را می توان به عنوان بخشی از راه حل های پشتیبان گیری و بازیابی فعال کرد.

علاوه بر این، موارد زیر الزامات سخت افزاری را برای نصب خدمات کسب درآمد فهرست می کند:

جزء با کسب درآمد رم CPU هارد دیسک
سرور مدیریت (با خدمات کسب درآمد) 8 گیگابایت 4 هسته ای 60 گیگابایت
تجزیه و تحلیل - Postgres/Qpid در همان سرور 16 گیگابایت 8 هسته ای 500 گیگابایت - فضای ذخیره سازی شبکه 1 ترابایت، ترجیحاً با پشتیبان SSD، از 1000 IOPS یا بالاتر پشتیبانی می کند، یا از قانون جدول بالا استفاده کنید.
تجزیه و تحلیل - Postgres مستقل 16 گیگابایت 8 هسته ای 500 گیگابایت - فضای ذخیره سازی شبکه 1 ترابایت، ترجیحاً با پشتیبان SSD، از 1000 IOPS یا بالاتر پشتیبانی می کند، یا از قانون جدول بالا استفاده کنید.
تجزیه و تحلیل - Qpid مستقل 8 گیگابایت 4 هسته ای حافظه محلی 40 تا 500 گیگابایت با SSD یا HDD سریع

برای نصب های بیشتر از 250 TPS، HDD با حافظه محلی با پشتیبانی از 1000 IOPS توصیه می شود.

اگر می‌خواهید API BaaS را نصب کنید، موارد زیر الزامات سخت‌افزاری را فهرست می‌کند:

کامپوننت API BaaS رم CPU هارد دیسک
ElasticSearch * 8 گیگابایت 4 هسته ای 60-80 گیگابایت
API BaaS Stack * 8 گیگابایت 4 هسته ای 60-80 گیگابایت
پورتال API BaaS 1 گیگابایت 2 هسته ای 20 گیگابایت
کاساندرا ** 16 گیگابایت 8 هسته ای 250 گیگابایت حافظه محلی با SSD یا HDD سریع که از 2000 IOPS پشتیبانی می کند

* می توانید ElasticSearch و API BaaS Stack را در همان گره نصب کنید. اگر این کار را انجام دادید، ElasticSearch را برای استفاده از 4 گیگابایت حافظه (پیش‌فرض) پیکربندی کنید. اگر ElasticSearch روی گره خودش نصب شده باشد، آن را طوری پیکربندی کنید که از 6 گیگابایت حافظه استفاده کند.

** اختیاری؛ معمولاً از خوشه Cassandra یکسانی برای سرویس‌های Edge و API BaaS استفاده می‌کنید.

سیستم عامل و نرم افزار شخص ثالث مورد نیاز

این دستورالعمل‌های نصب و فایل‌های نصب ارائه‌شده روی سیستم‌عامل‌ها و نرم‌افزارهای شخص ثالث فهرست‌شده در نرم‌افزار پشتیبانی‌شده و نسخه‌های پشتیبانی‌شده آزمایش شده‌اند.

ایجاد کاربر apigee

مراحل نصب یک کاربر سیستم یونیکس به نام "apigee" ایجاد می کند. دایرکتوری‌ها و فایل‌های Edge نیز مانند فرآیندهای Edge متعلق به 'apigee' هستند. این بدان معناست که اجزای Edge به عنوان کاربر "apigee" اجرا می شوند. در صورت لزوم، می توانید کامپوننت ها را به عنوان یک کاربر متفاوت اجرا کنید.

دایرکتوری نصب

به طور پیش فرض، نصب کننده همه فایل ها را در پوشه /opt/apigee می نویسد. شما نمی توانید این مکان دایرکتوری را تغییر دهید. در حالی که نمی توانید این دایرکتوری را تغییر دهید، می توانید یک پیوند نمادین برای نگاشت /opt/apigee به مکان دیگری ایجاد کنید، همانطور که در زیر توضیح داده شده است.

در دستورالعمل های این راهنما، دایرکتوری نصب به صورت /opt/apigee ذکر شده است.

ایجاد یک پیوند نمادین از /opt/apigee

قبل از ایجاد سیملینک، ابتدا باید یک کاربر و گروه با نام "apigee" ایجاد کنید. این همان گروه و کاربری است که توسط نصب کننده Edge ایجاد شده است.

برای ایجاد سیم لینک، این مراحل را قبل از دانلود فایل bootstrap_4.18.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

جاوا

شما نیاز به یک نسخه پشتیبانی شده از جاوا 1.8 دارید که قبل از نصب روی هر دستگاه نصب شده باشد. JDK های پشتیبانی شده در نرم افزارهای پشتیبانی شده و نسخه های پشتیبانی شده فهرست شده اند.

اطمینان حاصل کنید که 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" است. برای اطلاعات بیشتر به مرجع فایل پیکربندی لبه مراجعه کنید.

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 Router می تواند به /etc/rc.d/init.d/function ها دسترسی داشته باشد

گره های 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 فراهم شود.

کاساندرا

تمام گره های کاساندرا باید به یک حلقه متصل شوند. کاساندرا برای اطمینان از قابلیت اطمینان و تحمل خطا، کپی های داده را در چندین گره ذخیره می کند. استراتژی تکرار برای هر فضای کلید Edge، گره‌های Cassandra را که در آن رونوشت‌ها قرار می‌گیرند، تعیین می‌کند. برای اطلاعات بیشتر، درباره ضریب تکرار کاساندرا و سطح سازگاری را ببینید.

Cassandra به طور خودکار اندازه پشته جاوا خود را بر اساس حافظه موجود تنظیم می کند. برای اطلاعات بیشتر، به تنظیم منابع جاوا مراجعه کنید. در صورت کاهش عملکرد یا مصرف زیاد حافظه.

پس از نصب Edge برای Private Cloud، می توانید با بررسی فایل /opt/apigee/apigee-cassandra/conf/cassandra.yaml ، پیکربندی صحیح Cassandra را بررسی کنید. به عنوان مثال، مطمئن شوید که اسکریپت نصب Edge for Private Cloud ویژگی های زیر را تنظیم می کند:

  • cluster_name
  • initial_token
  • partitioner
  • seeds
  • 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 /opt/apigee/customer/application/postgresql.properties

    اگر فایل وجود ندارد، آن را ایجاد کنید.

  2. ویژگی های ذکر شده در بالا را تنظیم کنید.
  3. ویرایش های خود را ذخیره کنید.
  4. پایگاه داده PostgreSQL را مجدداً راه اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

محدودیت های سیستم

اطمینان حاصل کنید که محدودیت های سیستم زیر را در گره های Cassandra و Message Processor تنظیم کرده اید:

  • در گره‌های Cassandra، محدودیت‌های نرم و سخت memlock، nofile و فضای آدرس (به عنوان) را برای کاربر نصب (به‌عنوان پیش‌فرض "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، حداکثر تعداد توصیف‌گرهای فایل باز را در /etc/security/limits.d/90-apigee-edge-limits.conf مانند زیر روی 64K تنظیم کنید:
    apigee soft nofile 32768
    apigee hard nofile 65536

    در صورت لزوم، می توانید آن حد را افزایش دهید. به عنوان مثال، اگر در هر زمان تعداد زیادی فایل موقت باز دارید.

jsvc

"jsvc" یک پیش نیاز برای استفاده از API BaaS است. نسخه 1.0.15-dev هنگام نصب API BaaS نصب می شود.

خدمات امنیت شبکه (NSS)

خدمات امنیت شبکه (NSS) مجموعه ای از کتابخانه ها است که از توسعه برنامه های کاربردی سرویس گیرنده و سرور با قابلیت امنیتی پشتیبانی می کند. باید مطمئن شوید که NSS نسخه 3.19 یا بالاتر را نصب کرده اید.

برای بررسی نسخه فعلی خود:

yum info nss

برای به روز رسانی NSS:

yum update nss

برای اطلاعات بیشتر به این مقاله از RedHat مراجعه کنید.

غیرفعال کردن جستجوی DNS در IPv6 هنگام استفاده از NSCD (Name Service Cache Daemon)

اگر NSCD (Name Service Cache Daemon) را نصب و فعال کرده باشید، Message Processors دو جستجوی DNS را انجام می دهد: یکی برای IPv4 و دیگری برای IPv6. هنگام استفاده از NSCD باید جستجوی DNS را در IPv6 غیرفعال کنید.

برای غیرفعال کردن جستجوی DNS در 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 غیرفعال کنید.

برای دستورالعمل های مربوط به غیرفعال کردن IPv6، به مستندات RedHat یا CentOS برای نسخه سیستم عامل خاص خود مراجعه کنید. به عنوان مثال، شما می توانید:

  1. /etc/hosts در یک ویرایشگر باز کنید.
  2. یک کاراکتر "#" را در ستون یکی از خط زیر وارد کنید تا نظر دهید:
    #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  3. فایل را ذخیره کنید.

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 ارائه شده است استفاده می کند.

بیخیال

expr

libxslt

دور در دقیقه

از حالت فشرده خارج کنید

نام پایه

grep

سوکت لوآ

rpm2cpio

useradd

ضربه شدید

نام میزبان

ls

sed

دستشویی

قبل از میلاد مسیح

شناسه

ابزارهای شبکه

سودو

wget

حلقه

لیبایو

پرل (از procps)

تار

xerces-c

cyrus-sasl libdb4 pgrep (از procps) tr خوشگل

تاریخ

libdb-cxx

ps

uuid

chkconfig

dirname افعال لیبی pwd اسم شما
اکو librdmacm پایتون

ntpdate

توصیه می شود زمان سرورها را همگام سازی کنید. اگر قبلاً پیکربندی نشده باشد، ابزار ntpdate می‌تواند این هدف را انجام دهد، که تأیید می‌کند آیا سرورها همگام‌سازی شده‌اند یا خیر. برای نصب این ابزار می توانید از yum install ntp استفاده کنید. این به ویژه برای تکرار تنظیمات OpenLDAP مفید است. توجه داشته باشید که منطقه زمانی سرور را در UTC تنظیم کرده اید.

openldap 2.4

نصب در محل به OpenLDAP 2.4 نیاز دارد. اگر سرور شما اتصال اینترنت دارد، اسکریپت نصب Edge OpenLDAP را دانلود و نصب می کند. اگر سرور شما اتصال اینترنت ندارد، قبل از اجرای اسکریپت نصب Edge باید اطمینان حاصل کنید که OpenLDAP قبلاً نصب شده است. در RHEL/CentOS، می توانید yum install openldap-clients openldap-servers برای نصب OpenLDAP اجرا کنید.

برای نصب 13 میزبان و نصب 12 میزبان با دو مرکز داده، نیاز به تکرار OpenLDAP دارید زیرا چندین گره میزبان OpenLDAP هستند.

فایروال ها و هاست های مجازی

اصطلاح virtual معمولاً در عرصه فناوری اطلاعات بیش از حد بارگذاری می‌شود، و به همین ترتیب در Apigee Edge برای استقرار Private Cloud و میزبان‌های مجازی نیز چنین است. برای روشن شدن، دو کاربرد اصلی از اصطلاح virtual وجود دارد:

  • ماشین های مجازی (VM) : لازم نیست، اما برخی از استقرارها از فناوری VM برای ایجاد سرورهای ایزوله برای اجزای Apigee خود استفاده می کنند. هاست های VM مانند هاست های فیزیکی می توانند دارای رابط های شبکه و فایروال باشند.
  • میزبان های مجازی : نقاط پایانی وب، مشابه میزبان مجازی آپاچی.

یک روتر در یک VM می‌تواند میزبان‌های مجازی متعددی را در معرض نمایش بگذارد (تا زمانی که آنها در نام مستعار میزبان یا درگاه رابط خود با یکدیگر متفاوت باشند).

فقط به عنوان یک مثال نامگذاری، یک سرور فیزیکی A ممکن است دو ماشین مجازی به نام‌های "VM1" و "VM2" را اجرا کند. بیایید فرض کنیم "VM1" یک رابط اترنت مجازی را نشان می دهد که در داخل ماشین مجازی "eth0" نامیده می شود و توسط ماشین مجازی سازی یا سرور DHCP شبکه به آدرس IP 111.111.111.111 اختصاص داده شده است. و سپس فرض کنید 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} and 111.111.111.222:80 ). علاوه بر این، سیستم عامل هر VM ممکن است فایروال خود را بر روی رابط eth0 خود ارائه دهد و اینها نیز باید به پورت های 80 و 443 ترافیک اجازه اتصال دهند.

مسیر پایه سومین مؤلفه ای است که در مسیریابی فراخوان های API به پراکسی های مختلف API که ممکن است مستقر کرده باشید، دخیل است. بسته‌های پروکسی API اگر مسیرهای پایه متفاوتی داشته باشند، می‌توانند یک نقطه پایانی را به اشتراک بگذارند. به عنوان مثال، یک مسیر پایه را می توان به عنوان 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). این عملکرد مخصوص نصب خاص شما است و توسط گروه شبکه محلی شما پیکربندی شده است.

هنگام استقرار یک API، مسیر پایه تنظیم می شود. از مثال بالا، می‌توانید دو API، mycompany و testmycompany را برای سازمان mycompany-org با میزبان مجازی که نام مستعار میزبان api.mycompany.com دارد و پورت روی 80 تنظیم شده است، مستقر کنید. اگر مسیر پایه را در استقرار اعلام نکنید، روتر نمی داند که درخواست های دریافتی را به کدام API ارسال کند.

با این حال، اگر API testmycompany با URL پایه /salesdemo مستقر کنید، کاربران با استفاده از http://api.mycompany.com:80/salesdemo به آن API دسترسی پیدا می کنند. اگر API mycompany خود را با URL پایه / مستقر کنید، کاربران شما از طریق URL http://api.mycompany.com:80/ به API دسترسی پیدا می کنند.

الزامات پورت لبه

نیاز به مدیریت فایروال فراتر از میزبان های مجازی است. هم فایروال های VM و هم فایروال هاست فیزیکی باید به ترافیک پورت های مورد نیاز اجزا اجازه دهند تا با یکدیگر ارتباط برقرار کنند.

تصویر زیر الزامات پورت ها را برای هر جزء Edge نشان می دهد:

نکات مربوط به این نمودار:

  • * زمانی که TLS/SSL را بین روتر و پردازشگر پیام پیکربندی می‌کنید، پورت 8082 روی پیام‌پرداز باید برای دسترسی روتر باز باشد. اگر TLS/SSL را بین روتر و پردازشگر پیام پیکربندی نکنید، پیکربندی پیش‌فرض، پورت 8082 همچنان باید روی پردازشگر پیام باز باشد تا مؤلفه را مدیریت کند، اما روتر به دسترسی به آن نیاز ندارد.
  • پورت های پیشوند "M" پورت هایی هستند که برای مدیریت کامپوننت استفاده می شوند و باید روی کامپوننت باز باشند و برای دسترسی سرور مدیریت باید روی کامپوننت باز باشند.
  • اجزای زیر نیاز به دسترسی به پورت 8080 در سرور مدیریت دارند: روتر، پردازشگر پیام، رابط کاربری، Postgres و Qpid.
  • یک پردازشگر پیام باید پورت 4528 را به عنوان پورت مدیریت خود باز کند. اگر چندین پردازشگر پیام دارید، همه آنها باید بتوانند از طریق پورت 4528 به یکدیگر دسترسی داشته باشند (که با فلش حلقه در نمودار بالا برای پورت 4528 در پردازشگر پیام نشان داده شده است). اگر چندین مرکز داده دارید، پورت باید از همه پردازشگرهای پیام در همه مراکز داده قابل دسترسی باشد.
  • در حالی که نیازی به آن نیست، می توانید پورت 4527 روتر را برای دسترسی هر پردازشگر پیام باز کنید. در غیر این صورت، ممکن است پیام‌های خطا را در فایل‌های گزارش پردازشگر پیام مشاهده کنید.
  • یک روتر باید پورت 4527 را به عنوان پورت مدیریت خود باز کند. اگر چندین روتر دارید، همه آنها باید بتوانند از طریق پورت 4527 به یکدیگر دسترسی داشته باشند (که با فلش حلقه در نمودار بالا برای پورت 4527 روی روتر نشان داده شده است).
  • رابط کاربری Edge برای پشتیبانی از دکمه Send در ابزار ردیابی، نیاز به دسترسی به روتر، در پورت‌هایی دارد که توسط پراکسی‌های API در معرض دید قرار می‌گیرند.
  • سرور مدیریت نیاز به دسترسی به پورت JMX در گره های کاساندرا دارد.
  • دسترسی به پورت های JMX را می توان طوری پیکربندی کرد که به نام کاربری/رمز عبور نیاز باشد. برای اطلاعات بیشتر به نحوه مانیتورینگ مراجعه کنید.
  • شما می توانید به صورت اختیاری دسترسی TLS/SSL را برای اتصالات خاصی که می توانند از پورت های مختلف استفاده کنند، پیکربندی کنید. برای اطلاعات بیشتر به TLS/SSL مراجعه کنید.
  • اگر دو گره Postgres را برای استفاده از replication master-standby پیکربندی کنید، باید پورت 22 را در هر گره برای دسترسی ssh باز کنید. شما می توانید به صورت اختیاری پورت ها را روی گره های جداگانه باز کنید تا امکان دسترسی به ssh فراهم شود.
  • می توانید مدیریت سرور و رابط کاربری Edge را برای ارسال ایمیل از طریق یک سرور SMTP خارجی پیکربندی کنید. اگر این کار را انجام می دهید، باید اطمینان حاصل کنید که مدیریت سرور و UI می توانند به پورت لازم در سرور SMTP دسترسی داشته باشند. برای SMTP غیر TLS، شماره پورت معمولاً 25 است. برای SMTP با TLS فعال، اغلب 465 است، اما با ارائه دهنده SMTP خود تماس بگیرید.

جدول زیر نشان می دهد که پورت هایی که باید در فایروال ها باز شوند، توسط کامپوننت Edge:

جزء بندر شرح
پورت های استاندارد HTTP 80، 443 HTTP به علاوه هر پورت دیگری که برای هاست مجازی استفاده می کنید
سرور مدیریت 8080 پورت تماس‌های API مدیریت 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 تست نصب را ببینید.
نگهبان باغ وحش 2181 توسط اجزای دیگر مانند مدیریت سرور، روتر، پردازشگر پیام و غیره استفاده می شود
2888، 3888 استفاده داخلی توسط ZooKeeper برای ارتباط خوشه ZooKeeper (معروف به ZooKeeper Ensemble)
کاساندرا 7000، 9042، 9160 پورت های آپاچی کاساندرا برای ارتباط بین گره های کاساندرا و برای دسترسی سایر اجزای Edge.
7199 پورت JMX باید برای دسترسی توسط سرور مدیریت باز باشد.
Qpid 5672 برای ارتباطات از روتر و پردازشگر پیام به سرور Qpid استفاده می شود
8083 پورت مدیریت پیش‌فرض روی سرور Qpid است و برای دسترسی سرور مدیریت باید روی کامپوننت باز باشد.
1102 پورت JMX
4529 برای حافظه پنهان توزیع شده و تماس های مدیریتی
Postgres 5432 برای ارتباط از سرور Qpid/Management به Postgres استفاده می شود
8084 پورت مدیریت پیش‌فرض در سرور Postgres و برای دسترسی سرور مدیریت باید روی کامپوننت باز باشد.
1103 پورت JMX
4530 برای حافظه پنهان توزیع شده و تماس های مدیریتی
22 اگر دو گره Postgres را برای استفاده از replication master-standby پیکربندی کنید، باید پورت 22 را در هر گره برای دسترسی ssh باز کنید.
LDAP 10389 OpenLDAP
SmartDocs 59002 پورت روتر Edge که در آن درخواست های صفحه SmartDocs ارسال می شود.

جدول بعدی همان پورت ها را نشان می دهد که به صورت عددی فهرست شده اند، همراه با اجزای مبدا و مقصد:

شماره پورت هدف جزء منبع جزء مقصد
virtual_host_port HTTP به علاوه هر پورت دیگری که برای ترافیک تماس API میزبان مجازی استفاده می کنید. پورت های 80 و 443 بیشترین استفاده را دارند. مسیریاب پیام می تواند اتصالات TLS/SSL را خاتمه دهد. مشتری خارجی (یا متعادل کننده بار) شنونده در مسیریاب پیام
1099 تا 1103 مدیریت JMX مشتری JMX سرور مدیریت (1099)
پردازشگر پیام (1101)
سرور Qpid (1102)
سرور Postgres (1103)
2181 ارتباط با مشتری باغ وحش سرور مدیریت
روتر
پردازشگر پیام
سرور Qpid
سرور Postgres
نگهبان باغ وحش
2888 و 3888 مدیریت میانگره نگهبان باغ وحش نگهبان باغ وحش نگهبان باغ وحش
4526 پورت مدیریت RPC سرور مدیریت سرور مدیریت
4527 پورت مدیریت RPC برای کش توزیع شده و تماس های مدیریتی و برای ارتباطات بین روترها سرور مدیریت
روتر
روتر
4528 برای تماس های حافظه پنهان توزیع شده بین پردازنده های پیام، و برای ارتباط از روتر سرور مدیریت
روتر
پردازشگر پیام
پردازشگر پیام
4529 پورت مدیریت RPC برای کش توزیع شده و تماس های مدیریتی سرور مدیریت سرور Qpid
4530 پورت مدیریت RPC برای کش توزیع شده و تماس های مدیریتی سرور مدیریت سرور Postgres
5432 مشتری Postgres سرور Qpid Postgres
5672

برای ارسال تجزیه و تحلیل از روتر و پردازشگر پیام به Qpid استفاده می شود

روتر
پردازشگر پیام
سرور Qpid
7000 ارتباطات بین گره ای کاساندرا کاساندرا دیگر گره کاساندرا
7199 مدیریت JMX باید برای دسترسی به گره Cassandra توسط سرور مدیریت باز باشد. مشتری JMX کاساندرا
8080 پورت مدیریت API مشتریان API مدیریت سرور مدیریت
8081 تا 8084

پورت های کامپوننت API، برای صدور درخواست های API به طور مستقیم به اجزای جداگانه استفاده می شود. هر جزء پورت متفاوتی را باز می کند. پورت دقیق استفاده شده به پیکربندی بستگی دارد، اما برای دسترسی سرور مدیریت باید روی کامپوننت باز باشد

مشتریان API مدیریت روتر (8081)
پردازشگر پیام (8082)
سرور Qpid (8083)
سرور Postgres (8084)
8998 ارتباط بین روتر و پردازشگر پیام روتر پردازشگر پیام
9000 درگاه رابط کاربری پیش فرض مدیریت Edge مرورگر سرور UI مدیریت
9042 حمل و نقل بومی CQL روتر
پردازشگر پیام
سرور مدیریت
کاساندرا
9160 مشتری صرفه جویی کاساندرا روتر
پردازشگر پیام
سرور مدیریت
کاساندرا
10389 پورت LDAP سرور مدیریت OpenLDAP
15999 بندر چک سلامت یک متعادل کننده بار از این پورت برای تعیین موجود بودن روتر استفاده می کند. متعادل کننده بار روتر
59001 پورتی که توسط ابزار apigee-validate برای آزمایش نصب Edge استفاده می‌شود apigee-validate روتر
59002 پورت روتر که در آن درخواست های صفحه SmartDocs ارسال می شود SmartDocs روتر

یک پردازشگر پیام، یک استخر اتصال اختصاصی را برای Cassandra باز نگه می‌دارد، که به گونه‌ای پیکربندی شده است که هرگز مهلت نداشته باشد. هنگامی که یک فایروال بین یک پردازشگر پیام و سرور Cassandra قرار دارد، فایروال می تواند زمان اتصال را متوقف کند. با این حال، پردازشگر پیام برای برقراری مجدد اتصالات به کاساندرا طراحی نشده است.

برای جلوگیری از این وضعیت، Apigee توصیه می کند که سرور Cassandra، پردازشگر پیام و روترها در یک زیر شبکه باشند تا یک فایروال در استقرار این مؤلفه ها دخالت نداشته باشد.

اگر یک فایروال بین روتر و پردازشگر پیام قرار دارد، و دارای زمان بندی بیکار tcp است، توصیه های ما این است:

  1. net.ipv4.tcp_keepalive_time = 1800 در تنظیمات sysctl در سیستم عامل لینوکس تنظیم کنید، جایی که 1800 باید کمتر از مهلت زمانی idle tcp فایروال باشد. این تنظیم باید اتصال را در حالت ثابت نگه دارد تا فایروال اتصال را قطع نکند.
  2. در همه پردازشگرهای پیام، /opt/apigee/customer/application/message-processor.properties را ویرایش کنید تا ویژگی زیر را اضافه کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. پردازشگر پیام را مجددا راه اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. در همه روترها، /opt/apigee/customer/application/router.properties را ویرایش کنید تا ویژگی زیر را اضافه کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. روتر را مجددا راه اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

اگر 12 پیکربندی خوشه‌بندی شده میزبان را با دو مرکز داده نصب می‌کنید، مطمئن شوید که گره‌ها در دو مرکز داده می‌توانند از طریق پورت‌های نشان داده شده در زیر ارتباط برقرار کنند:

الزامات پورت API BaaS

اگر تصمیم به نصب API BaaS دارید، API BaaS Stack و API BaaS Portal را اضافه می‌کنید. این قطعات از پورت های نشان داده شده در شکل زیر استفاده می کنند:

نکات مربوط به این نمودار:

  • پورتال API BaaS هرگز مستقیماً به یک گره پشته BaaS درخواست نمی کند. هنگامی که یک توسعه دهنده وارد پورتال می شود، برنامه پورتال در مرورگر دانلود می شود. برنامه Portal که در مرورگر اجرا می شود، سپس به گره های پشته BaaS درخواست می کند.
  • یک نصب تولیدی API BaaS از یک متعادل کننده بار بین گره پورتال API BaaS و گره های API BaaS Stack استفاده می کند. هنگام پیکربندی پورتال، و هنگام برقراری تماس های BaaS API، آدرس IP یا نام DNS متعادل کننده بار را مشخص می کنید، نه گره های Stack.
  • همه گره های پشته باید پورت 2551 را برای دسترسی از سایر گره های پشته باز کنند (که با فلش حلقه در نمودار بالا برای پورت 2551 روی گره های Stack نشان داده شده است). اگر چندین مرکز داده دارید، پورت باید از تمام گره‌های پشته در همه مراکز داده قابل دسترسی باشد.
  • شما باید تمام گره های Baas Stack را برای ارسال ایمیل از طریق یک سرور SMTP خارجی پیکربندی کنید. برای SMTP غیر TLS، شماره پورت معمولاً 25 است. برای SMTP با TLS فعال، اغلب 465 است، اما با ارائه دهنده SMTP خود تماس بگیرید.
  • گره های Cassandra را می توان به API BaaS اختصاص داد، یا می توان با Edge به اشتراک گذاشت.

جدول زیر پورت های پیش فرضی را که باید در فایروال ها باز شوند، به تفکیک جزء نشان می دهد:

جزء بندر شرح
پورتال API BaaS 9000 پورت برای رابط کاربری API BaaS
پشته API BaaS 8080 درگاهی که درخواست API دریافت می شود
2551

پورت برای ارتباط بین تمام گره های پشته. باید توسط تمام گره‌های پشته دیگر در کانتر داده قابل دسترسی باشد.

اگر چندین مرکز داده دارید، پورت باید از تمام گره‌های پشته در همه مراکز داده قابل دسترسی باشد.

ElasticSearch 9200 تا 9400 برای برقراری ارتباط با API BaaS Stack و برای برقراری ارتباط بین گره های ElasticSearch

صدور مجوز

هر نصب Edge به یک فایل مجوز منحصر به فرد نیاز دارد که از Apigee دریافت می کنید. هنگام نصب سرور مدیریت باید مسیر فایل لایسنس را برای مثال /tmp/license.txt ارائه دهید.

نصب کننده فایل مجوز را در /opt/apigee/customer/conf/license.txt کپی می کند.

اگر فایل مجوز معتبر باشد، سرور مدیریت تعداد انقضا و مجاز پردازشگر پیام (MP) را تأیید می کند. اگر هر یک از تنظیمات مجوز منقضی شده است، می توانید گزارش ها را در مکان زیر پیدا کنید: /opt/apigee/var/log/edge-management-server/logs . در این صورت می توانید برای جزئیات مهاجرت با پشتیبانی Apigee Edge تماس بگیرید.

اگر هنوز مجوز ندارید، با فروش Apigee تماس بگیرید.