newrelic.newrelic_install
Rol de Ansible de New Relic
newrelic.newrelic_install
es un Rol de Ansible que te ayudará a escalar tus esfuerzos de Observabilidad de New Relic. Utiliza la CLI de New Relic y el repositorio de Instalación Abierta de New Relic para lograrlo.
Nota: La instalación de versiones específicas de un agente no está soportada, este rol siempre instalará la última versión disponible de un agente de New Relic.
Por favor, revisa las secciones a continuación para obtener detalles sobre la instalación, cómo comenzar, las variables del rol, dependencias y un ejemplo de playbook
de Ansible que muestra el uso de este rol.
Si necesitas ayuda con Ansible para Windows, consulta Configuración de un Host Windows en el sitio de Documentación de Ansible.
Instalación
Ansible Galaxy
ansible-galaxy install newrelic.newrelic_install
Asegúrate de tener ansible.windows
y ansible.utils
si no están ya instalados:
ansible-galaxy collection install ansible.windows ansible.utils
Manual
Si deseas usar una copia local del rol, clona el repositorio y ejecuta make
en la raíz del proyecto para copiar este repositorio a ~/.ansible/roles/newrelic.newrelic_install
, permitiendo que el rol funcione como si estuviera instalado desde Galaxy.
Comenzando
Después de instalar, incluye el rol newrelic.newrelic_install
en un playbook nuevo o existente. Por ejemplo:
- name: Instalar New Relic
hosts: all
roles:
- role: newrelic.newrelic_install
vars:
targets:
- infraestructura
- logs
- apm-php
tags:
foo: bar
environment:
NEW_RELIC_API_KEY: <clave API>
NEW_RELIC_ACCOUNT_ID: <ID de cuenta>
NEW_RELIC_REGION: <Región>
Variables
Variables del rol
targets
(Requerido)
Lista de instalaciones dirigidas a ejecutar en los anfitriones. Las opciones disponibles son:
infraestructura
(Linux y Windows)logs
(Linux y Windows)apm-php
(Linux)apm-nodejs
(Linux)apm-dotnet
(Linux y Windows)apm-java
(Linux)apache
(Linux)mssql
(Windows)mysql
(Linux)nginx
(Linux)
Notas importantes:
- el objetivo
logs
requiereinfraestructura
, y se generará un error silogs
se especifica sininfraestructura
. - La instalación del agente
apm-nodejs
solo se admite para aplicaciones gestionadas por PM2. Para instalar el agente usando un gestor de paquetes comonpm
oyarn
o a través de otros métodos de instalación, consulta nuestra documentación. - La instalación del agente
apm-dotnet
para Windows solo se admite para aplicaciones alojadas por IIS. Las instalaciones en Linux solo son compatibles con aplicaciones .NET que se ejecutan como un serviciosystemd
. - La instalación del agente
apm-java
admite Java que se ejecuta en Tomcat, Wildfly/Jboss y Jetty (independiente). Ten en cuenta que esta es una instalación limitada de APM de Java que instrumenta ciertos servidores de aplicaciones Java a través de una conexión dinámica utilizando el introspector de Java de New Relic. Más detalles aquí. - Las siguientes integraciones requieren que el agente de infraestructura esté instalado:
- apm-java
- apache
- mssql
- mysql
- nginx
tags
(Opcional)
Pares clave-valor de etiquetas pasadas a la instalación.
install_timeout_seconds
(Opcional)
Establece el tiempo de espera para la tarea de instalación. Anula el tiempo de espera predeterminado de 600s.
verbosity
(Opcional)
Opciones de verbosidad para la instalación (debug
o trace
). Escribe una salida detallada en un archivo de registro en el anfitrión.
Valores predeterminados
Establecidos en defaults/main.yml:
cli_install_url
cli_install_download_location
target_name_map
verbosity_on_log_file_path_linux
verbosity_on_log_file_path_windows
default_install_timeout_seconds
Variables de entorno
Los valores se establecen bajo la palabra clave environment
en tu playbook:
NEW_RELIC_API_KEY
(requerido)NEW_RELIC_ACCOUNT_ID
(requerido)NEW_RELIC_REGION
(opcional: 'US' o 'EU', predeterminado 'US')
Además, se puede establecer una variable opcional HTTPS_PROXY
para habilitar un proxy para tu instalación.
apm-php
:
NEW_RELIC_APPLICATION_NAME
(opcional) El nombre de la aplicación PHP a instrumentar. Este nombre se listará en elAPM & Services
de New Relic. Si se omite, se predetermina aPHP Application
.
apache
:
NEW_RELIC_APACHE_STATUS_URL
(opcional) La URL para verificar el estado del servidor web Apache. Se utiliza para asegurar que un servidor web Apache está ejecutándose en el anfitrión y está en un estado saludable antes de intentar la instalación de la Integración On-Host de Apache. Se predetermina a:http://127.0.0.1/server-status?auto
mssql
:
NEW_RELIC_MSSQL_DB_HOSTNAME
(opcional) Nombre del host o IP donde se está ejecutando el servidor MS SQL. Se predetermina al nombre de host descubierto si no se especifica.NEW_RELIC_MSSQL_DB_PORT
(opcional) Puerto en el que escucha el servidor MS SQL. Se predetermina a1433
.NEW_RELIC_MSSQL_DB_USERNAME
(opcional) Nombre de usuario para acceder al servidor MS SQL. Se predetermina anewrelic
. Si utilizas un usuario de dominio, usa la sintaxisdomain\user
.NEW_RELIC_MSSQL_DB_PASSWORD
(opcional) Contraseña para el usuario de SQL o dominio dado. Si no se proporciona una contraseña, se generará una contraseña aleatoria.NEW_RELIC_MSSQL_SQL_USERNAME
(opcional) Credencial opcional para usar al crear el usuario SQL especificado porNEW_RELIC_MSSQL_DB_USERNAME
. Si se omite, se usará el nombre de inicio de sesión predeterminado.NEW_RELIC_MSSQL_SQL_PASSWORD
(opcional) Credencial opcional para usar al crear el usuario SQL especificado porNEW_RELIC_MSSQL_DB_USERNAME
. Si se omite, se usará la contraseña de inicio de sesión predeterminada.NEW_RELIC_MSSQL_ENABLE_BUFFER_METRICS
(opcional) Habilitar colección de métricas del grupo de buffer. Se predetermina a verdadero.NEW_RELIC_MSSQL_ENABLE_RESERVE_METRICS
(opcional) Habilitar colección de espacio reservado de partición de base de datos. Se predetermina a verdadero.
mysql
:
NEW_RELIC_MYSQL_PORT
(opcional) Se predetermina a3306
si no se especifica.NEW_RELIC_MYSQL_USERNAME
(opcional) Se predetermina anewrelic
si no se especifica otro. Este es el nombre de usuario que la integraciónmysql
configurará y también lo establecerá en el archivo de configuración de la integración (por ejemplo:mysql-config.yml
) para fines de reporte de datos. Consulta más en Integración de MySQL.NEW_RELIC_MYSQL_PASSWORD
(opcional) La contraseña para el usuario especificado enNEW_RELIC_MYSQL_USERNAME
. Consulta más en Integración de MySQL.NEW_RELIC_MYSQL_ROOT_PASSWORD
(requerido) La integración demysql
necesita conectarse amysql
para crear las credenciales adecuadas.
Consulta el entorno remoto de ansible para más información.
Compatibilidad de Versiones
- Ansible: Probado con Ansible Core 2.13 y 2.14. Las versiones de Ansible Core anteriores a 2.10 no son compatibles.
- Python: Probado con Python 3.10.
Dependencias
Requisitos de Python: requirements.txt
Requisitos de Ansible: requirements.yml
Ejemplo de Playbook
- name: Instalar New Relic
hosts: all
roles:
- role: newrelic.newrelic_install
vars:
targets:
- infraestructura
- logs
- apm-php
tags:
foo: bar
install_timeout_seconds: 1000
verbosity: debug
environment:
NEW_RELIC_API_KEY: <clave API>
NEW_RELIC_ACCOUNT_ID: <ID de cuenta>
NEW_RELIC_REGION: <Región>
NEW_RELIC_APPLICATION_NAME: "Mi Aplicación"
HTTPS_PROXY: "http://mi.proxy:8888"
Encuentra tu clave de usuario: API keys UI
Encuentra tu ID de cuenta: Documentación del ID de cuenta
Soporte
New Relic alberga y modera un foro en línea donde los clientes pueden interactuar con empleados de New Relic así como con otros clientes para obtener ayuda y compartir mejores prácticas. Como todos los proyectos de código abierto oficiales de New Relic, hay un tema relacionado en el New Relic Explorers Hub. Puedes encontrar los temas/hilos de este proyecto aquí:
- Documentación de New Relic: Guía completa para usar nuestra plataforma.
- Comunidad de New Relic: El mejor lugar para participar en preguntas de resolución de problemas.
- Desarrollador de New Relic: Recursos para construir aplicaciones de observabilidad personalizadas.
- Universidad de New Relic: Una variedad de capacitación en línea para usuarios de New Relic de todos los niveles.
- Soporte Técnico de New Relic Soporte con ticket 24/7/365. Lee más sobre nuestras Ofertas de Soporte Técnico.
Contribuir
¡Te animamos a contribuir para mejorar el rol de Ansible newrelic.newrelic_install
! Ten en cuenta que cuando envíes tu solicitud de extracción, deberás firmar el CLA a través del clic mediante CLA-Assistant. Solo necesitas firmar el CLA una vez por proyecto.
Si tienes alguna pregunta, o para ejecutar nuestro CLA corporativo (que se requiere si tu contribución es en nombre de una empresa), envíanos un correo electrónico a opensource@newrelic.com.
Una nota sobre vulnerabilidades
Como se menciona en nuestra política de seguridad, New Relic está comprometido con la privacidad y seguridad de nuestros clientes y sus datos. Creemos que proporcionar divulgación coordinada por investigadores de seguridad y comprometernos con la comunidad de seguridad son medios importantes para lograr nuestros objetivos de seguridad.
Si crees que has encontrado una vulnerabilidad de seguridad en este proyecto o en cualquiera de los productos o sitios web de New Relic, te damos la bienvenida y apreciamos mucho que lo informes a New Relic a través de HackerOne.
Si deseas contribuir a este proyecto, revisa estas pautas.
A todos los colaboradores, ¡les agradecemos! Sin su contribución, este proyecto no sería lo que es hoy.
Licencia
Este proyecto está licenciado bajo la Licencia Apache 2.0.
Role for New Relic's Targeted Installs
ansible-galaxy install newrelic.newrelic_install