Estás viendo la documentación de Apigee Edge.
Ir a la
documentación de Apigee X. info
Anula la implementación de un proxy de destinos alojados
Cuando anulas la implementación de un proxy de Edge que incluye una aplicación de destinos alojados, se anula la implementación de la app de destinos alojados asociada, pero no se borra la imagen de la aplicación subyacente. Si vuelves a implementar el proxy, se vuelve a implementar la app de destinos alojados.
Borra un proxy de destinos alojados
Después de borrar un proxy de destinos alojados, las instancias de entorno de ejecución subyacentes dejarán de ejecutarse en un período determinado. Sin embargo, el código de la aplicación persistirá.
Accede a los archivos de registro
Los archivos de registro son útiles para depurar y solucionar problemas. Puedes ver dos tipos de archivos de registro para una implementación de destinos alojados:
- Registro de compilación : Muestra el resultado relacionado con la implementación y la compilación de una app de destinos alojados.
- Registro de entorno de ejecución : Muestra el resultado relacionado con la app de destinos alojados en ejecución. Los registros de entorno de ejecución se limitan al entorno y muestran información de registro para la revisión del proxy implementada actualmente.
Accede a los registros desde la IU de Edge
- Ve a apigee.com/edge.
- Ingresa tus credenciales de acceso y haz clic en Acceder.
- Selecciona Desarrollar > Proxies de API en el menú de navegación lateral.
- Selecciona el proxy para el que deseas ver los registros.
- Haz clic en la pestaña Desarrollar.
- Para ver el registro de compilación, haz clic en Registros de compilación.
- Para ver el registro de entorno de ejecución, haz clic en Registros de entorno de ejecución.
Accede a los registros con la API
También puedes usar una API de Edge para recuperar registros de destinos alojados. Para obtener más detalles, consulta Obtén registros de Node.js almacenados en caché.
Usa un repositorio de npm privado
En esta sección, se explica cómo implementar un proxy de Node.js en destinos alojados en los casos en los que usas un repositorio de npm privado en tu entorno de desarrollo.
Qué debes saber sobre el uso de un repositorio privado
Cuando implementas una app de Node.js en Edge, todas las dependencias de tu proyecto se importan automáticamente
como parte del proceso de implementación.
Básicamente, los destinos alojados ejecutan npm install en tu código cuando se implementa.
Sin embargo, si usas un repositorio de npm privado en tu entorno de desarrollo, las dependencias privadas
no se pueden resolver en la nube. En
este caso, la solución es usar la opción --bundled-dependencies cuando usas la
utilidad de implementación apigeetool. Consulta también
Implementa Node.js desde tu sistema a Edge.
Cuando usas la marca --bundled-dependencies en apigeetool, tu app de Node.js se subirá a destinos alojados, y todos los archivos locales o privados que se enumeren en el array bundledDependencies en package.json se comprimirán y se subirán con el paquete.
Aunque no es una situación común, ten en cuenta que, si duplicas un repositorio de npm público de forma interna, tu implementación fallará
si el paquete de implementación incluye un archivo .npmrc o package-lock.json que apunte
a tu duplicado privado. En este caso, asegúrate de omitir .npmrc o package-lock.json
de tu paquete de proxy que deseas implementar.
Realiza la implementación con un repositorio de npm privado
Para usar los módulos proporcionados desde un repositorio de npm privado, sigue estos pasos:
- Accede a npm:
npm login
- Obtén un token de autenticación de npm:
- Ubica tu .npmrc (debe estar en ~/.npmrc).
- En tu .npmrc, anota el token al final de la línea que se ve de la siguiente manera:
//registry.npmjs.org/:_authToken=**** - O usa los comandos
npm token <list | create | revoke>para enumerar, crear o revocar un token de autenticación. Consulta la documentación de npm-token para obtener más detalles. - Accede a la página de configuración de mapas de clave-valor, como se describe a continuación.
Edge
Para acceder a la página de configuración de mapas de clave-valor con la IU de Edge, haz lo siguiente:
- Accede a apigee.com/edge.
- Selecciona Administrador > Entornos > Mapas de clave-valor en la barra de navegación izquierda.
Edge clásico (nube privada)
Para acceder a la página de configuración de mapas de clave-valor con la IU de Edge clásico, haz lo siguiente:
- Accede a
http://ms-ip:9000, donde ms-ip es la dirección IP o el nombre de DNS del nodo del servidor de administración. - Selecciona APIs > Configuración del entorno > Mapas de clave-valor en la barra de navegación superior.
- Haz clic en + Mapa de clave-valor.
- En el diálogo Nuevo mapa de clave-valor, ingresa un nombre y selecciona Encriptado.
- Haz clic en Agregar.
- Agrega el token de autenticación que ubicaste o creaste anteriormente como una entrada nueva en cada uno de los KVM que acabas de crear.
- En tu app.yaml archivo, agrega una entrada que haga referencia al KVM y a la clave asociada con el token de autenticación de npm. Debería verse algo similar a esto:
- El atributo name de nivel superior corresponde al nombre de la variable de entorno que se creará.
- El name en valueRef corresponde al KVM que creaste anteriormente.
- El atributo key corresponde a la clave que se asigna al token de npm que agregaste al KVM.
- Crea un archivo .npmrc en el mismo directorio que tu package.json. Este
archivo debería verse de manera similar a lo siguiente:
o, si no usas//registry.npmjs.org/:_authToken=${NPM_TOKEN}registry.npmjs.orgpuedes establecer el permiso en el archivo .npmrc agregando una línea como esta@myscope:registry=https://mycustomregistry.example.orgConsulta también la documentación de npmrc. - Sube o actualiza tu proxy de Node.js con los archivos .npmrc y app.yaml incluidos.
- Asegúrate de que tu proxy nuevo o actualizado se implemente y funcione con el módulo de repositorio privado deseado.
- Si el proxy no se implementa, consulta los registros de compilación para ver si falló la instalación del módulo de npm privado. De ser así, debes seguir estos pasos:
- En la pestaña Desarrollar, asegúrate de que esté presente el archivo .npmrc.
- Asegúrate de que tu token sea válido (intenta instalar el módulo de forma local con el token presente en el KVM).
- Si usas un alcance personalizado, asegúrate de que esté configurado.
env:
- name: NPM_TOKEN
valueRef:
name: npm_store
key: private_tokenDonde:
Especifica la versión de npm para las dependencias agrupadas
De forma predeterminada, se usa npm v4 para instalar dependencias agrupadas en el entorno de destinos alojados.
Sin embargo, si deseas usar una versión diferente de npm, puedes especificarla en la NPM_VERSION
variable de entorno. Puedes configurar esta variable en el archivo de manifiesto de la aplicación. Consulta Elementos del archivo de manifiesto para obtener más detalles.
Si usas dependencias agrupadas y no especificas NPM_VERSION, los destinos alojados
usan npm v4 de forma predeterminada. Si no usas dependencias agrupadas, se usa la versión de npm que se incluye
en el entorno de ejecución de Node.js especificado.
Ejemplo de dependencias agrupadas
Para obtener un ejemplo que demuestre la función de dependencias agrupadas con destinos alojados, consulta Cómo crear una aplicación de Node.js con funciones alojadas usando módulos personalizados.Agrega un extremo de verificación de estado
Tienes la opción de implementar un extremo de verificación de estado para tu aplicación de Node.js. Apigee usa este extremo cuando se inicia tu aplicación de Node.js para verificar que la aplicación esté en funcionamiento en el contenedor.
De forma predeterminada, el extremo que espera Apigee es /health. Puedes cambiar el extremo predeterminado
si especificas el extremo en una variable de entorno llamada
HOSTED_TARGET_HEALTH_CHECK_PATH. Puedes configurar esta variable en el archivo de manifiesto de la aplicación. Consulta Elementos del archivo de manifiesto para obtener más detalles.
No es obligatorio implementar un extremo de verificación de estado. Sin embargo, si lo haces, ten en cuenta lo siguiente:
- Si tu aplicación se cierra cuando Apigee alcanza el extremo, la aplicación no se iniciará como se espera.
- No hay problema si tu extremo muestra un estado HTTP 404 No encontrado. El
/healthoHOSTED_TARGET_HEALTH_CHECK_PATHsolo se usa para verificar si tu aplicación se está ejecutando. Se ignora la respuesta real.
Cambia la ubicación de la caché de npm
Las versiones más recientes de Node.js usan una versión de npm que usa /root/.npm para la caché de npm.
Esta ubicación presenta un problema para los destinos alojados porque la ubicación del directorio es de solo lectura
ya que el entorno de ejecución de destinos alojados usa un sistema de archivos tmpfs en el que solo se puede escribir /tmp.
Para solucionar este problema, puedes configurar la variable de entorno npm_config_cache en
el archivo app.yamlde tu aplicación (el archivo de manifiesto)
en un directorio dentro de /tmp. Por ejemplo:
runtime: node
application: my-express-app
env:
- name: npm_config_cache
value: /tmp/.npm
- name: NODE_ENV
value: production
- name: LOG_LEVEL
value: 3
Ejecuta tu aplicación sin npm
De forma predeterminada, los destinos alojados usan npm start para ejecutar tu aplicación de destinos alojados. Sin embargo,
en la tarea anterior, analizamos un problema con el uso de npm, ya que las versiones más recientes intentarán usar
/root/.npm para la caché de npm, que no se puede escribir y hace que falle el inicio de tu destino alojado. Si bien la tarea anterior solucionará este problema, otra opción sería
ejecutar tu aplicación sin npm. Para ello, puedes usar los valores command y
args en el archivo app.yaml de tu aplicación (el archivo de manifiesto)
para ejecutar tu destino alojado directamente con node index.js. Por ejemplo:
runtime: node
application: my-express-app
command: node
args:
- index.js
env:
- name: NODE_ENV
value: production
- name: LOG_LEVEL
value: 3
node index.js es solo un
ejemplo.