Как настроить Эдж

Edge для частного облака v4.18.05

Чтобы настроить Edge после установки, вы используете комбинацию файлов .properties и утилит Edge. Например, чтобы настроить TLS/SSL в пользовательском интерфейсе Edge, вы редактируете файлы .properties , чтобы задать необходимые свойства. Изменения в файлах .properties требуют перезапуска затронутого компонента Edge.

Apigee относится к технике редактирования файлов .properties как к коду с config . По сути, код с конфигурацией — это инструмент поиска ключей и значений на основе настроек в файлах .properties . В коде с конфигурацией ключи называются токенами . Поэтому для настройки Edge вы устанавливаете токены в файлах .properties .

Код с конфигурацией позволяет компонентам Edge устанавливать значения по умолчанию, которые поставляются с продуктом, позволяет команде установки переопределять эти параметры на основе топологии установки, а затем позволяет клиентам переопределять любые выбранные ими свойства.

Если рассматривать это как иерархию, то настройки расположены следующим образом: настройки клиента имеют наивысший приоритет и переопределяют любые настройки команды установщиков или Apigee:

  1. Клиент
  2. Установщик
  3. Апигей

Как использовать файлы .properties

Как клиент вы можете изменять только файлы .properties в каталоге /opt/apigee/customer/application . Каждый компонент имеет свой собственный файл .properties в этом каталоге. Например, router.properties и management-server.properties .

Например, чтобы создать файл .properties :

  1. Создайте файл в редакторе от имени любого пользователя.
  2. Используйте chown , чтобы изменить владельца файла на «apigee:apigee» или, если вы изменили пользователя, запускающего службу Edge, с пользователя «apigee», chown для файла на пользователя, который запускает службу 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: установка, владелец и клиенты. Местоположение по умолчанию показано в следующей таблице:

Владелец Корневой каталог токена по умолчанию
Компонент
/opt/apigee/component_name/conf

Где component_name идентифицирует компонент. Возможные значения включают в себя:

  • apigee-cassandra (Кассандра)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (база данных PostgreSQL)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (Сервер управления)
  • edge-management-ui (новый пользовательский интерфейс Edge)
  • edge-message-processor (процессор сообщений)
  • edge-postgres-server (сервер Postgres)
  • edge-qpid-server (сервер Qpid)
  • edge-router (Edge Router)
  • edge-ui (классический пользовательский интерфейс)
Установка
/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.

Чтобы переопределить значение токена:

  1. Отредактируйте файл .properties для компонента, чтобы установить значение токена. Если файл не существует, то создайте его.
  2. Перезапустите компонент.
  3. Проверьте стоимость токена.

Например, чтобы установить ограничение строки запроса для Edge Router:

  1. Отредактируйте файл /opt/apigee/customer/application/router.properties , чтобы установить токен conf_http_HTTPRequest.line.limit :
    conf_http_HTTPRequest.line.limit=8k
  2. Перезапустите Edge Router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Проверьте стоимость токена:
    /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