newrelic.newrelic_install

Banner del proyecto comunitario de código abierto de New Relic.

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

Enlace a Galaxy

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 requiere infraestructura, y se generará un error si logs se especifica sin infraestructura.
  • La instalación del agente apm-nodejs solo se admite para aplicaciones gestionadas por PM2. Para instalar el agente usando un gestor de paquetes como npm o yarn 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 servicio systemd.
  • 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 el APM & Services de New Relic. Si se omite, se predetermina a PHP 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 a 1433.
  • NEW_RELIC_MSSQL_DB_USERNAME (opcional) Nombre de usuario para acceder al servidor MS SQL. Se predetermina a newrelic. Si utilizas un usuario de dominio, usa la sintaxis domain\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 por NEW_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 por NEW_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 a 3306 si no se especifica.
  • NEW_RELIC_MYSQL_USERNAME (opcional) Se predetermina a newrelic si no se especifica otro. Este es el nombre de usuario que la integración mysql 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 en NEW_RELIC_MYSQL_USERNAME. Consulta más en Integración de MySQL.
  • NEW_RELIC_MYSQL_ROOT_PASSWORD (requerido) La integración de mysql necesita conectarse a mysql 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"

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

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.

Instalar
ansible-galaxy install newrelic.newrelic_install
Licencia
apache-2.0
Descargas
195.9k
Propietario