Como configurar o Edge

Edge para nuvem privada v4.19.01

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 IU do Edge, edite os arquivos .properties para definir as propriedades necessárias. As mudanças em .properties arquivos exigem que você reinicie o componente do Edge afetado.

A Apigee se refere à técnica de edição de arquivos .properties como código com configuração (às vezes abreviado como CwC). Basicamente, o código com config é uma ferramenta de pesquisa de chave-valor com base em configurações em 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 "config" permite que os componentes do Edge definam valores padrão que são fornecidos com o produto, que a equipe de instalação substitua essas configurações com base na topologia de instalação e permite que os clientes modifiquem as propriedades que escolherem.

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

  1. Cliente
  2. Instalador
  3. 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 dele com 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 para o 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 #, isso significa que ele foi comentado, e é necessário usar uma sintaxe especial para alterá-lo. Para saber mais, consulte Definir um token que está comentado no momento.

Se você não souber o nome completo do token, use uma ferramenta como o grep para pesquisar pelo nome da propriedade ou pela palavra-chave. Para mais informações, consulte Localizar um token.

Arquivos de propriedade

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 configurar esses componentes:

Componente Component Name Arquivo de configuração editável
Cassandra apigee-cassandra /opt/apigee/customer/application/cassandra.properties
interface do Edge edge-ui /opt/apigee/customer/application/ui.properties
SSO de borda 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
Novo UE 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
Quádiz 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, crie-a no local listado acima.

Além disso, você precisa garantir que o arquivo de propriedades pertença 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 dos componentes editáveis, há também arquivos de configuração que não podem ser editados.

Os arquivos informativos (não editáveis) incluem:

Proprietário Nome do 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:

  • 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)

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 dos arquivos .properties.

Para criar um arquivo .properties:

  1. Crie um novo arquivo de texto em um editor. No caso dos arquivos de clientes, o nome do arquivo precisa corresponder à lista mostrada na tabela acima.
  2. Mude o proprietário do arquivo para "apigee:apigee", conforme o seguinte exemplo:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    Se você tiver alterado o usuário que executa o serviço Edge pelo usuário "apigee", use chown para mudar a propriedade para o usuário que está executando o serviço 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 vai reter as propriedades definidas no componente.

Para definir o valor de um token:

  1. Edite o arquivo .properties do componente.
  2. 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 cada um deles 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 é preciso anexar o novo valor ao final da lista.

  3. 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
  4. (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 estão identificados neste guia. No entanto, se você precisar substituir o valor de um token existente com o nome completo ou local que você não tem certeza, use grep para pesquisar o diretório source do componente.

Por exemplo, se você sabe que em uma versão anterior do Edge definiu a propriedade session.maxAge e quer saber o valor do token usado para configurá-la, então 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 interface:

/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 interface.

Defina 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ários em um arquivo de configuração de instalação ou componente, a definiçã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 use 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 no exemplo a seguir:

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

Nesse caso, é preciso 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, seguidos por "+".

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ê verá o conjunto de propriedades na forma:

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