Cómo configurar Edge

Para configurar Edge después de la instalación, usa una combinación de archivos .properties y Edge. Por ejemplo, para configurar TLS/SSL en la IU de Edge, edita .properties para establecer las propiedades necesarias. Cambios en .properties archivos requieren que reinicies el componente de Edge afectado.

Apigee se refiere a la técnica de edición de archivos .properties como código con configuración (a veces abreviado como CwC). En esencia, el código con configuración es una herramienta de búsqueda de clave-valor basada en la configuración de los archivos .properties. En el código con config, las claves se denominan tokens. Por lo tanto, para configurar Edge, debes establecer tokens en .properties. archivos.

El código con configuración permite que los componentes de Edge establezcan valores predeterminados que se envían con el permite que el equipo de instalación anule esa configuración según la topología de instalación y permite que los clientes anulen cualquier propiedad que elijan.

Si lo consideras una jerarquía, entonces la configuración está organizada de la siguiente manera, con la estructura configuración con la prioridad más alta que anule cualquier configuración del equipo instalador o Apigee:

  1. Cliente
  2. Instalador
  3. Componente

Determina el valor actual de un token

Antes de establecer un valor nuevo para un token en un archivo .properties, haz lo siguiente: primero debes determinar su valor actual con el siguiente comando:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

En el ejemplo anterior, component_name es el nombre del componente y token es el token que se inspeccionará.

Este comando busca en la jerarquía de los archivos .properties del componente para determinar el valor actual del token.

En el siguiente ejemplo, se verifica el valor actual de conf_http_HTTPRequest.line.limit. para el router:

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

Deberías ver un resultado similar al siguiente:

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

Si el valor del token comienza con #, significa que se marcó como comentario y debes usarlo. una sintaxis especial para cambiarlo. Para obtener más información, consulta Configura un token que actualmente esté marcado como comentario.

Si no conoces el nombre completo del token, usa una herramienta como grep para buscar por el nombre de la propiedad o la palabra clave. Para obtener más información, consulta Ubica un token.

Archivos de propiedades

Hay archivos de configuración de componentes que se pueden editar y no. En esta sección, se describen estas archivos.

Archivos de configuración de componentes editables

En la siguiente tabla, se enumeran los componentes de Apigee y los archivos de propiedades que puedes usar edita para configurar esos componentes:

Componente Nombre del componente Archivo de configuración modificable
Cassandra apigee-cassandra /opt/apigee/customer/application/cassandra.properties
SSO de Apigee apigee-sso /opt/apigee/customer/application/sso.properties
Servidor de administración edge-management-server /opt/apigee/customer/application/management-server.properties
Message Processor edge-message-processor /opt/apigee/customer/application/message-processor.properties
apigee-monit apigee-monit /opt/apigee/customer/application/monit.properties
IU clásica (no afecta a la nueva IU de Edge) edge-ui /opt/apigee/customer/application/ui.properties
IU de Edge (solo la nueva IU de Edge; no afecta a la IU clásica) apigee-management-ui N/A (usa el archivo de configuración de instalación)
OpenLDAP apigee-openldap /opt/apigee/customer/application/openldap.properties
Servidor de Postgres edge-postgres-server /opt/apigee/customer/application/postgres-server.properties
Base de datos de 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
Router edge-router /opt/apigee/customer/application/router.properties
Zookeeper apigee-zookeeper /opt/apigee/customer/application/zookeeper.properties

Si deseas establecer una propiedad en uno de estos archivos de configuración de componentes, pero no lo hace existe, puedes crearlo en la ubicación indicada anteriormente.

Además, debes asegurarte de que el usuario "apigee" sea el propietario del archivo de propiedades:

chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties

Archivos de configuración de componentes no editables

Además de los archivos de configuración editables de los componentes, también hay archivos de configuración que no se puede editar.

Los archivos informativos (no editables) incluyen lo siguiente:

Propietario Nombre de archivo o directorio
Instalación
/opt/apigee/token
Componente
/opt/apigee/component_name/conf

Donde component_name identifica el componente. Estos son algunos de los valores posibles:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (base de datos de PostgreSQL)
  • apigee-qpidd (trinquete)
  • apigee-sso (SSO de Edge)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (servidor de administración)
  • edge-management-ui (nueva IU de Edge)
  • edge-message-processor (Procesador de mensajes)
  • edge-postgres-server (servidor de Postgres)
  • edge-qpid-server (servidor Qpid)
  • edge-router (router perimetral)
  • edge-ui (IU clásica)

Establece un valor del token

Solo puedes modificar los archivos .properties en el /opt/apigee/customer/application. Cada componente tiene su propio .properties en ese directorio. Por ejemplo, router.properties. y management-server.properties. Para obtener una lista completa de los archivos de propiedades, consulta Ubicación de archivos .properties.

Para crear un archivo .properties, sigue estos pasos:

  1. Crea un nuevo archivo de texto en un editor. El nombre del archivo debe coincidir con la lista que aparece en el de la tabla anterior para los archivos de los clientes.
  2. Cambia el propietario del archivo a “apigee:apigee”, como se muestra en el siguiente ejemplo:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    Si cambiaste el usuario que ejecuta el servicio de Edge desde el entorno de “Apigee” usuario, utiliza chown para cambiar la propiedad del usuario que ejecuta Edge servicio.

Cuando actualizas Edge, se leen los archivos .properties del directorio /opt/apigee/customer/application. Eso significa que la actualización conservar las propiedades que establezcas en el componente.

Para establecer el valor de un token, haz lo siguiente:

  1. Edita el archivo .properties del componente.
  2. Agrega o cambia el valor del token. En el siguiente ejemplo, se establece el valor del conf_http_HTTPRequest.line.limit a "10k":
    conf_http_HTTPRequest.line.limit=10k

    Si el token acepta múltiples valores, separa cada valor con una coma, como se muestra a continuación ejemplo muestra:

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

    Para agregar un valor nuevo a una lista como esta, por lo general, debes agregar el valor nuevo al final. de la lista.

  3. Reinicia el componente:
    /opt/apigee/apigee-service/bin/apigee-service component_name restart

    En el ejemplo anterior, component_name es una de las siguientes opciones:

    • apigee-cassandra (Cassandra)
    • apigee-openldap (OpenLDAP)
    • apigee-postgresql (base de datos de PostgreSQL)
    • apigee-qpidd (trinquete)
    • apigee-sso (SSO de Edge)
    • apigee-zookeeper (ZooKeeper)
    • edge-management-server (servidor de administración)
    • edge-management-ui (nueva IU de Edge)
    • edge-message-processor (Procesador de mensajes)
    • edge-postgres-server (servidor de Postgres)
    • edge-qpid-server (servidor Qpid)
    • edge-router (router perimetral)
    • edge-ui (IU clásica)

    Por ejemplo, después de editar router.properties, reinicia el router:

    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  4. Comprueba que el valor del token tenga el valor nuevo con el comando Opción configure -search. Por ejemplo:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
    .

    Para obtener más información sobre configure -search, consulta Determina el valor actual de un token.

Ubica un token

En la mayoría de los casos, los tokens que debes configurar se identifican en esta guía. Sin embargo, si necesitas anular el valor de un token existente cuyo nombre completo o ubicación no conoces, usa grep para buscar en el directorio source del componente.

Por ejemplo, si sabes que en una versión anterior de Edge configuraste la propiedad session.maxAge y quieres saber el valor del token que se usó para configurarla, grep la propiedad en el directorio /opt/apigee/edge-ui/source:

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

Deberías ver un resultado con el siguiente formato:

/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}

En el siguiente ejemplo, se muestra el valor del token session.maxAge de la IU:

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

La cadena entre las etiquetas {T}{/T} es el nombre del token que puedes configurar en el archivo .properties de la IU.

Establece un token que actualmente esté marcado como comentario

Algunos tokens están comentados en los archivos de configuración de Edge. Si intentas establecer un token como comentario en un archivo de configuración de instalación o componente, se ignora la configuración.

Para establecer el valor de un token que está comentado en un archivo de configuración de Edge, usa la sintaxis especial en el siguiente formato:

conf/filename+propertyName=propertyValue

Por ejemplo, para configurar la propiedad llamada HTTPClient.proxy.host en el campo Message Procesador, primero grep para la propiedad para determinar su token:

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

El comando grep muestra resultados que incluyen el nombre del token. Aviso Cómo se comenta el nombre de la propiedad, como lo indica el prefijo #:

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 establecer el valor de esta propiedad, edita /opt/apigee/customer/application/message-processor.properties, pero usa un atributo especial sintaxis, como se muestra en el siguiente ejemplo:

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

En este caso, debes anteponer conf/http.properties+ al nombre de la propiedad. Esta es la ubicación y el nombre del archivo de configuración que contiene la propiedad, seguido de "+".

Después de reiniciar el Message Processor, examina el archivo /opt/apigee/edge-message-processor/conf/http.properties

cat /opt/apigee/edge-message-processor/conf/http.properties

Al final del archivo, verás el conjunto de propiedades en el siguiente formato:

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

Configura el proxy de reenvío para las solicitudes desde la sección Enviar solicitudes de la IU de Trace

En esta sección, se explica cómo configurar el proxy de reenvío para las solicitudes del Sección Enviar solicitudes de la IU de Trace con credenciales de proxy opcionales. Para configurar el proxy de reenvío, haz lo siguiente:

  1. Edita el /opt/apigee/customer/application/ui.properties y asegúrate de que el archivo esté propiedad de apigee:apigee.
  2. Agrega las siguientes anulaciones (valores de cambio a tu configuración 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!
  3. Guarda y reinicia la IU clásica.

Agrega un formato de registro personalizado en Apigee Router/Nginx

En algunos casos, es posible que debas cambiar el formato de registro predeterminado de Apigee Router/Nginx o agregar variables. Actualizar el formato de registro predeterminado del router/Nginx de Apigee actual:

  1. Si no existe, crea un archivo router.properties con la ruta que se muestra a continuación:
    /opt/apigee/customer/application/router.properties
  2. Agrega el siguiente contenido al archivo router.properties. para crear una nueva configuración de log_format con el nombre router_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

    Actualiza las variables en los comandos anteriores según corresponda. Puedes encontrar de configuración de log_format en el siguiente archivo:

    /opt/apigee/edge-router/conf/load_balancing.properties

    En http://nginx.org/en/docs/varindex.html se muestra una lista de variables Nginx.

  3. Reinicia el router para aplicar la nueva configuración:
    apigee-service edge-router restart
  4. Verifica si la nueva configuración de log_format Se agregó (router_new) al archivo /opt/nginx/conf.d/0-default.conf:
        
    cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
  5. Envía algunas solicitudes a la API a un proxy de API y verifica el nuevo formato de registro en el archivo
    /opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file