Cómo configurar Edge

Edge for Private Cloud 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 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 editar archivos .properties como código con configuración. En esencia, el código con configuración es una herramienta de búsqueda de par 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 instalación o Apigee:

  1. Cliente
  2. Instalador
  3. Apigee

Cómo usar archivos .properties

Como cliente, 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.

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 de Edge del usuario "apigee", cambia el propietario del archivo al usuario que ejecuta el servicio de Edge.

Para establecer una propiedad para un componente, edita el archivo .properties correspondiente para establecer 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. Esto significa que la actualización retenido todas las propiedades que establezcas en el componente.

Ubicación de los archivos .properties

Existen 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 de tokens 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 establecer 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

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

Establece tokens en archivos .properties

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

  1. Edita el archivo .properties del componente para establecer 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íneas de solicitud del router perimetral, haz lo siguiente:

  1. Edita el archivo /opt/apigee/customer/application/router.properties para establecer 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 varios valores

Algunos tokens toman una lista de valores separados por comas. Por ejemplo, el token conf_security_rbac.restricted.resources toma una lista de URIs restringida para que solo el administrador del sistema pueda llamarlos. 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/*

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 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 quieres saber el valor del token que se usó para configurarla, 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 formulario como el siguiente:

/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 token que estableces en el archivo .properties.

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 marcado como comentario, se ignora la configuración.

Para establecer un token que está 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 para determinar su token:

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

El comando grep muestra resultados en el formato que incluye el valor del token. Observa cómo el nombre de la propiedad está comentado, como se indica con 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 establecer la propiedad, edita /opt/apigee/customer/application/message-processor.properties para configurarla 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, 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