Para configurar o Edge após a instalação, use uma combinação de arquivos .properties
e utilitários do Edge. Por exemplo, para configurar TLS/SSL na IU do Edge, edite arquivos .properties
para definir as propriedades necessárias. As alterações em arquivos .properties
exigem que você reinicie o componente Edge afetado.
A Apigee se refere à técnica de edição de arquivos .properties
como código com
config (às vezes abreviado como CwC). Essencialmente, o código com config é uma ferramenta de pesquisa de chave-valor
baseada em configurações em arquivos .properties
. No código com config, as chaves são chamadas de tokens. Portanto, para configurar o Edge, configure os tokens em arquivos .properties
.
O código com configuração permite que os componentes do Edge definam valores padrão enviados com o produto, permite que a equipe de instalação modifique essas configurações com base na topologia de instalação e permite que os clientes modifiquem as propriedades que escolherem.
Se você pensar nela como uma hierarquia, as configurações serão organizadas da seguinte maneira, com as configurações do cliente tendo a prioridade mais alta para substituir quaisquer configurações da equipe do instalador ou da Apigee:
- Cliente
- Instalador
- Componente
Determinar o valor atual de um token
Antes de definir um novo valor para um token em um arquivo .properties
, determine o valor atual usando o seguinte comando:
/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token
Em que component_name é o nome do componente e token é o token a ser inspecionado.
Esse comando pesquisa a hierarquia dos arquivos .properties
do componente para determinar o valor atual do token.
O exemplo a seguir verifica o valor atual do token conf_http_HTTPRequest.line.limit
do roteador:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
O resultado será semelhante a este:
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Se o valor do token começar com um #
, isso significa que ele foi comentado e você precisa usar uma sintaxe especial para alterá-lo. Para mais informações, consulte Definir um token que está atualmente comentado.
Se você não souber o nome completo do token, use uma ferramenta como grep
para pesquisar pelo nome da propriedade ou pela palavra-chave. Para mais informações, consulte Localizar um token.
Arquivos de propriedades
Há arquivos de configuração de componentes editáveis e não editáveis. Esta seção descreve esses arquivos.
Arquivos de configuração de componentes editáveis
A tabela a seguir lista os componentes da Apigee e os arquivos de propriedades que podem ser editados para configurá-los:
Componente | Component Name | Arquivo de configuração editável |
---|---|---|
Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
Roteador de borda | edge-router |
/opt/apigee/edge-router/conf/load_balancing.properties |
SSO da Apigee | apigee-sso |
/opt/apigee/customer/application/sso.properties |
Servidor de gerenciamento | edge-management-server |
/opt/apigee/customer/application/management-server.properties |
processador de mensagens | edge-message-processor |
/opt/apigee/customer/application/message-processor.properties |
apigee-monit |
apigee-monit |
/opt/apigee/customer/application/monit.properties |
IU clássica (não afeta a nova IU do Edge) | edge-ui |
/opt/apigee/customer/application/ui.properties |
IU do Edge (nova IU somente do Edge; não afeta a IU clássica) | apigee-management-ui |
N/A (use o arquivo de configuração de instalação) |
OpenLDAP | apigee-openldap |
/opt/apigee/customer/application/openldap.properties |
Servidor Postgres | edge-postgres-server |
/opt/apigee/customer/application/postgres-server.properties |
Banco de dados PostgreSQL | apigee-postgresql |
/opt/apigee/customer/application/postgressql.properties |
Servidor Qpid | edge-qpid-server |
/opt/apigee/customer/application/qpid-server.properties |
Qpidd | apigee-qpidd |
/opt/apigee/customer/application/qpidd.properties |
Roteador | edge-router |
/opt/apigee/customer/application/router.properties |
Zookeeper | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
Se você quiser definir uma propriedade em um desses arquivos de configuração de componente, mas ela não existir, é possível criá-la no local listado acima.
Além disso, você precisa garantir que o arquivo de propriedades pertence ao usuário "apigee":
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
Arquivos de configuração de componentes não editáveis
Além dos arquivos de configuração do componente editável, também existem arquivos de configuração que não podem ser editados.
Os arquivos informativos (não editáveis) incluem o seguinte:
Proprietário | Nome de arquivo ou diretório |
---|---|
Instalação | /opt/apigee/token |
Componente | /opt/apigee/component_name/conf Em que component_name identifica o componente. Os valores possíveis incluem:
|
Definir um valor de token
Só é possível modificar os arquivos .properties
no diretório /opt/apigee/customer/application
. Cada componente tem o próprio arquivo .properties
nesse diretório. Por exemplo, router.properties
e management-server.properties
. Para uma lista completa de arquivos de propriedades, consulte Localização de arquivos .properties.
Para criar um arquivo .properties
:
- Crie um novo arquivo de texto em um editor. O nome do arquivo precisa corresponder à lista mostrada na tabela acima para arquivos de clientes.
- Altere o proprietário do arquivo para "apigee:apigee", como mostrado no exemplo a seguir:
chown apigee:apigee /opt/apigee/customer/application/router.properties
Se você alterou o usuário que executa o serviço do Edge a partir do usuário "apigee", use
chown
para alterar a propriedade para o usuário que está executando o serviço do Edge.
Quando você faz upgrade do Edge, os arquivos .properties
no diretório /opt/apigee/customer/application
são lidos. Isso significa que o upgrade
manterá todas as propriedades definidas no componente.
Para definir o valor de um token:
- Edite o arquivo
.properties
do componente. - Adicione ou altere o valor do token. O exemplo a seguir define o valor da propriedade
conf_http_HTTPRequest.line.limit
como "10k":conf_http_HTTPRequest.line.limit=10k
Se o token receber vários valores, separe-os com uma vírgula, conforme mostrado no exemplo a seguir:
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Para adicionar um novo valor a uma lista como essa, normalmente o novo valor é anexado ao final da lista.
- Reinicie o componente:
/opt/apigee/apigee-service/bin/apigee-service component_name restart
Em que component_name é um dos seguintes:
apigee-cassandra
(Cassandra)apigee-openldap
(OpenLDAP)apigee-postgresql
(banco de dados PostgreSQL)apigee-qpidd
(Qpidd)apigee-sso
(SSO de borda)apigee-zookeeper
(ZooKeeper)edge-management-server
(Servidor de gerenciamento)edge-management-ui
(nova IU do Edge)edge-message-processor
(processador de mensagens)edge-postgres-server
(Servidor Postgres)edge-qpid-server
(servidor Qpid)edge-router
(roteador Edge)edge-ui
(IU clássica)
Por exemplo, depois de editar
router.properties
, reinicie o roteador:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (Opcional) Verifique se o valor do token está definido como o novo valor usando a opção
configure -search
. Por exemplo:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Para mais informações sobre
configure -search
, consulte Determinar o valor atual de um token.
Localizar um token
Na maioria dos casos, os tokens que você precisa definir são identificados neste guia. No entanto, se você precisar
modificar o valor de um token cujo nome completo ou local você não tem certeza, use
grep
para pesquisar no diretório source
do componente.
Por exemplo, se você sabe que, em uma versão anterior do Edge, você definiu a propriedade session.maxAge
e quer saber o valor do token usado para defini-la. Em seguida, grep
para a propriedade no diretório /opt/apigee/edge-ui/source
:
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
Você verá um resultado no seguinte formato:
/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}
O exemplo a seguir mostra o valor do token session.maxAge
da IU:
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
A string entre as tags {T}{/T} é o nome do token que pode ser definido no arquivo .properties
da IU.
Definir um token que está comentado
Alguns tokens são comentados nos arquivos de configuração do Edge. Se você tentar definir um token comentado em um arquivo de configuração de instalação ou componente, sua configuração será ignorada.
Para definir o valor de um token comentado em um arquivo de configuração do Edge, use uma sintaxe especial no seguinte formato:
conf/filename+propertyName=propertyValue
Por exemplo, para definir a propriedade chamada HTTPClient.proxy.host
no Processador de mensagens, primeiro grep
para a propriedade determinar o token:
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
O comando grep
retorna resultados que incluem o nome do token. Observe como o nome da propriedade é comentado, conforme indicado pelo prefixo #:
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=
Para definir o valor dessa propriedade, edite /opt/apigee/customer/application/message-processor.properties
, mas use uma sintaxe especial, como mostra o exemplo a seguir:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
Nesse caso, é necessário prefixar o nome da propriedade com conf/http.properties+
. Esse é o local e o nome do arquivo de configuração que contém a propriedade seguida por "+".
Depois de reiniciar o Message Processador, examine o arquivo /opt/apigee/edge-message-processor/conf/http.properties
:
cat /opt/apigee/edge-message-processor/conf/http.properties
No final do arquivo, você verá a propriedade definida, no formato:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
Configurar proxy de encaminhamento para solicitações da seção "Send Requests" da IU do Trace
Nesta seção, explicamos como configurar o proxy de encaminhamento para solicitações da seção "Enviar solicitações" da IU do Trace com credenciais de proxy opcionais. Para configurar o proxy de encaminhamento:
- Edite o
/opt/apigee/customer/application/ui.properties
e verifique se o arquivo pertence aapigee:apigee
. - Adicione as seguintes substituições, alterando valores para sua configuração de proxy específica:
conf_application_http.proxyhost=proxy.example.com conf_application_http.proxyport=8080 conf_application_http.proxyuser=apigee conf_application_http.proxypassword=Apigee123!
- Salve e reinicie a IU clássica.
Adicionar um formato de registro personalizado no roteador da Apigee/Nginx
Em alguns casos, era necessário alterar o formato de registro padrão do Apigee Router/Nginx ou adicionar variáveis. Para atualizar a configuração do formato de registro padrão Apigee Router/Nginx:
- Crie um arquivo
router.properties
, se ele não existir, com o caminho mostrado abaixo:/opt/apigee/customer/application/router.properties
- Adicione o seguinte conteúdo ao arquivo
router.properties
para criar uma nova configuraçãolog_format
com o nomerouter_new
:conf_load_balancing_load.balancing.driver.nginx.global.http.parameters.template.extra=log_format router_new 'time_iso8601\\\\thostname\\\\tremote_addr:remote_port\\\\t'\\\\n\\n 'upstream_addr\\\\trequest_time\\\\t-\\\\t-\\\\t'\\\\n\\n '
status\\\\tupstream_status\\\\trequest_length\\\\t'\\\\n\\n 'body_bytes_sent\\\\t'\\\\n\\n 'request\\\\tupstream_http_x_apigee_message_id\\\\t'\\\\n\\n 'http_user_agent\\\\thost\\thostname-pid-connection-connection_requests\\\\tmy_nginx_var_xff\\t'\\\\n\\n 'upstream_http_x_apigee_fault_flag\\\\tupstream_http_x_apigee_fault_source\\\\tupstream_http_x_apigee_fault_code\\\\t'\\\\n\\n 'upstream_http_x_apigee_fault_policy\\tupstream_http_x_apigee_fault_flow\\tupstream_http_x_apigee_fault_revision\\t'\\\\n\\n 'upstream_http_x_apigee_dp_color\\\\tmy_x_apigee_target_latency\\\\t'\\\\n\\n 'upstream_http_x_apigee_proxy\\\\tupstream_http_x_apigee_proxy_basepath\\\\t'\\\\n\\n 'self_region\\\\tself_pod\\\\tself_color\\\\tssl_protocol\\\\tssl_client_verify\\\\tssl_session_id\\\\tssl_session_reused\\\\tupstream_pod\\\\tupstream_region';\\\\n\\n\n conf_load_balancing_load.balancing.driver.nginx.access.log={conf_load_balancing_load.balancing.driver.nginx.log.dir}/{org}~{env}.{port}_access_log router_new Atualize as variáveis nos comandos acima conforme apropriado. Você pode encontrar os valores de configuração padrão para
log_format
no arquivo abaixo:/opt/apigee/edge-router/conf/load_balancing.properties
Uma lista de variáveis Nginx é exibida em http://nginx.org/en/docs/varindex.html.
- Reinicie o roteador para aplicar a nova configuração:
apigee-service edge-router restart
- Verifique se a nova configuração
log_format
(router_new
) foi adicionada ao arquivo/opt/nginx/conf.d/0-default.conf
:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- Envie algumas solicitações de API para um proxy de API e verifique o novo formato de registro no arquivo
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file