Edge for Private Cloud версии 4.16.05
Типичная установка Edge состоит из компонентов Edge, распределенных по нескольким узлам. После установки Edge на узел вы устанавливаете и настраиваете один или несколько компонентов Edge на узле.
Процесс установки
Установка Edge на узел состоит из нескольких шагов:
- Отключите SELinux на узле или установите для него разрешающий режим. Подробнее о том, как установить утилиту apigee-setup для Edge…
- Выберите конфигурацию Edge из списка рекомендуемых топологий. Например, вы можете установить Edge на одном узле для тестирования или на 13 узлах для рабочей среды. Подробнее о топологиях установки…
- На каждом узле в выбранной топологии установите утилиту Edge apigee-setup:
- Скачайте файл Edge bootstrap_4.16.05.sh в каталог /tmp/bootstrap_4.16.05.sh.
- Установите утилиту Edge apigee-service и зависимости.
- Установите утилиту Edge apigee-setup и зависимости.
Подробнее об установке утилиты apigee-setup для Edge…
- Используйте утилиту apigee-setup, чтобы установить один или несколько компонентов Edge на каждом узле в соответствии с выбранной топологией.
Подробные сведения приведены в статье Как установить компоненты Edge на узел. - На узле Management Server используйте утилиту apigee-setup, чтобы установить apigee-provision – утилиты, которые вы используете для создания организаций Edge и управления ими.
Подробнее о том, как зарегистрировать организацию…
Что делать, если не удается установить приложение
Если при установке компонента Edge произошел сбой, попробуйте устранить проблему и запустить установщик снова. Установщик предназначен для многократного запуска в случае обнаружения сбоя или если вы захотите изменить или обновить компонент после установки.
Настройте репликацию Postgres master-standby.
По умолчанию Edge устанавливает все узлы Postgres в режиме master. Однако в производственных системах с несколькими узлами Postgres вы настраиваете их на использование репликации master-standby, чтобы в случае сбоя главного узла резервный узел мог продолжать обслуживать трафик. Подробнее о том, как настроить репликацию Master-Standby для Postgres…
Кто может выполнить установку
Файлы дистрибутива Apigee Edge устанавливаются как набор RPM и зависимостей. Чтобы установить, удалить или обновить Edge, команды Edge должны выполняться пользователем root или пользователем с полным доступом sudo. Полный доступ sudo означает, что пользователь может выполнять те же операции, что и пользователь root.
Пользователь, который хочет запустить следующие команды или скрипты, должен быть пользователем root или пользователем с полным доступом sudo:
-
apigee-service:
- Команды apigee-service: install, uninstall, update.
- Команды apigee-all: install, uninstall, update.
- Скрипт setup.sh для установки компонентов Edge (если вы ещё не использовали команду apigee-service install для установки необходимых RPM). Если это не требуется, то корневой доступ или полный доступ с привилегиями администратора.
- Скрипт update.sh для обновления компонентов Edge.
Кроме того, установщик Edge создает в системе нового пользователя с именем apigee. Многие команды Edge вызывают sudo для запуска от имени пользователя apigee.
Для выполнения любых других команд, кроме перечисленных выше, пользователь должен иметь полный доступ sudo к пользователю apigee. К ним относятся:
-
Команды утилиты apigee-service, в том числе:
- Команды apigee-service, такие как start, stop, restart, configure.
- Команды apigee-all, такие как start, stop, restart, configure.
Чтобы предоставить пользователю полный доступ sudo к пользователю apigee, добавьте в файл sudoers следующую строку:
installUser ALL=(apigee) NOPASSWD: ALL
где installUser – имя пользователя, работающего с Edge.
Все файлы и ресурсы, используемые командами Edge, должны быть доступны пользователю apigee. в том числе файл лицензии Edge и все файлы конфигурации.
При создании файла конфигурации вы можете изменить его владельца на apigee:apigee, чтобы обеспечить доступ к нему для команд Edge:
- Создайте файл в редакторе от имени любого пользователя.
- Смените владельца файла на apigee:apigee или, если вы изменили пользователя, запускающего сервис Edge, с apigee на другого, смените владельца файла на пользователя, запускающего сервис Edge.
Автоматическая установка компонентов Edge
Вы должны передать утилите apigee-setup файл конфигурации, содержащий информацию об установке Edge. Единственное требование к автоматической установке – файл конфигурации должен быть доступен или доступен для чтения пользователю apigee. Например, поместите файл в каталог /tmp на узле и измените его владельца на apigee:apigee.
В файле конфигурации необходимо указать все данные, кроме пароля системного администратора Edge. Если вы не укажете пароль, утилита apigee-setup предложит ввести его в командной строке.
Подробнее о том, как установить компоненты Edge на узел…
Установка с подключением к интернету или без него
Чтобы установить Edge на узел, узел должен иметь доступ к репозиторию Apigee:
- Узлы с внешним подключением к интернету
Узлы с внешним подключением к интернету получают доступ к хранилищу Apigee для установки RPM-пакетов Edge и зависимостей. - Узлы без внешнего подключения к интернету
Узлы без внешнего подключения к интернету могут получить доступ к зеркальной версии хранилища Apigee, которую вы настроили внутри компании. Это хранилище содержит все RPM-пакеты Edge, но вы должны убедиться, что все остальные зависимости доступны из хранилищ во внутренней сети.
Как устранить зависимости при установке RPM
Файлы дистрибутива Apigee Edge устанавливаются как набор RPM-файлов, каждый из которых может иметь собственную цепочку зависимостей установки. Многие из этих зависимостей определяются сторонними компонентами, которые находятся вне контроля Apigee и могут измениться в любое время. Поэтому в документации не указаны точные номера версий для каждой зависимости.
Если вы выполняете установку на компьютере с доступом к интернету, узел может скачать необходимые RPM-пакеты и зависимости. Однако если вы выполняете установку с узла без доступа к интернету, обычно вы настраиваете внутреннее хранилище, содержащее все необходимые зависимости. Единственный способ гарантировать, что все зависимости включены в локальное хранилище, – попытаться выполнить установку, определить отсутствующие зависимости и скопировать их в локальное хранилище, пока установка не будет выполнена успешно.
Как настроить виртуальный хост
Виртуальный хост в Edge определяет домены и порты маршрутизатора Edge, на которых размещен прокси-сервер API, и, соответственно, URL, который приложения используют для доступа к прокси-серверу API. Виртуальный хост также определяет, как осуществляется доступ к прокси-серверу API: по протоколу HTTP или по зашифрованному протоколу HTTPS.
В процессе регистрации в Edge вам нужно создать организацию, среду и виртуальный хост. Для упрощения этого процесса для новых пользователей в Edge предусмотрена команда setup-org.
При создании виртуального хоста необходимо указать следующую информацию:
- Название виртуального хоста, которое вы используете для ссылки на него в прокси-серверах API.
- Порт на маршрутизаторе для виртуального хоста. Обычно эти порты начинаются с 9001 и увеличиваются на единицу для каждого нового виртуального хоста.
- Псевдоним хоста виртуального хоста. Обычно это DNS-имя виртуального хоста.
Чтобы определить, какой прокси-сервер API должен обработать запрос, пограничный маршрутизатор сравнивает заголовок Host входящего запроса со списком доступных псевдонимов хостов. При отправке запроса через виртуальный хост укажите доменное имя, соответствующее псевдониму хоста виртуального хоста, или IP-адрес маршрутизатора и заголовок Host, содержащий псевдоним хоста.
Например, если вы создали виртуальный хост с псевдонимом myapis.apigee.net на порту 9001, то запрос cURL к API через этот виртуальный хост может использовать одну из следующих форм:
- Если у вас есть запись DNS для myapis.apigee.net:
curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path} - Если у вас нет записи DNS для myapis.apigee.net:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'
В этой форме вы указываете IP-адрес маршрутизатора и передаете псевдоним хоста в заголовке Host.
Примечание. Команда curl, большинство браузеров и многие другие утилиты автоматически добавляют заголовок Host с доменом в качестве части запроса, поэтому вы можете использовать команду curl в следующем формате:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Варианты действий, если у вас нет записи DNS для виртуального хоста
Если у вас нет записи DNS, вы можете задать псевдоним хоста, указав IP-адрес маршрутизатора и порт виртуального хоста в формате <IP-адрес маршрутизатора>:порт. Пример:
192.168.1.31:9001
Затем создайте команду curl в следующей форме:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} Этот вариант предпочтителен, поскольку он хорошо работает с Edge UI.
Если у вас несколько маршрутизаторов, добавьте псевдоним хоста для каждого из них, указав IP-адрес каждого маршрутизатора и порт виртуального хоста.
Вы также можете задать для псевдонима хоста значение, например temp.hostalias.com. В этом случае вам нужно будет передавать заголовок Host в каждом запросе:
curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'host: temp.hostalias.com'или добавьте псевдоним хоста в файл /etc/hosts. Например, добавьте в файл /etc/hosts следующую строку:
192.168.1.31 temp.hostalias.com
Затем вы можете сделать запрос, как если бы у вас была запись DNS:
curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}Настройка компонентов Edge после установки
Для настройки Edge после установки используются файлы .properties и утилиты Edge. Например, чтобы настроить TLS/SSL в Edge UI, нужно задать необходимые свойства в файлах .properties. После изменения файлов .properties необходимо перезапустить затронутый компонент Edge.
Файлы .properties находятся в каталоге /opt/apigee/customer/application. У каждого компонента в этом каталоге есть собственный файл .properties. Например, router.properties и management-server.properties.
Чтобы задать свойство для компонента, измените соответствующий файл .properties, а затем перезапустите компонент:
> /opt/apigee/apigee-service/bin/apigee-service component restart
Пример:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
При обновлении Edge считываются файлы .properties в каталоге /opt/apigee/customer/application. Это означает, что при обновлении сохраняются все свойства, заданные для компонента.
Подробнее о том, как настроить Edge…
Убедитесь, что у Edge Router есть доступ к /etc/rc.d/init.d/functions
Маршрутизатор Edge и портал BaaS используют маршрутизатор Nginx и требуют доступа на чтение к /etc/rc.d/init.d/functions.
Если в соответствии с вашими требованиями к безопасности необходимо задать разрешения для /etc/rc.d/init.d/functions, не устанавливайте значение 700, иначе маршрутизатор не запустится. Чтобы разрешить доступ на чтение к /etc/rc.d/init.d/functions, можно установить разрешения 744.
Вызов команд для компонентов Edge
Edge устанавливает утилиты управления в каталог /opt/apigee/apigee-service/bin. Их можно использовать для управления установкой Edge. Например, вы можете использовать утилиту apigee-all, чтобы запустить, остановить, перезапустить или определить статус всех компонентов Edge на узле:
/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version
Для управления отдельными компонентами и их настройки используйте утилиту apigee-service. Утилита apigee-service имеет следующий формат:
/opt/apigee/apigee-service/bin/apigee-service component action
Например, чтобы перезапустить пограничный маршрутизатор, выполните следующие действия:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Вы можете определить список компонентов, установленных на узле, изучив каталог /opt/apigee. В этом каталоге есть подкаталог для каждого компонента Edge, установленного на узле. Каждый подкаталог имеет префикс:
- apigee – сторонний компонент, используемый Edge. Например, apigee-cassandra.
- edge – компонент Edge из Apigee. например edge-management-server.
- edge-mint – компонент монетизации. Например, edge-mint-management-server.
- baas – компонент API BaaS. Пример: baas-usergrid.
Полный список действий для компонента зависит от самого компонента, но все компоненты поддерживают следующие действия:
- start, stop, restart
- status, version
- резервное копирование, восстановление
- install, uninstall
Доступ к файлам журналов
Файл журнала для apigee-setup и скрипт setup.sh записываются в /tmp/setup-root.log.
Файлы журналов для каждого компонента находятся в каталоге /opt/apigee/var/log. Каждый компонент имеет свой подкаталог. Например, журналы для сервера управления находятся в каталоге:
/opt/apigee/var/log/edge-management-server
Основные команды Yum
Инструменты установки Edge для Linux используют Yum для установки и обновления компонентов. Для управления установкой на узле может потребоваться несколько команд Yum.
- Очистите все кеши Yum:
sudo yum clean all - Чтобы обновить компонент Edge, выполните следующую команду:
sudo yum update componentName
Пример:
sudo yum update apigee-setup
sudo yum update edge-management-server
Структура файловой системы
Edge устанавливает все файлы в каталог /opt/apigee.
В этом руководстве и в руководстве по операциям Edge корневой каталог установки обозначается как:
<inst_root>/apigee
При установке Apigee Edge для частного облака используется следующая структура файловой системы:
Файлы журналов
|
Компоненты |
Местоположение |
|---|---|
|
Сервер управления |
<inst_root>/apigee/var/log/edge-management-server |
|
Маршрутизатор |
<inst_root>/apigee/var/log/edge-router |
|
Message Processor |
<inst_root>/apigee/var/log/edge-message-processor |
|
Сервер Apigee Qpid |
<inst_root>/apigee/var/log/edge-qpid-server |
|
Сервер Apigee Postgres |
<inst_root>/apigee/var/log/edge-postgres-server |
|
Интерфейс Edge |
<inst_root>/apigee/var/log/edge-ui |
|
ZooKeeper |
<inst_root>/apigee/var/log/apigee-zookeeper |
|
OpenLDAP |
<inst_root>/apigee/var/log/apigee-openldap |
|
Cassandra |
<inst_root>/apigee/var/log/apigee-cassandra |
|
Qpidd |
<inst_root>/apigee/var/log/apigee-qpidd |
|
База данных PostgreSQL |
<inst_root>/apigee/var/log/apigee-postgresql |
Данные
|
Компоненты |
Местоположение |
|---|---|
|
Сервер управления |
<data_root>/apigee/data/edge-management-server |
|
Маршрутизатор |
<data_root>/apigee/data/edge-router |
|
Message Processor |
<data_root>/apigee/data/edge-message-processor |
|
Агент Apigee Qpid |
<data_root>/apigee/data/edge-qpid-server |
|
Агент Apigee Postgres |
<data_root>/apigee/data/edge-postgres-server |
|
ZooKeeper |
<data_root>/apigee/data/apigee-zookeeper |
|
OpenLDAP |
<data_root>/apigee/data/apigee-openldap |
|
Cassandra |
<data_root>/apigee/data/apigee-cassandra/data |
|
Qpidd |
<data_root>/apigee/data/apigee-qpid/data |
|
База данных PostgreSQL |
<data_root>/apigee/data/apigee-postgres/pgdata |