Edge for Private Cloud версии 4.17.01
Для настройки 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.
- Создайте файл в редакторе от имени любого пользователя.
- Смените владельца файла на 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 для компонента, чтобы задать значение токена. Если такого файла нет, создайте его.
- Перезапустите компонент.
- Проверьте значение токена.
Например, чтобы установить ограничение строки запроса для Edge Router:
- Измените файл /opt/apigee/customer/application/router.properties, чтобы задать токен conf_http_HTTPRequest.line.limit:
conf_http_HTTPRequest.line.limit=8k - Перезапустите Edge Router:
> /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=yhost.name.com