Para configurar Edge después de la instalación, usa una combinación de archivos .properties
y utilidades de Edge. Por ejemplo, para configurar TLS/SSL en la IU de Edge, debes editar los archivos .properties
para establecer las propiedades necesarias. Los cambios en los archivos .properties
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 configuración, las claves se denominan tokens. Por lo tanto, para configurar Edge, debes establecer tokens en los archivos .properties
.
El código con configuración permite que los componentes de Edge establezcan valores predeterminados que se envían con el producto, permite que el equipo de instalación anule esa configuración según la topología de instalación y, luego, permite que los clientes anulen las propiedades que elijan.
Si lo consideras una jerarquía, la configuración se organiza de la siguiente manera, y la configuración del cliente tiene la prioridad más alta para anular cualquier configuración del equipo de instaladores o de Apigee:
- Cliente
- Instalador
- Componente
Determina el valor actual de un token
Antes de establecer un valor nuevo para un token en un archivo .properties
, 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 del token conf_http_HTTPRequest.line.limit
del 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 una #
, se comentó y debes usar una sintaxis especial para cambiarlo. Para obtener más información, consulta Configura un token que 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 Cómo ubicar un token.
Archivos de propiedades
Hay archivos de configuración de componentes editables y no editables. En esta sección, se describen esos 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 editar para configurarlos:
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/postgresql.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 esta no existe, puedes crearla en la ubicación mencionada anteriormente.
Además, debes asegurarte de que el archivo de propiedades sea propiedad del usuario de “apigee”:
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 de componentes editables, también hay archivos de configuración que no puedes editar.
Los archivos informativos (no editables) incluyen lo siguiente:
Propietario | Nombre del archivo o directorio |
---|---|
Instalación | /opt/apigee/token |
Componente | /opt/apigee/component_name/conf En el que component_name identifica el componente. Estos son algunos de los valores posibles:
|
Establece un valor de token
Solo puedes modificar los archivos .properties
en el directorio /opt/apigee/customer/application
. Cada componente tiene su propio archivo .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:
- Crea un archivo de texto nuevo en un editor. El nombre del archivo debe coincidir con la lista que se muestra en la tabla anterior para los archivos de clientes.
- 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 del usuario "apigee", usa
chown
para cambiar la propiedad al usuario que ejecuta el servicio de Edge.
Cuando actualizas Edge, se leen los archivos .properties
del directorio /opt/apigee/customer/application
. Es decir, la actualización conservará
las propiedades que establezcas en el componente.
Para establecer el valor de un token, haz lo siguiente:
- Edita el archivo
.properties
del componente. - Agrega o cambia el valor del token. En el siguiente ejemplo, se establece el valor de la propiedad
conf_http_HTTPRequest.line.limit
en "10k":conf_http_HTTPRequest.line.limit=10k
Si el token tiene varios valores, separa cada uno con una coma, como se muestra en el siguiente ejemplo:
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, se agrega al final de la lista.
- 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
- (Opcional) Verifica que el valor del token esté configurado en el valor nuevo con la 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 Cómo determinar el valor actual de un token.
Cómo ubicar 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á comentado
Algunos tokens están comentados en los archivos de configuración de Edge. Si intentas establecer un token que está comentado en un archivo de configuración de instalación o componente, se ignorará tu 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 Message Processor, primero debes usar grep
para que la propiedad determine su token:
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
El comando grep
muestra resultados que incluyen el nombre del token. Observa
cómo el nombre de la propiedad está comentado, como se indica con 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 una sintaxis especial, como se muestra en el siguiente ejemplo:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
En este caso, debes anteponer el nombre de la propiedad con conf/http.properties+
. Esta es la ubicación y el nombre del archivo de configuración que contiene la propiedad, seguido de "+".
Después de reiniciar el procesador de mensajes, 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 de la sección Send Requests de la IU de Trace
En esta sección, se explica cómo configurar el proxy de reenvío para solicitudes desde la sección Solicitudes de envío de la IU de Trace con credenciales de proxy opcionales. Para configurar el proxy de reenvío, sigue estos pasos:
- Edita el
/opt/apigee/customer/application/ui.properties
y asegúrate de queapigee:apigee
sea el propietario del archivo. - Agrega las siguientes anulaciones (que cambian los valores 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!
- Guarda y reinicia la IU clásica.
Agrega un formato de registro personalizado en Apigee Router/Nginx
En algunos casos, hiciste que cambiaras el formato de registro predeterminado del router de Apigee/Nginx o agregar variables. Para actualizar la configuración predeterminada del formato de registro de Apigee Router/Nginx, haz lo siguiente:
- Si no existe, crea un archivo
router.properties
con la ruta que se muestra a continuación:/opt/apigee/customer/application/router.properties
- Agrega el siguiente contenido al archivo
router.properties
para crear una nueva configuración delog_format
con el nombrerouter_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 los valores de configuración predeterminados para
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 las variables de Nginx.
- Reinicia el router para aplicar la nueva configuración:
apigee-service edge-router restart
- Verifica si se agregó la nueva configuración de
log_format
(router_new
) al archivo/opt/nginx/conf.d/0-default.conf
:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- 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
.