Como configurar o Edge

Edge para nuvem privada v4.18.05

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 o TLS/SSL na interface do Edge, edite arquivos .properties para definir as propriedades necessárias. As mudanças nos arquivos .properties exigem que você reinicie o componente do Edge afetado.

O Apigee se refere à técnica de edição de arquivos .properties como código com configuração. Essencialmente, o código com configuração é uma ferramenta de pesquisa de chave/valor baseada nas configurações dos arquivos .properties. No código com a configuração, as chaves são chamadas de tokens. Portanto, para configurar o Edge, defina tokens em arquivos .properties.

O código com configuração permite que os componentes do Edge definam valores padrão fornecidos com o produto, permite que a equipe de instalação modifique essas configurações com base na topologia da instalação e permite que os clientes modifiquem as propriedades que eles escolherem.

Se você pensar nisso como uma hierarquia, as configurações serão organizadas da seguinte maneira, com as configurações do cliente tendo a maior prioridade para substituir qualquer configuração da equipe de instalação ou da Apigee:

  1. Cliente
  2. Instalador
  3. Apigee

Como usar arquivos .properties

Como cliente, você só pode 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.

Por exemplo, para criar um arquivo .properties:

  1. Crie o arquivo em um editor como qualquer usuário.
  2. Use chown para mudar o proprietário do arquivo para "apigee:apigee" ou, se você mudou o usuário que executa o serviço Edge do usuário "apigee", use chown para o arquivo para o usuário que está executando o serviço Edge.

Para definir uma propriedade para um componente, edite o arquivo .properties correspondente para definir um token e reinicie o componente:

/opt/apigee/apigee-service/bin/apigee-service component restart

Por exemplo, depois de editar router.properties, reinicie o roteador:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Quando você faz upgrade do Edge, os arquivos .properties no diretório /opt/apigee/customer/application são lidos. Isso significa que o upgrade vai manter todas as propriedades definidas no componente.

Local dos arquivos .properties

Há três diretórios de nível superior para arquivos .properties de componentes do Edge: instalação, proprietário e clientes. Os locais padrão são mostrados na tabela a seguir:

Proprietário Diretório raiz de token padrão
Componente
/opt/apigee/component_name/conf

Em que component_name identifica o componente. Os valores possíveis incluem:

  • 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)
Instalação
/opt/apigee/token
Cliente
/opt/apigee/customer

Determinar o valor atual de um token

Antes de definir um token no arquivo .properties para o componente, determine primeiro 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 de arquivos .properties para determinar o valor atual do token.

Por exemplo, para verificar o valor atual do token conf_http_HTTPRequest.line.limit para o roteador:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Você verá a saída no formulário:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

Definir tokens em arquivos .properties

Para substituir o valor de um token:

  1. Edite o arquivo .properties para que o componente defina o valor do token. Se o arquivo não existir, crie-o.
  2. Reinicie o componente.
  3. Verifique o valor do token.

Por exemplo, para definir o limite de linha de solicitação do roteador Edge:

  1. Edite o arquivo /opt/apigee/customer/application/router.properties para definir o token conf_http_HTTPRequest.line.limit:
    conf_http_HTTPRequest.line.limit=8k
  2. Reinicie o roteador de borda:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Verifique o valor do token:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Definir um token que recebe vários valores

Alguns tokens usam uma lista de valores separados por vírgulas. Por exemplo, o token conf_security_rbac.restricted.resources usa uma lista de URIs restrita para que apenas o administrador do sistema possa fazer chamadas. Para conferir o valor de conf_security_rbac.restricted.resources:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

A saída contém o seguinte:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

Para definir um token que recebe uma lista de valores, anexe novos valores ao valor atual do token no arquivo .properties. Portanto, para adicionar o URI /myuri/* a conf_security_rbac.restricted.resources, edite o arquivo /opt/apigee/customer/application/management-server.properties, conforme mostrado abaixo:

conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

Localizar um token

Na maioria dos casos, os tokens que você precisa definir são identificados neste guia. No entanto, se você precisar determinar o token usado para substituir uma propriedade, execute um grep na pasta source do componente.

Por exemplo, se você souber que em uma versão anterior do Edge definiu a propriedade session.maxAge e quiser saber o valor do token usado para configurá-la, grep para a propriedade no diretório /opt/apigee/edge-ui/source:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

Você vai encontrar um resultado no formulário:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

A string entre as tags {T}{/T} é o token que você definiu no arquivo .properties.

Definir um token que está comentado no momento

Alguns tokens são comentados nos arquivos de configuração do Edge. Se você tentar definir um token com comentário, a configuração será ignorada.

Para definir um token comentado, use uma sintaxe especial no formato:

conf/file.extension+propertyName=propertyValue

Por exemplo, você quer definir a propriedade HTTPClient.proxy.host no processador de mensagens. Em seguida, você grep para a propriedade para determinar o token:

cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *

O comando grep retorna resultados no formulário que inclui o valor do token. Observe como o nome da propriedade está comentado, conforme indicado pelo prefixo # no nome da propriedade:

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 a propriedade, edite /opt/apigee/customer/application/message-processor.properties para defini-la como:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

Observe como o nome da propriedade tem o prefixo conf/http.properties+, o local e o nome do arquivo de configuração que contém a propriedade, seguido de "+".

Depois de reiniciar o processador de mensagens, 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ê vai encontrar o conjunto de propriedades no formato:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com