Cómo configurar Edge

Edge para la nube privada v4.18.05

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 a fin de 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 editar archivos .properties como código con configuración. 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 cualquier propiedad 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 instalador o Apigee:

  1. Cliente
  2. Instalador
  3. Apigee

Cómo usar archivos .properties

Como cliente, solo puedes modificar los archivos .properties del directorio /opt/apigee/customer/application. Cada componente tiene su propio archivo .properties en ese directorio. Por ejemplo, router.properties y management-server.properties.

Por ejemplo, para crear un archivo .properties, haz lo siguiente:

  1. Crea el archivo en un editor como cualquier usuario.
  2. Usa chown para cambiar el propietario del archivo a “apigee:apigee” o, si cambiaste el usuario que ejecuta el servicio Edge del usuario de “apigee”, cambia el nombre del archivo al usuario que ejecuta el servicio de Edge.

Si quieres configurar una propiedad para un componente, edita el archivo .properties correspondiente para configurar un token y, luego, reinicia el componente:

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

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

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

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

Ubicación de los archivos .properties

Hay tres directorios de nivel superior para los archivos .properties de los componentes de Edge: instalación, propietario y clientes. Las ubicaciones predeterminadas se muestran en la siguiente tabla:

Propietario Directorio raíz del token predeterminado
Componente
/opt/apigee/component_name/conf

Donde component_name identifica el componente. Entre los valores posibles, se incluyen los siguientes:

  • 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)
Instalación
/opt/apigee/token
Cliente
/opt/apigee/customer

Determina el valor actual de un token

Antes de configurar un token en el archivo .properties para el componente, puedes determinar su valor actual con el siguiente comando:

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

Donde 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 para determinar el valor actual del token.

Por ejemplo, para verificar el valor actual del token conf_http_HTTPRequest.line.limit del router, haz lo siguiente:

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

Deberías ver un resultado como el siguiente:

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

Configura tokens en archivos .properties

Sigue estos pasos para anular el valor de un token:

  1. Edita el archivo .properties para que el componente establezca el valor del token. Si el archivo no existe, créalo.
  2. Reinicia el componente.
  3. Verifica el valor del token.

Por ejemplo, para establecer el límite de línea de solicitud del router perimetral, sigue estos pasos:

  1. Edita el archivo /opt/apigee/customer/application/router.properties para configurar el token conf_http_HTTPRequest.line.limit:
    conf_http_HTTPRequest.line.limit=8k
  2. Reinicia el router perimetral:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Verifica el valor del token:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Establece un token que tome múltiples valores

Algunos tokens toman una lista de valores separados por comas. Por ejemplo, el token conf_security_rbac.restricted.resources toma una lista de URI restringidas para que solo el administrador del sistema pueda llamarlas. Para ver el valor de conf_security_rbac.restricted.resources, haz lo siguiente:

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

El resultado contiene lo siguiente:

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

Para establecer un token que tome una lista de valores, agrega los valores nuevos al valor actual del token en el archivo .properties. Por lo tanto, para agregar el URI /myuri/* a conf_security_rbac.restricted.resources, edita el archivo /opt/apigee/customer/application/management-server.properties como se muestra a continuación:

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

Ubica un token

En la mayoría de los casos, los tokens que debes establecer se identifican en esta guía. Sin embargo, si necesitas determinar el token que se usa para anular una propiedad, realiza un grep en la carpeta source del componente.

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

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

Deberías ver un resultado en el siguiente formato:

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

La string entre las etiquetas {T}{/T} es el token que estableces en el archivo .properties.

Configura un token que esté marcado como comentario

Algunos tokens están comentados en los archivos de configuración de Edge. Si intentas configurar un token marcado como comentario, se ignora la configuración.

Para establecer un token comentado, debes usar una sintaxis especial de la siguiente forma:

conf/file.extension+propertyName=propertyValue

Por ejemplo, deseas establecer la propiedad llamada HTTPClient.proxy.host en el procesador de mensajes. Luego, ejecuta grep para la propiedad a fin de determinar su token:

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

El comando grep muestra los resultados en un formato que incluye el valor del token. Observa cómo se comenta el nombre de la propiedad, como lo indica el prefijo # en el nombre de la propiedad:

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 configurar la propiedad, edita /opt/apigee/customer/application/message-processor.properties a fin de establecerla de la siguiente manera:

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

Observa cómo el nombre de la propiedad tiene el prefijo conf/http.properties+, la ubicación y el nombre del archivo de configuración que contiene la propiedad, seguidos de "+".

Después de reiniciar 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 con el siguiente formato:

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