Puede instalar el agente PHP en un contenedor Docker u otro contenedor para monitor una o más de sus aplicaciones PHP. Esto es compatible con contenedores que cumplen con los requisitos y la compatibilidad del agente PHP estándar.
Importante
El daemon del agente PHP transmite datos a New Relic periódicamente durante el ciclo de recolección de un minuto de duración. Si inicia y derriba contenedores con frecuencia, asegúrese de dejar el contenedor daemon ejecutándose el tiempo suficiente para transmitir los datos restantes.
Opciones de contenedor
El agente PHP requiere dos componentes para funcionar: el agente PHP (uno para cada aplicación) y un daemon, que agrega datos enviados desde uno o más agentes y los envía a New Relic. Por este motivo, existen dos opciones para habilitar el agente PHP para entornos contenedor:
- Instale el agente y daemon en contenedores diferentes. Esta es la configuración recomendada.
- Instale el agente y daemon en el mismo contenedor. Esto puede resultar útil si desea reducir el número de contenedores.
Instale el agente y daemon en contenedores diferentes
La instalación del agente y daemon en contenedores diferentes se admite en las versiones PHP Agnet 9.2 y superiores.
Para ver una aplicación de ejemplo, vaya al Foro de soporte de New Relic. Si está utilizando contenedores de aplicaciones de corta duración, le recomendamos que utilice un contenedor separado para el daemon del agente PHP.
Advertencia
Los datos transmitidos desde el agente al daemon no están cifrados. La única excepción a esto es la ofuscación de SQL que ocurre antes de enviar datos al daemon. Si el agente y daemon se ejecutan en hosts diferentes, le recomendamos que utilice una conexión de red privada entre el agente y daemon.
Configurar el contenedor daemon
Si usa Docker, puede extraer nuestra imagen de daemon desde docker Hub:
- Ejecute este comando:
docker pull newrelic/php-daemon
. - Para personalizar la imagen, siga los pasos en Docker Hub.
También puedes crear tu propia imagen daemon :
- Para instalar el daemon, descargue el paquete del agente PHP desde el sitio de descarga de archivos tar de New Relic y ejecute el script
newrelic-install
con el argumentoinstall_daemon
. - Inicie el daemon usando los argumentos
--address
y--watchdog-foreground
.
El argumento --address
establece un puerto para que el daemon acepte conexiones. El argumento --watchdog-foreground
garantiza que el daemon se ejecute en primer plano.
Configurar el contenedor del agente PHP
Para configurar el contenedor del agente PHP para Docker:
Asegúrese de que haya una instalación de PHP disponible en el contenedor. Por ejemplo, utilice una imagen Docker publicada como
php:7.1
.Para instalar el agente, descargue el paquete del agente PHP desde el sitio de descarga de archivos tar de New Relic y ejecute el script
newrelic-install
con el argumentoinstall
.En el archivo
newrelic.ini
, configure el nombre de la aplicación ycon las entradas
newrelic.appname
ynewrelic.license
.Dirija al agente al daemon configurando la opción
newrelic.daemon.address
en el archivonewrelic.ini
. Asegúrese de que el valor de esta opción seaHOST:PORT
, dondeHOST
es el nombre o la dirección IP del host donde se ejecuta el daemon yPORT
es el número de puerto donde el daemon está escuchando.
Instalar agente y daemon en el mismo contenedor
Advertencia
De forma predeterminada, la primera transacción hace que el agente active el inicio daemon y la inicialización de la conexión de la aplicación. Por motivos de rendimiento, el agente no espera a que se completen esas operaciones antes de inicializar la conexión. Esto puede resultar en la pérdida de las primeras transacciones después del inicio de un contenedor. Para evitar esta pérdida, establezca las entradas newrelic.daemon.start_timeout
y newrelic.daemon.app_connect_timeout
en el archivo newrelic.ini
con nuestros valores recomendados de 5 y 15 respectivamente.
Para configurar el agente PHP y daemon en el mismo contenedor Docker :
Asegúrese de que haya una instalación de PHP disponible en el contenedor. Por ejemplo: podrías usar una imagen Docker publicada como
php:7.1
.Para instalar el agente, descargue el paquete del agente PHP desde el sitio de descarga de archivos tar de New Relic y ejecute el script
newrelic-install
con el argumentoinstall
.Establezca el nombre de la aplicación y
mediante las entradas
newrelic.license
ynewrelic.appname
en el archivonewrelic.ini
.
Sugerencia
Aquí hay algunos recursos de resolución de problemas Docker :