Edge for Private Cloud v4.18.05
Чтобы настроить Edge после установки, используйте файлы .properties и утилиты Edge. Например, чтобы настроить TLS/SSL в Edge UI, нужно изменить файлы .properties и задать необходимые свойства. Чтобы изменения в файлах .properties вступили в силу, необходимо перезапустить затронутый компонент Edge.
В Apigee редактирование файлов .properties называется кодом с конфигурацией. По сути, код с конфигурацией – это инструмент поиска ключей и значений на основе настроек в файлах .properties. В коде с конфигурацией ключи называются токенами. Поэтому для настройки Edge нужно задать токены в файлах .properties.
Код с конфигурацией позволяет компонентам Edge устанавливать значения по умолчанию, которые поставляются вместе с продуктом, позволяет команде установки переопределять эти настройки на основе топологии установки, а затем позволяет клиентам переопределять любые свойства, которые они выбирают.
Если представить это в виде иерархии, то настройки будут расположены следующим образом, причем настройки клиента будут иметь наивысший приоритет, чтобы переопределить любые настройки от команды установщика или Apigee:
- Клиент
- Установщик
- Apigee
Как использовать файлы .properties
Как клиент, вы можете изменять только файлы .properties в каталоге /opt/apigee/customer/application. У каждого компонента есть собственный файл .properties в этом каталоге. Например, допустимы значения router.properties и management-server.properties.
Например, чтобы создать файл .properties:
- Создайте файл в редакторе от имени любого пользователя.
- Используйте
chown, чтобы изменить владельца файла на "apigee:apigee" или, если вы изменили пользователя, запускающего сервис Edge, с "apigee", измените владельца файла на пользователя, который запускает сервис Edge.
Чтобы задать свойство для компонента, измените соответствующий файл .properties, чтобы задать токен, а затем перезапустите компонент:
/opt/apigee/apigee-service/bin/apigee-service component restart
Например, после изменения router.properties перезапустите маршрутизатор:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
При обновлении Edge считываются файлы .properties в каталоге /opt/apigee/customer/application. Это означает, что при обновлении сохранятся все свойства, заданные для компонента.
Расположение файлов .properties
Для компонентов Edge есть три каталога верхнего уровня с файлами .properties: installation, owner и customers. Местоположения по умолчанию указаны в таблице ниже.
| Владелец | Корневой каталог токенов по умолчанию |
|---|---|
| Компонент | /opt/apigee/component_name/conf где component_name – идентификатор компонента. Возможные значения:
|
| Установка | /opt/apigee/token |
| Клиент | /opt/apigee/customer |
Как определить текущее значение токена
Прежде чем задавать токен в файле .properties для компонента, вы можете определить его текущее значение с помощью следующей команды:
/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token
где component_name – название компонента, а token – токен, который нужно проверить.
Эта команда выполняет поиск по иерархии файлов .properties, чтобы определить текущее значение токена.
Например, чтобы проверить текущее значение токена conf_http_HTTPRequest.line.limit для маршрутизатора, выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Вы должны увидеть выходные данные в следующем формате:
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Как задать токены в файлах .properties
Чтобы переопределить значение токена:
- Чтобы задать значение токена, измените файл
.propertiesдля компонента. Если такого файла нет, создайте его. - Перезапустите компонент.
- Проверьте значение токена.
Например, чтобы установить ограничение строки запроса для Edge Router:
- Отредактируйте файл
/opt/apigee/customer/application/router.properties, чтобы задать токенconf_http_HTTPRequest.line.limit:conf_http_HTTPRequest.line.limit=8k
- Перезапустите пограничный маршрутизатор:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Проверьте значение токена:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Как настроить токен, принимающий несколько значений
Некоторые токены принимают список значений, разделенных запятыми. Например, токен conf_security_rbac.restricted.resources принимает список URI, ограниченных таким образом, что вызывать их может только системный администратор. Чтобы посмотреть значение conf_security_rbac.restricted.resources:
cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *Выходные данные содержат следующее:
token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status
Чтобы задать токен, который принимает список значений, добавьте новые значения к текущему значению токена в файле .properties.
Чтобы добавить URI /myuri/* в conf_security_rbac.restricted.resources, измените файл /opt/apigee/customer/application/management-server.properties, как показано ниже.
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Как найти токен
В большинстве случаев токены, которые нужно задать, указаны в этом руководстве. Однако если вам нужно определить токен, используемый для переопределения свойства, выполните grep в папке source компонента.
Например, если вы знаете, что в предыдущем выпуске Edge вы задали свойство
session.maxAge и хотите узнать значение токена, используемое для его настройки,
grep выполните поиск по свойству в каталоге /opt/apigee/edge-ui/source:
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
Результат должен выглядеть следующим образом:
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}Строка между тегами {T}{/T} – это токен, который вы задали в файле .properties.
Укажите токен, который в настоящее время закомментирован.
Некоторые токены закомментированы в файлах конфигурации Edge. Если вы попытаетесь задать токен, который закомментирован, настройка будет проигнорирована.
Чтобы задать токен, который закомментирован, используйте специальный синтаксис в следующем формате:
conf/file.extension+propertyName=propertyValue
Например, вы хотите задать свойство HTTPClient.proxy.host в Message Processor. Затем вы grep для ресурса, чтобы определить его токен:
cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *Команда grep возвращает результаты в форме, которая включает значение токена. Обратите внимание, что название свойства закомментировано, на что указывает префикс #:
source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=Чтобы задать свойство, измените /opt/apigee/customer/application/message-processor.properties следующим образом:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
Обратите внимание, что перед названием свойства указан префикс conf/http.properties+, а также местоположение и название файла конфигурации, содержащего свойство, за которым следует знак "+".
После перезапуска Message Processor проверьте файл /opt/apigee/edge-message-processor/conf/http.properties:
cat /opt/apigee/edge-message-processor/conf/http.properties
В конце файла вы увидите набор свойств в следующем формате:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com