Edge для частного облака версии 4.17.05
Чтобы настроить Edge после установки, используйте сочетание файлов .properties и утилит Edge. Например, чтобы настроить TLS/SSL в интерфейсе Edge, нужно изменить файлы .properties, задав необходимые свойства. Чтобы изменения в файлах .properties вступили в силу, необходимо перезапустить затронутый компонент Edge.
В Apigee редактирование файлов .properties называется кодом с конфигурацией. По сути, код с конфигурацией – это инструмент поиска по ключу и значению, основанный на настройках в файлах .properties. В коде с конфигурацией ключи называются токенами. Поэтому для настройки Edge нужно задать токены в файлах .properties.
Код с конфигурацией позволяет компонентам Edge задавать значения по умолчанию, которые поставляются вместе с продуктом, команде по установке – переопределять эти настройки на основе топологии установки, а клиентам – переопределять любые свойства по своему усмотрению.
Если представить настройки в виде иерархии, то настройки клиента будут иметь самый высокий приоритет и переопределять любые настройки команды установщика или Apigee:
- Клиент
- Установщик
- Apigee
Как использовать файлы .properties
Как клиент, вы можете изменять только файлы .properties в каталоге /opt/apigee/customer/application. У каждого компонента в этом каталоге есть собственный файл .properties. Например, router.properties и management-server.properties.
- Создайте файл в редакторе, используя любой аккаунт.
- Измените владельца файла на 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
Для файлов .properties компонентов Edge есть три каталога верхнего уровня: владелец установки и клиенты. Места размещения по умолчанию указаны в таблице ниже.
Предупреждение. Клиенты Edge могут изменять только файлы .properties в каталоге /opt/apigee/customer. Вы можете просматривать файлы в каталогах компонентов и установки, но не изменяйте их.
|
Владелец |
Корневой каталог токенов по умолчанию |
|---|---|
|
Компонент |
/opt/apigee/<prefix>-<component>/conf где /<prefix>-<component> идентифицирует компонент, например edge-router или apigee-cassandra. |
|
Установка |
/opt/apigee/token |
|
Клиент |
/opt/apigee/customer |
Как узнать текущее значение токена
Прежде чем задать токен в файле .properties для компонента, вы можете определить его текущее значение с помощью следующей команды:
> /opt/apigee/apigee-service/bin/apigee-service comp configure -search token
где comp – название компонента, а 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 для компонента, чтобы задать значение токена. Если файла нет, создайте его.
- Перезапустите компонент.
- Проверьте значение токена.
Например, чтобы задать ограничение на строку запроса для пограничного маршрутизатора:
- Измените файл /opt/apigee/customer/application/router.properties, чтобы задать токен conf_http_HTTPRequest.line.limit:
conf_http_HTTPRequest.line.limit=8k - Перезапустите маршрутизатор Edge:
> /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 в обработчике сообщений. Затем с помощью команды 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+, который содержит путь и название файла конфигурации, в котором находится свойство, а также символ "+".
После перезапуска процессора сообщений проверьте файл /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