Требования к установке

Edge для частного облака версии 4.17.01

Требования к оборудованию

Для обеспечения высокой доступности инфраструктуры в рабочей среде необходимо соблюдать следующие минимальные требования к оборудованию. В таблицах ниже перечислены минимальные требования к оборудованию для компонентов установки во всех сценариях, описанных в разделе Топологии установки.

В этих таблицах требования к жесткому диску указаны в дополнение к пространству, необходимому для операционной системы. В зависимости от приложений и сетевого трафика для установки может потребоваться больше или меньше ресурсов, чем указано ниже.

Компонент установки

ОЗУ

ЦП

Минимальный объем жесткого диска

Cassandra

16 ГБ

8-ядерный

250 ГБ локального хранилища с SSD или быстрым HDD, поддерживающим 2000 операций ввода-вывода в секунду.

Обработчик/маршрутизатор сообщений на том же компьютере

8/16 ГБ

4 ядра†

100 ГБ

Аналитика – Postgres/Qpid на одном сервере (не рекомендуется для рабочей среды)

16 ГБ*

8 ядер*

Сетевое хранилище на 500 ГБ – 1 ТБ***, желательно с твердотельным накопителем, поддерживающее 1000 операций ввода-вывода в секунду или более*.

Аналитика – отдельный сервер Postgres

16 ГБ*

8 ядер*

Сетевое хранилище на 500 ГБ – 1 ТБ***, желательно с твердотельным накопителем, поддерживающее 1000 операций ввода-вывода в секунду или более*.

Аналитика – отдельный сервис Qpid

8 ГБ

4 ядра

30–50 ГБ локального хранилища с SSD или быстрым HDD.

Для установок с более чем 250 TPS рекомендуется использовать жесткий диск с локальным хранилищем, поддерживающим 1000 операций ввода-вывода в секунду.

Размер очереди Qpid по умолчанию составляет 20 ГБ. Если вам нужно увеличить емкость, добавьте дополнительные узлы Qpid.

Другое (OpenLDAP, интерфейс, сервер управления)

4 ГБ

2 ядра

60 ГБ

† Настройка системных требований Message Processor в зависимости от производительности:

Минимальное рекомендуемое количество ядер – 4, а для системы с высокой пропускной способностью – 8. Вы можете проводить тесты производительности, чтобы определить оптимальный размер для ваших API.

*Скорректируйте системные требования Postgres в зависимости от пропускной способности:

  • Менее 250 транзакций в секунду: можно использовать 8 ГБ, 4 ядра с управляемым сетевым хранилищем***, поддерживающим 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 рекомендуется использовать сетевое хранилище, поскольку:

  • При необходимости размер хранилища можно динамически увеличивать.
  • В большинстве современных подсистем среды/хранилища/сети можно настраивать сетевые операции ввода-вывода в секунду.
  • Снимки уровня хранилища можно включить как часть решений для резервного копирования и восстановления.

Ниже перечислены требования к оборудованию, если вы хотите установить сервисы монетизации:

Компонент с монетизацией

ОЗУ

ЦП

Жесткий диск

Сервер управления (с сервисами монетизации)

8 ГБ

4 ядра

60 ГБ

Аналитика – Postgres/Qpid на одном сервере

16 ГБ

8-ядерный

Сетевое хранилище емкостью 500 ГБ – 1 ТБ, желательно с серверной частью на основе SSD, поддерживающее 1000 операций ввода-вывода в секунду или больше, или используйте правило из таблицы выше.

Аналитика – отдельный сервер Postgres

16 ГБ

8-ядерный

Сетевое хранилище емкостью 500 ГБ – 1 ТБ, желательно с серверной частью на основе SSD, поддерживающее 1000 операций ввода-вывода в секунду или больше, или используйте правило из таблицы выше.

Аналитика – отдельный сервис Qpid

8 ГБ

4 ядра

40–500 ГБ локального хранилища с SSD или быстрым HDD.
Для установок с более чем 250 транзакциями в секунду рекомендуется использовать жесткий диск с локальным хранилищем, поддерживающим 1000 операций ввода-вывода в секунду.

Ниже перечислены требования к оборудованию для установки API BaaS.

Компонент API BaaS

ОЗУ

ЦП

Жесткий диск

ElasticSearch*

8 ГБ

4 ядра

60–80 ГБ

Стек API BaaS *

8 ГБ

4 ядра

60–80 ГБ

Портал API BaaS

1 ГБ

2 ядра

20 ГБ

Cassandra (необязательно – обычно один и тот же кластер Cassandra используется как для Edge, так и для API BaaS Services)

16 ГБ

8-ядерный

250 ГБ локального хранилища с SSD или быстрым HDD, поддерживающим 2000 операций ввода-вывода в секунду.

* Вы можете установить ElasticSearch и API BaaS Stack на одном узле. Если вы это сделаете, настройте ElasticSearch на использование 4 ГБ памяти (по умолчанию). Если ElasticSearch установлен на отдельном узле, настройте для него использование 6 ГБ памяти.

Примечания

  • Если корневая файловая система недостаточно велика для установки, рекомендуется разместить данные на более крупном диске.
  • Если на компьютере установлена более старая версия Apigee Edge для частного облака, перед новой установкой удалите папку /tmp/java.
  • Для запуска Cassandra требуется разрешение на выполнение в системной временной папке /tmp.
  • Если пользователь "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. Все эти действия необходимо выполнить с правами root:

  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

Java

Перед установкой убедитесь, что на каждом компьютере установлена поддерживаемая версия Java 1.8. Поддерживаемые версии JDK перечислены ниже.

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

Убедитесь, что переменная JAVA_HOME указывает на корневой каталог JDK для пользователя, выполняющего установку.

SELinux

В зависимости от настроек SELinux у Edge могут возникнуть проблемы с установкой и запуском компонентов Edge. При необходимости во время установки можно отключить SELinux или перевести его в разрешительный режим, а затем снова включить. Подробнее о том, как установить утилиту apigee-setup для Edge…

Настройки размещения

Рекомендуем проверить настройки сети перед установкой. Установщик предполагает, что у всех машин есть статические IP-адреса. Чтобы проверить настройку, используйте следующие команды:

  • hostname возвращает название компьютера.
  • hostname -i возвращает IP-адрес для имени хоста, к которому можно обратиться с других машин.

В зависимости от типа и версии операционной системы вам может потребоваться изменить файлы /etc/hosts и /etc/sysconfig/network, если имя хоста задано неправильно. Дополнительную информацию можно найти в документации к вашей операционной системе.

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

Убедитесь, что пограничный маршрутизатор может получить доступ к файлу /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 для частного облака вы можете проверить, правильно ли настроена Cassandra, изучив файл /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml. Например, убедитесь, что скрипт установки Edge для частного облака задал следующие свойства:

  • cluster_name
  • initial_token
  • partitioner
  • seeds
  • listen_address
  • rpc_address
  • snitch

Внимание! Не редактируйте этот файл.

База данных 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

Чтобы задать эти значения:

  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 и 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 000 в файле /etc/security/limits.d/90-apigee-edge-limits.conf , как показано ниже:
    apigee soft nofile 32768
    apigee hard nofile 65536


    При необходимости вы можете увеличить это ограничение. Например, если у вас одновременно открыто большое количество временных файлов.

jsvc

Для использования API BaaS требуется jsvc. Версия 1.0.15-dev устанавливается при установке API BaaS.

Network Security Services (NSS)

Network Security Services (NSS) – это набор библиотек, которые помогают разрабатывать клиентские и серверные приложения с поддержкой безопасности. Убедитесь, что у вас установлена версия NSS 3.19 или более поздняя.

Чтобы проверить текущую версию:

> yum info nss

Чтобы обновить NSS:

> yum update nss

Дополнительную информацию можно найти в этой статье на сайте RedHat.

Отключение DNS-запросов по IPv6 при использовании NSCD (демона кеширования сервисов имен)

Если вы установили и включили NSCD (демон кеширования службы имен), обработчики сообщений выполняют два поиска DNS: один для IPv4 и один для IPv6. При использовании NSCD следует отключить DNS-запрос по IPv6.

Чтобы отключить DNS-запрос по протоколу IPv6, выполните следующие действия:

  1. На каждом узле Message Processor измените файл /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.

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

lua-socket

об/мин

распаковать

basename

grep

ls

rpm2cpio

useradd

bash

hostname

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>.
  • Перед установкой пакета исправлений убедитесь, что у вас установлено средство "patch".

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 для частного облака и виртуальным хостам. Термин "виртуальный" используется в двух основных значениях:

  • Виртуальные машины. Необязательно, но в некоторых развертываниях используется технология виртуальных машин для создания изолированных серверов для компонентов Apigee. У хостов виртуальных машин, как и у физических хостов, могут быть сетевые интерфейсы и межсетевые экраны.
  • Виртуальные хосты. Веб-конечные точки, аналогичные виртуальным хостам Apache.

Маршрутизатор в виртуальной машине может предоставлять доступ к нескольким виртуальным хостам (если они отличаются друг от друга псевдонимом хоста или портом интерфейса).

Например, на одном физическом сервере "А" могут работать две виртуальные машины, "ВМ1" и "ВМ2". Предположим, что ВМ1 предоставляет виртуальный интерфейс Ethernet, который в ВМ называется eth0 и которому механизм виртуализации или сетевой DHCP-сервер присваивает IP-адрес 111.111.111.111. Предположим также, что ВМ2 предоставляет виртуальный интерфейс Ethernet, который также называется eth0 и которому присваивается IP-адрес 111.111.111.222.

В каждой из двух виртуальных машин может быть запущен маршрутизатор Apigee. Маршрутизаторы предоставляют конечные точки виртуального хоста, как в следующем гипотетическом примере:

Маршрутизатор Apigee на виртуальной машине VM1 предоставляет три виртуальных хоста на своем интерфейсе eth0 (у которого есть определенный IP-адрес): api.mycompany.com:80, api.mycompany.com:443 и test.mycompany.com:80.

Маршрутизатор в ВМ2 предоставляет доступ к api.mycompany.com:80 (то же название и порт, что и в ВМ1).

В ОС физического хоста может быть сетевой брандмауэр. Если это так, его нужно настроить так, чтобы он пропускал TCP-трафик, предназначенный для портов, которые используются виртуализированными интерфейсами (111.111.111.111:{80, 443} и 111.111.111.222:80). Кроме того, операционная система каждой ВМ может предоставлять собственный брандмауэр на интерфейсе 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 на виртуальной машине 1 и 111.111.111.222 на виртуальной машине 2). Эта функция относится к вашей установке и настраивается вашей локальной сетевой группой.

Базовый путь задается при развертывании API. В приведенном выше примере для организации mycompany-org можно развернуть два API: mycompany и testmycompany. При этом виртуальный хост будет иметь псевдоним api.mycompany.com, а порт будет настроен на 80. Если вы не объявите базовый путь в развертывании, маршрутизатор не будет знать, какому API отправлять входящие запросы.

Однако если вы развернете API testmycompany с базовым URL /salesdemo, то пользователи будут обращаться к этому API по адресу http://api.mycompany.com:80/salesdemo. Если вы развернете API mycompany с базовым URL /, то пользователи будут получать доступ к API по URL http://api.mycompany.com:80/.

Требования к пограничным портам

Управлять брандмауэром нужно не только для виртуальных хостов. Брандмауэры виртуальных и физических хостов должны пропускать трафик для портов, необходимых компонентам для связи друг с другом.

На изображении ниже показаны требования к портам для каждого компонента Edge:

Примечания к диаграмме

  • *Порт 8082 на Message Processor должен быть открыт для доступа маршрутизатора только при настройке TLS/SSL между маршрутизатором и Message Processor. Если вы не настроите TLS/SSL между маршрутизатором и Message Processor, то по умолчанию порт 8082 должен быть открыт на Message Processor для управления компонентом, но маршрутизатору не требуется доступ к нему.
  • Порты с префиксом "M" используются для управления компонентом и должны быть открыты на компоненте для доступа к серверу управления.
  • Следующим компонентам требуется доступ к порту 8080 на сервере управления: маршрутизатору, процессору сообщений, интерфейсу, Postgres и Qpid.
  • Message Processor должен открыть порт 4528 в качестве порта управления. Если у вас несколько процессоров сообщений, они должны иметь доступ друг к другу через порт 4528 (на схеме выше порт 4528 процессора сообщений обозначен стрелкой петли). Если у вас несколько центров обработки данных, порт должен быть доступен для всех процессоров сообщений во всех центрах обработки данных.
  • Хотя это не обязательно, вы можете открыть порт 4527 на маршрутизаторе для доступа любого обработчика сообщений. В противном случае в файлах журнала Message Processor могут появиться сообщения об ошибках.
  • Маршрутизатор должен открыть порт 4527 в качестве порта управления. Если у вас несколько маршрутизаторов, они должны иметь возможность взаимодействовать друг с другом через порт 4527 (на схеме выше порт 4527 на маршрутизаторе обозначен стрелкой в виде петли).
  • Для поддержки кнопки Отправить в инструменте трассировки интерфейсу Edge требуется доступ к маршрутизатору через порты, предоставленные прокси API.
  • Серверу управления требуется доступ к порту 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

Порт для вызовов API управления Edge. Этим компонентам требуется доступ к порту 8080 на сервере управления: маршрутизатору, обработчику сообщений, интерфейсу, Postgres и Qpid.

1099

Порт JMX

4526

Для распределенного кеша и вызовов управления

Интерфейс управления

9000

Порт для доступа к интерфейсу управления через браузер

Процессор сообщений

8998

Порт Message Processor для связи с маршрутизатором

8082

Порт управления по умолчанию для Message Processor. Он должен быть открыт в компоненте для доступа с сервера управления.

Если вы настроите TLS/SSL между маршрутизатором и Message Processor, маршрутизатор будет использовать его для проверки состояния Message Processor.

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

Используется для связи между маршрутизатором и Message Processor с сервером 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.

В следующей таблице те же порты перечислены в числовом порядке с указанием исходных и целевых компонентов:

Номер порта

Цель

Исходный компонент

Компонент "Целевой сервис"

<номер порта виртуального хоста>

HTTP и любые другие порты, которые вы используете для трафика вызовов API виртуального хоста. Чаще всего используются порты 80 и 443. Маршрутизатор сообщений может завершать подключения TLS/SSL.

Внешний клиент (или балансировщик нагрузки)

Слушатель на маршрутизаторе сообщений

1099–1103

Управление JMX

Клиент JMX

Сервер управления (1099)

Процессор сообщений (1101)

Сервер Qpid (1102)

Сервер Postgres (1103)

2181

Общение с клиентами Zookeeper

Сервер управления

Маршрутизатор

Message Processor

Сервер Qpid

Сервер Postgres

Смотритель зоопарка

2888 и 3888

Управление узлами Zookeeper

Смотритель зоопарка

Смотритель зоопарка

4526

Порт управления RPC

Сервер управления

Сервер управления

4527 Порт управления RPC для распределенного кеша и вызовов управления, а также для связи между маршрутизаторами

Сервер управления

Маршрутизатор

Маршрутизатор

4528

Для распределенных вызовов кеша между процессорами сообщений и для связи с маршрутизатором

Сервер управления

Маршрутизатор

Message Processor

Message Processor

4529 Порт управления RPC для распределенного кеша и вызовов управления Сервер управления Сервер Qpid
4530 Порт управления RPC для распределенного кеша и вызовов управления Сервер управления Сервер Postgres

5432

Клиент Postgres

Сервер Qpid

Postgres

5672

Используется для отправки данных аналитики из маршрутизатора и Message Processor в Qpid.

Маршрутизатор

Message Processor

Сервер Qpid

7000

Взаимодействие между узлами Cassandra

Cassandra

Другой узел Cassandra

7199

управление JMX; Должен быть открыт для доступа на узле Cassandra сервером управления.

Клиент JMX

Cassandra

8080

Порт Management API

Клиенты Management API

Сервер управления

8081–8084

Порты Component API, используемые для отправки запросов API непосредственно отдельным компонентам. Каждый компонент открывает отдельный порт. Точный порт зависит от конфигурации, но он должен быть открыт для доступа к компоненту с сервера управления.

Клиенты Management API

Маршрутизатор (8081)

Message Processor (8082)

Сервер Qpid (8083)

Сервер Postgres (8084)

8998

Обмен данными между маршрутизатором и обработчиком сообщений

Маршрутизатор

Message Processor

9000

Порт интерфейса управления Edge по умолчанию

Браузер

Сервер интерфейса управления

9042

Встроенный транспорт CQL

Маршрутизатор

Message Processor

Сервер управления

Cassandra

9160

Клиент Thrift для Cassandra

Маршрутизатор

Message Processor

Сервер управления

Cassandra

10389

Порт LDAP

Сервер управления

OpenLDAP

15999

Порт проверки состояния. Балансировщик нагрузки использует этот порт, чтобы определить, доступен ли маршрутизатор.

Балансировщик нагрузки Маршрутизатор
59001 Порт, используемый утилитой apigee-validate для тестирования установки Edge apigee-validate Маршрутизатор

59002

Порт маршрутизатора, на который отправляются запросы страниц SmartDocs

SmartDocs

Маршрутизатор

Процессор сообщений поддерживает открытый пул подключений к Cassandra, который настроен так, чтобы никогда не истекало время ожидания. Если между процессором сообщений и сервером Cassandra установлен брандмауэр, время ожидания подключения может истечь. Однако процессор сообщений не предназначен для восстановления подключения к Cassandra.

Чтобы избежать такой ситуации, Apigee рекомендует разместить сервер Cassandra, процессор сообщений и маршрутизаторы в одной подсети, чтобы брандмауэр не участвовал в развертывании этих компонентов.

Если между маршрутизатором и процессорами сообщений есть брандмауэр с настроенным тайм-аутом бездействия TCP, мы рекомендуем:

  1. В настройках sysctl в ОС Linux задайте значение net.ipv4.tcp_keepalive_time = 1800, где 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

Если вы решите установить API BaaS, добавьте компоненты API BaaS Stack и API BaaS Portal. Эти компоненты используют порты, показанные на рисунке ниже:

Примечания к диаграмме

  • Портал API BaaS никогда не отправляет запросы напрямую узлу BaaS Stack. Когда разработчик входит на портал, приложение портала скачивается в браузер. Приложение Portal, запущенное в браузере, отправляет запросы узлам BaaS Stack.
  • В рабочей версии API BaaS между узлом портала API BaaS и узлами стека API BaaS используется балансировщик нагрузки. При настройке портала и выполнении вызовов API BaaS необходимо указать IP-адрес или имя DNS балансировщика нагрузки, а не узлов стека.
  • Все узлы стека должны открыть порт 2551 для доступа со всех других узлов стека (на схеме выше порт 2551 на узлах стека обозначен стрелкой петли). Если у вас несколько центров обработки данных, порт должен быть доступен со всех узлов стека во всех центрах обработки данных.
  • Вам необходимо настроить все узлы BaaS Stack для отправки электронных писем через внешний SMTP-сервер. Для SMTP без TLS обычно используется порт 25. Для SMTP с поддержкой TLS часто используется порт 465, но лучше уточнить эту информацию у поставщика услуг SMTP.
  • Узлы Cassandra могут быть предназначены для API BaaS или использоваться совместно с Edge.

В таблице ниже перечислены порты, которые по умолчанию должны быть открыты в межсетевых экранах для каждого компонента.

Компонент

Порт

Описание

Портал API BaaS

9000

Порт для интерфейса API BaaS

API BaaS Stack

8080

Порт, на который поступают запросы к API

2551

Порт для связи между всеми узлами Stack. Должен быть доступен всем остальным узлам Stack в центре обработки данных.

Если у вас несколько центров обработки данных, порт должен быть доступен со всех узлов Stack во всех центрах обработки данных.

ElasticSearch

9200–9400

Для связи с API BaaS Stack и между узлами ElasticSearch

лицензии;

Для каждой установки Edge требуется уникальный файл лицензии, который вы получаете от Apigee. При установке сервера управления вам нужно будет указать путь к файлу лицензии, например /tmp/license.txt.

Установщик копирует файл лицензии в каталог /<inst_root>/apigee/customer/conf/license.txt.

Если файл лицензии действителен, сервер управления проверяет срок действия и допустимое количество процессоров сообщений. Если срок действия какой-либо настройки лицензии истек, вы можете найти журналы в следующем расположении: /<inst_root>/apigee/var/log/edge-management-server/logs. В этом случае вы можете обратиться в службу поддержки Apigee, чтобы узнать подробности переноса.

Если у вас ещё нет лицензии, свяжитесь с отделом продаж здесь.