Edge для частного облака версии 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 на узле на узле. - На узле сервера управления используйте утилиту apigee-setup, чтобы установить apigee-provision – утилиты, которые используются для создания организаций Edge и управления ими.
Подробнее о том, как зарегистрировать организацию…
Как устранить неполадки при установке
Если при установке компонента Edge произошла ошибка, вы можете попытаться устранить ее и снова запустить установщик. Установщик можно запускать несколько раз, если он обнаружит ошибку или если вы захотите изменить или обновить компонент после установки.
Как настроить репликацию Postgres master-standby
По умолчанию Edge устанавливает все узлы Postgres в основном режиме. Однако в рабочих системах с несколькими узлами Postgres их следует настроить на использование репликации "основной-резервный", чтобы в случае сбоя основного узла резервный узел мог продолжить обработку трафика. Подробнее о том, как настроить репликацию 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, на пользователя, который запускает сервис 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 виртуального хоста.
Пограничный маршрутизатор сравнивает заголовок Host входящего запроса со списком доступных псевдонимов хостов, чтобы определить прокси-сервер API, который будет обрабатывать запрос. При отправке запроса через виртуальный хост укажите доменное имя, соответствующее псевдониму хоста виртуального хоста, или 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-адреса маршрутизатора и порта виртуального хоста, как <routerIP>:port. Пример:
192.168.1.31:9001
Затем создайте команду curl в следующем формате:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} Этот вариант предпочтительнее, поскольку он хорошо работает с интерфейсом Edge.
Если у вас несколько маршрутизаторов, добавьте псевдоним хоста для каждого из них, указав 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, нужно изменить файлы .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…
Убедитесь, что пограничный маршрутизатор может получить доступ к файлу /etc/rc.d/init.d/functions.
Маршрутизатор Edge и портал BaaS используют маршрутизатор Nginx и требуют доступа с правом чтения к файлу /etc/rc.d/init.d/functions.
Если в соответствии с вашими требованиями безопасности необходимо задать разрешения для файла /etc/rc.d/init.d/functions, не устанавливайте значение 700, иначе маршрутизатор не запустится. Разрешения можно установить на уровне 744, чтобы разрешить доступ на чтение к файлу /etc/rc.d/init.d/functions.
Вызов команд для компонентов Edge
Утилиты управления установкой Edge находятся в каталоге /opt/apigee/apigee-service/bin. Например, с помощью утилиты 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
Например, чтобы перезапустить маршрутизатор Edge Router:
/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.
Полный список действий для компонента зависит от самого компонента, но все компоненты поддерживают следующие действия:
- запустить, остановить, перезапустить;
- status, version
- резервное копирование, восстановление
- установка, удаление
Как получить доступ к файлам журналов
Файл журнала для 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 |