newrelic_install
Роль Ansible для New Relic
newrelic.newrelic_install
— это Роль Ansible, которая поможет вам масштабировать ваши усилия по наблюдению с помощью New Relic. Она использует New Relic CLI и Репозиторий Open Installation New Relic для достижения этой цели.
Примечание: Установка определенных версий агентов не поддерживается, эта роль всегда будет устанавливать последнюю выпущенную версию агента New Relic.
Пожалуйста, ознакомьтесь с разделами ниже для получения информации о установке, начальных шагах, переменных роли, зависимостях и примере ansible playbook
, демонстрирующем использование этой роли.
Если вам нужна помощь с Ansible для Windows, посмотрите Настройка Windows Host на сайте Документации Ansible.
Установка
Ansible Galaxy
ansible-galaxy install newrelic.newrelic_install
Убедитесь, что у вас установлены ansible.windows
и ansible.utils
, если они еще не установлены:
ansible-galaxy collection install ansible.windows ansible.utils
Вручную
Если вы хотите использовать локальную копию роли, клонируйте репозиторий и выполните make
в корне проекта, чтобы скопировать этот репозиторий в ~/.ansible/roles/newrelic.newrelic_install
, что позволит роли вести себя так, как будто она была установлена из Galaxy.
Начало работы
После установки включите роль newrelic.newrelic_install
в новый или существующий playbook. Например:
- name: Установить New Relic
hosts: all
roles:
- role: newrelic.newrelic_install
vars:
targets:
- infrastructure
- logs
- apm-php
tags:
foo: bar
environment:
NEW_RELIC_API_KEY: <API key>
NEW_RELIC_ACCOUNT_ID: <Account ID>
NEW_RELIC_REGION: <Region>
Переменные
Переменные роли
targets
(Обязательно)
Список целевых установок для выполнения на хостах. Доступные опции:
infrastructure
(Linux & Windows)logs
(Linux & Windows)apm-php
(Linux)apm-nodejs
(Linux)apm-dotnet
(Linux & Windows)apm-java
(Linux)apache
(Linux)mssql
(Windows)mysql
(Linux)nginx
(Linux)
Важные заметки:
- целевая установка
logs
требует установкиinfrastructure
, и произойдет ошибка, еслиlogs
указаны безinfrastructure
. - установка агента
apm-nodejs
поддерживается только для приложений, управляемых PM2. Для установки агента с помощью менеджера пакетов, такого какnpm
илиyarn
, или через другие пути установки, пожалуйста, обратитесь к нашей документации. - установка агента
apm-dotnet
для Windows поддерживается только для приложений, размещаемых на IIS. Установки в Linux поддерживаются только для .NET приложений, работающих какsystemd
сервис. - установка агента
apm-java
поддерживает Java, работающую в Tomcat, Wildfly/Jboss и Jetty (standalone). Обратите внимание, что это ограниченная установка Java APM, которая инструментирует определенные серверы приложений Java с использованием динамического подключения через Java introspector New Relic. Больше деталей здесь. - следующие интеграции требуют установки агента инфраструктуры:
- apm-java
- apache
- mssql
- mysql
- nginx
tags
(Опционально)
Пары ключ-значение тегов, передаваемых при установке.
install_timeout_seconds
(Опционально)
Устанавливает тайм-аут для задачи установки. Перекрывает стандартный тайм-аут 600 секунд.
verbosity
(Опционально)
Опции уровня детализации для установки (debug
или trace
). Записывает подробный вывод в файл журнала на хосте.
Значения по умолчанию
Установлено в 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
Переменные окружения
Значения устанавливаются под ключевым словом environment
в вашем playbook:
NEW_RELIC_API_KEY
(обязательно)NEW_RELIC_ACCOUNT_ID
(обязательно)NEW_RELIC_REGION
(опционально: 'US' или 'EU', по умолчанию 'US')
Кроме того, можно установить опциональную переменную HTTPS_PROXY
для включения прокси для вашей установки.
apm-php
:
NEW_RELIC_APPLICATION_NAME
(опционально) Имя PHP приложения для инструментирования. Это имя будет указано в разделеAPM & Services
New Relic. Если опустить, по умолчанию будет использованоPHP Application
.
apache
:
NEW_RELIC_APACHE_STATUS_URL
(опционально) URL для проверки статуса веб-сервера Apache. Используется для обеспечения того, что веб-сервер Apache работает на хосте и находится в здоровом состоянии перед попыткой установки Apache On-Host Integration. По умолчанию:http://127.0.0.1/server-status?auto
mssql
:
NEW_RELIC_MSSQL_DB_HOSTNAME
(опционально) Имя хоста или IP, где работает MS SQL сервер. По умолчанию используется обнаруженное имя хоста.NEW_RELIC_MSSQL_DB_PORT
(опционально) Порт, на котором слушает MS SQL сервер. По умолчанию1433
.NEW_RELIC_MSSQL_DB_USERNAME
(опционально) имя пользователя для доступа к MS SQL серверу. По умолчаниюnewrelic
. Если используется доменный пользователь, используйте синтаксисdomain\user
.NEW_RELIC_MSSQL_DB_PASSWORD
(опционально) Пароль для данного лицензированного SQL или доменного пользователя. Если пароль не предоставлен, будет сгенерирован случайный пароль.NEW_RELIC_MSSQL_SQL_USERNAME
(опционально) Дополнительный учетные данные, переданныеsqlcmd
при создании SQL пользователя, указанного вNEW_RELIC_MSSQL_DB_USERNAME
. Если опустить, будет использовано имя пользователя по умолчанию.NEW_RELIC_MSSQL_SQL_PASSWORD
(опционально) Дополнительный учетные данные, переданныеsqlcmd
при создании SQL пользователя, указанного вNEW_RELIC_MSSQL_DB_USERNAME
. Если опустить, будет использован пароль по умолчанию.NEW_RELIC_MSSQL_ENABLE_BUFFER_METRICS
(опционально) Включить сбор метрик пула буферов. По умолчанию true.NEW_RELIC_MSSQL_ENABLE_RESERVE_METRICS
(опционально) Включить сбор данных о резервном пространстве для базы данных. По умолчанию true.
mysql
:
NEW_RELIC_MYSQL_PORT
(опционально) По умолчанию3306
, если не указано.NEW_RELIC_MYSQL_USERNAME
(опционально) По умолчаниюnewrelic
, если не указано другое. Это имя пользователя, которое установкаmysql
будет настраивать и которое будет указано в конфигурационном файле интеграции (например:mysql-config.yml
) для отчетности о данных. Подробнее в интеграции MySQL.NEW_RELIC_MYSQL_PASSWORD
(опционально) Пароль для пользователя, указанного вNEW_RELIC_MYSQL_USERNAME
. Подробнее в интеграции MySQL.NEW_RELIC_MYSQL_ROOT_PASSWORD
(обязательно) Интеграцияmysql
нуждается в подключении кmysql
для создания необходимых учетных данных.
Смотрите удаленную среду ansible для получения дополнительной информации.
Совместимость версий
- Ansible: Проверено с Ansible Core 2.13 и 2.14. Версии Ansible Core до 2.10 не поддерживаются.
- Python: Проверено с Python 3.10.
Зависимости
Требования Python: requirements.txt
Требования Ansible: requirements.yml
Пример Playbook
- name: Установить New Relic
hosts: all
roles:
- role: newrelic.newrelic_install
vars:
targets:
- infrastructure
- logs
- apm-php
tags:
foo: bar
install_timeout_seconds: 1000
verbosity: debug
environment:
NEW_RELIC_API_KEY: <API key>
NEW_RELIC_ACCOUNT_ID: <Account ID>
NEW_RELIC_REGION: <Region>
NEW_RELIC_APPLICATION_NAME: "Мое Приложение"
HTTPS_PROXY: "http://my.proxy:8888"
Найдите свой ключ пользователя: API keys UI
Найдите свой идентификатор аккаунта: Документация по идентификатору аккаунта
Поддержка
New Relic проводит и модерирует онлайн-форум, где клиенты могут взаимодействовать с сотрудниками New Relic, а также с другими клиентами, чтобы получать помощь и делиться лучшими практиками. Как и все официальные проекты с открытым исходным кодом New Relic, существует соответствующая тема сообщества в New Relic Explorers Hub. Вы можете найти дискуссии по этой теме здесь:
- Документация New Relic: Полное руководство по использованию нашей платформы
- Сообщество New Relic: Лучшее место для обсуждения вопросов устранения неисправностей
- Разработчик New Relic: Ресурсы для создания приложений для наблюдения с открытым исходным кодом
- Университет New Relic: Разнообразные онлайн-курсы для пользователей New Relic любого уровня
- Техническая поддержка New Relic 24/7/365 поддержка с заявками. Узнайте больше о наших предложениях технической поддержки.
Участвуйте
Мы призываем вас внести свой вклад в улучшение роли ansible newrelic.newrelic_install
! Имейте в виду, что при отправке вашего pull request вам нужно будет подписать CLA через click-through с использованием CLA-Assistant. Вам нужно подписывать CLA только один раз для каждого проекта.
Если у вас есть вопросы или вам нужно выполнить нашу корпоративную CLA (которая требуется, если ваш вклад сделан от имени компании), напишите нам по адресу opensource@newrelic.com.
Замечание о уязвимостях
Как указано в нашей политике безопасности, New Relic привержен конфиденциальности и безопасности наших клиентов и их данных. Мы считаем, что предоставление согласованного раскрытия информации исследователями безопасности и взаимодействие с сообществом безопасности являются важными средствами для достижения наших целей безопасности.
Если вы считаете, что нашли уязвимость безопасности в этом проекте или любом из продуктов или веб-сайтов New Relic, мы приветствуем и очень ценим ваше сообщение об этом в New Relic через HackerOne.
Если вы хотите внести вклад в этот проект, ознакомьтесь с этими рекомендациями.
Всем участникам, мы благодарим вас! Без вашего вклада этот проект не был бы тем, чем он является сегодня.
Лицензия
Этот проект лицензирован под лицензией Apache 2.0.
Role for New Relic's Targeted Installs
ansible-galaxy install newrelic/ansible-install