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

Edge for Private Cloud версии 4.17.01

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

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

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

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

ОЗУ

ЦП

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

Cassandra

16 ГБ

8-ядерный

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

Message Processor и Router на одном компьютере

8/16 ГБ

4-ядерный†

100 ГБ

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

16 ГБ*

8-ядерный*

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

Аналитика – автономный Postgres

16 ГБ*

8-ядерный*

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

Analytics – Qpid standalone

8 ГБ

4-ядерный

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

Для установок с более чем 250 транзакциями в секунду рекомендуется использовать жесткий диск с локальным хранилищем, поддерживающим 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 операций ввода-вывода в секунду, или используйте правило из таблицы выше.

Analytics – Qpid standalone

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 могут блокировать связь некоторых портов и влиять на установку OpenLDAP, Postgres и Cassandra. На этих узлах проверьте файлы /etc/hosts.allow и /etc/hosts.deny, чтобы убедиться, что для необходимых портов OpenLDAP, Postgres и Cassandra нет ограничений.

iptables

Убедитесь, что нет правил iptables, препятствующих подключению между узлами на необходимых портах Edge. При необходимости вы можете остановить iptables во время установки с помощью команды:

> sudo /etc/init.d/iptables stop

В CentOS 7.x:

> systemctl stop firewalld

Убедитесь, что у Edge Router есть доступ к /etc/rc.d/init.d/functions

Узлы Edge Router и BaaS Portal используют маршрутизатор Nginx и требуют доступа на чтение к /etc/rc.d/init.d/functions.

Если в соответствии с вашими требованиями к безопасности необходимо задать разрешения для /etc/rc.d/init.d/functions, не устанавливайте значение 700, иначе маршрутизатор не запустится. Чтобы разрешить доступ на чтение к /etc/rc.d/init.d/functions, можно установить разрешения 744.

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
  • семена
  • 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 (Name Service Cache Daemon).

Если вы установили и включили NSCD (Name Service Cache Daemon), Message Processor выполняет два 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 на 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

об/мин

распаковать

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. Если у вашего сервера нет подключения к интернету, перед запуском скрипта установки Edge убедитесь, что OpenLDAP уже установлен. В RHEL/CentOS для установки OpenLDAP можно выполнить команду yum install openldap-clients openldap-servers.

Для установок с 13 хостами и установок с 12 хостами и двумя центрами обработки данных требуется репликация OpenLDAP, поскольку OpenLDAP размещается на нескольких узлах.

Брандмауэры и виртуальные хосты

Термин "виртуальный" часто используется в сфере ИТ, в том числе в отношении развертывания Apigee Edge для частного облака и виртуальных хостов. Чтобы внести ясность, термин "виртуальный" используется в двух основных значениях:

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

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

Например, на одном физическом сервере A могут работать две виртуальные машины – VM1 и VM2. Предположим, что VM1 предоставляет виртуальный интерфейс Ethernet, который в VM называется eth0 и которому механизм виртуализации или сетевой DHCP-сервер назначает IP-адрес 111.111.111.111. VM2 также предоставляет виртуальный интерфейс Ethernet с именем eth0, которому назначается IP-адрес 111.111.111.222.

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

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

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

В операционной системе физического хоста может быть сетевой брандмауэр. Если это так, его необходимо настроить для передачи TCP-трафика, предназначенного для портов, открытых на виртуализированных интерфейсах (111.111.111.111:{80, 443} и 111.111.111.222:80). Кроме того, операционная система каждой виртуальной машины может предоставлять собственный брандмауэр в интерфейсе eth0, который также должен разрешать трафик через порты 80 и 443.

Базовый путь – это третий компонент, участвующий в маршрутизации вызовов 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, то пользователи будут получать доступ к этому API по адресу http://api.mycompany.com:80/salesdemo. Если вы развернете API mycompany с базовым URL /, пользователи будут получать доступ к API по URL http://api.mycompany.com:80/.

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

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

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

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

  • *Порт 8082 на Message Processor должен быть открыт для доступа со стороны Router только в том случае, если вы настраиваете TLS/SSL между Router и Message Processor. Если вы не настроите TLS/SSL между маршрутизатором и обработчиком сообщений (конфигурация по умолчанию), порт 8082 все равно должен быть открыт на обработчике сообщений для управления компонентом, но маршрутизатору не требуется доступ к нему.
  • Порты с префиксом "M" используются для управления компонентом и должны быть открыты на компоненте для доступа со стороны сервера управления.
  • Доступ к порту 8080 на сервере управления требуется следующим компонентам: Router, Message Processor, UI, Postgres и Qpid.
  • Для Message Processor необходимо открыть порт 4528 в качестве порта управления. Если у вас несколько Message Processor, они должны иметь доступ друг к другу через порт 4528 (на схеме выше это показано круговой стрелкой для порта 4528 на Message Processor). Если у вас несколько центров обработки данных, порт должен быть доступен для всех Message Processor во всех центрах обработки данных.
  • При необходимости вы можете открыть порт 4527 на маршрутизаторе для доступа к любому процессору сообщений. В противном случае в файлах журнала Message Processor могут появиться сообщения об ошибках.
  • Маршрутизатор должен открыть порт 4527 в качестве порта управления. Если у вас несколько маршрутизаторов, они должны иметь доступ друг к другу через порт 4527 (на схеме выше это показано круговой стрелкой для порта 4527 на маршрутизаторе).
  • Чтобы в инструменте отладки работала кнопка Отправить, Edge UI требуется доступ к маршрутизатору через порты, открытые прокси-серверами API.
  • Серверу управления требуется доступ к порту JMX на узлах Cassandra.
  • Для доступа к портам JMX можно настроить требование имени пользователя и пароля. Подробнее о мониторинге…
  • При необходимости вы можете настроить доступ по протоколу TLS/SSL для определенных подключений, которые могут использовать разные порты. Подробнее о TLS/SSL…
  • Если вы настраиваете два узла Postgres для использования репликации "основной-резервный", необходимо открыть порт 22 на каждом узле для доступа по SSH. При необходимости вы можете открыть порты на отдельных узлах, чтобы разрешить доступ по SSH.
  • Вы можете настроить сервер управления и Edge UI для отправки электронных писем через внешний SMTP-сервер. В этом случае необходимо убедиться, что сервер управления и пользовательский интерфейс могут получить доступ к нужному порту на SMTP-сервере. Для SMTP без TLS обычно используется порт 25. Для SMTP с поддержкой TLS часто используется порт 465, но лучше уточнить у поставщика SMTP.

В таблице ниже показаны порты, которые необходимо открыть в брандмауэрах, по компонентам Edge:

Компонент

Порт

Описание

Стандартные HTTP-порты

80, 443

HTTP и любые другие порты, которые вы используете для виртуальных хостов.

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

8080

Порт для вызовов API управления Edge. Доступ к порту 8080 на сервере управления требуется следующим компонентам: Router, Message Processor, UI, Postgres и Qpid.

1099

Порт JMX

4526

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

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

9000

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

Message Processor

8998

Порт Message Processor для связи с Router

8082

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

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

1101

Порт JMX

4528

Для распределенного кеша и вызовов управления между Message Processor, а также для связи с Router.

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

8081

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

4527

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

15999

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

Чтобы получить статус маршрутизатора, балансировщик нагрузки отправляет запрос на порт 15999 маршрутизатора:

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

Если маршрутизатор доступен, запрос возвращает HTTP 200.

59001

Порт, используемый утилитой apigee-validate для тестирования установки Edge. Для работы утилиты требуется доступ к порту 59001 на маршрутизаторе. Подробнее о тестировании установки…

ZooKeeper

2181

Используется другими компонентами, такими как Management Server, Router, Message Processor и т. д.

2888, 3888

Используется внутри ZooKeeper для связи с кластером ZooKeeper (известным как ансамбль ZooKeeper).

Cassandra

7000, 9042, 9160

Порты Apache Cassandra для связи между узлами Cassandra и для доступа со стороны других компонентов Edge.

7199

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

Qpid

5672

Используется для связи между маршрутизатором и процессором сообщений и сервером Qpid.

8083

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

1102

Порт JMX

4529

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

Postgres

5432

Используется для связи между Qpid/сервером управления и Postgres.

8084

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

1103

Порт JMX

4530

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

22

Если вы настраиваете два узла Postgres для использования репликации "основной-резервный", необходимо открыть порт 22 на каждом узле для доступа по SSH.

LDAP

10389

OpenLDAP

SmartDocs

59002

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

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

Номер порта

Цель

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

Целевой компонент

<virtual host port#>

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

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

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

1099–1103

Управление JMX

Клиент JMX

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

Message Processor (1101)

Qpid Server (1102)

Сервер Postgres (1103)

2181

Обмен данными с клиентом Zookeeper

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

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

Message Processor

Сервер Qpid

Сервер Postgres

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

2888 и 3888

Управление межсерверным взаимодействием в Zookeeper

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

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

4526

Порт RPC Management

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

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

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

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

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

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

4528

Для вызовов распределенного кеша между Message Processor и для связи с Router.

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

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

Message Processor

Message Processor

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

5432

Клиент Postgres

Сервер Qpid

Postgres

5672

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

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

Message Processor

Сервер Qpid

7000

Обмен данными между узлами Cassandra

Cassandra

Другой узел Cassandra

7199

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

Клиент JMX

Cassandra

8080

Порт Management API

Клиенты Management API

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

8081–8084

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

Клиенты Management API

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

Message Processor (8082)

Сервер Qpid (8083)

Сервер Postgres (8084)

8998

Обмен данными между Router и Message Processor

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

Message Processor

9000

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

Браузер

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

9042

Собственный транспорт CQL

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

Message Processor

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

Cassandra

9160

Клиент Cassandra Thrift

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

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. Оно должно быть меньше, чем время ожидания TCP при бездействии брандмауэра. Это позволит поддерживать соединение, чтобы брандмауэр не прерывал его.
  2. На всех процессорах сообщений отредактируйте файл /<inst_root>/apigee/customer/application/message-processor.properties, добавив следующее свойство. Если файла нет, создайте его.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Перезапустите Message Processor:
    > /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-имя балансировщика нагрузки, а не узлов Stack.
  • На всех узлах Stack должен быть открыт порт 2551 для доступа со всех остальных узлов Stack (на схеме выше это обозначено круговой стрелкой для порта 2551 на узлах Stack). Если у вас несколько центров обработки данных, порт должен быть доступен со всех узлов 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

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

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

ElasticSearch

9200–9400

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

лицензии;

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

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

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

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