Skip to content

Commit bf17787

Browse files
VasilenkovDenisDenis Vasilenkov
andauthored
Added installation instructions for database agents (#58)
Co-authored-by: Denis Vasilenkov <denis.vasilenkov@gmonit.ru>
1 parent fde3d1e commit bf17787

4 files changed

Lines changed: 293 additions & 0 deletions

File tree

_sidebar.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
- [Node.js](agent_installation_guide/APM/nodejs.md)
1414
- [Python](agent_installation_guide/APM/python.md)
1515
- [Мониторинг инфраструктуры](agent_installation_guide/Infra/infra_install.md)
16+
- [MySQL](agent_installation_guide/Infra/database_monitoring/mysql_agents_install.md)
17+
- [PostgreSQL](agent_installation_guide/Infra/database_monitoring/postgresql_agents_install.md)
18+
- [Oracle Database](agent_installation_guide/Infra/database_monitoring/oracle_database.md)
1619
- [Мониторинг браузера (web)](agent_installation_guide/RUM/real_user_monitoring.md)
1720
- [Мобильный мониторинг](agent_installation_guide/Mobile/mobile_monitoring.md)
1821
- Модули GMonit
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Мониторинг MySQL с использованием New Relic
2+
3+
Для инструментации MySQL с использованием агента New Relic выполните следующие шаги:
4+
5+
6+
### Шаг 1: Установка агента New Relic
7+
8+
#### Для Ubuntu/Debian:
9+
1. Добавьте ключ и репозиторий:
10+
```bash
11+
wget -O - https://download.newrelic.com/infrastructure_agent/gpg/newrelic-infra.gpg | sudo apt-key add -
12+
printf "deb [arch=amd64] https://download.newrelic.com/infrastructure_agent/linux/apt focal main\n" | sudo tee /etc/apt/sources.list.d/newrelic-infra.list
13+
sudo apt-get update
14+
```
15+
16+
2. Установите агент New Relic:
17+
```bash
18+
sudo apt-get install newrelic-infra
19+
```
20+
21+
#### Для RHEL/CentOS:
22+
1. Добавьте репозиторий:
23+
```bash
24+
sudo curl -o /etc/yum.repos.d/newrelic-infra.repo https://download.newrelic.com/infrastructure_agent/linux/yum/el/8/x86_64/newrelic-infra.repo
25+
```
26+
27+
2. Установите агент New Relic:
28+
```bash
29+
sudo yum install newrelic-infra -y
30+
```
31+
32+
33+
### Шаг 2: Создание конфигурационного файла для MySQL
34+
35+
1. Создайте конфигурационный файл `mysql-config.yml`:
36+
37+
- **Для Ubuntu/Debian:**
38+
```bash
39+
sudo touch /etc/newrelic-infra/integrations.d/mysql-config.yml
40+
```
41+
42+
- **Для RHEL/CentOS:**
43+
```bash
44+
sudo touch /etc/newrelic-infra/integrations.d/mysql-config.yml
45+
```
46+
47+
2. Добавьте следующие настройки в файл `mysql-config.yml`:
48+
```yaml
49+
integrations:
50+
- name: nri-mysql
51+
env:
52+
HOSTNAME: db-mysql
53+
PORT: 3306
54+
USERNAME: root
55+
PASSWORD: password
56+
interval: 15s
57+
labels:
58+
env: production
59+
role: mysql
60+
db_hostname: db-mysql
61+
inventory_source: config/mysql
62+
```
63+
64+
65+
### Шаг 3: Перезапуск агента
66+
67+
#### Для Ubuntu/Debian:
68+
```bash
69+
sudo systemctl restart newrelic-infra
70+
```
71+
72+
#### Для RHEL/CentOS:
73+
```bash
74+
sudo systemctl restart newrelic-infra
75+
```
76+
77+
78+
### Шаг 4: Проверка в интерфейсе GMonit
79+
80+
1. Перейдите в раздел инфраструктуры в GMonit.
81+
2. Убедитесь, что данные из MySQL собираются и отображаются корректно.
82+
83+
84+
### Решение проблем
85+
86+
Если возникли проблемы с установкой или отсутствуют данные:
87+
- Проверьте корректность настроек в файле `mysql-config.yml`.
88+
- Убедитесь, что агент New Relic успешно запущен (`systemctl status newrelic-infra`).
89+
- Для более детальной информации о конфигурации агента обратитесь к [официальной документации New Relic](https://docs.newrelic.com/install/mysql/).
90+
91+
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
# Мониторинг Oracle Database с использованием New Relic
2+
3+
Для мониторинга Oracle Database с использованием агента New Relic выполните следующие шаги.
4+
5+
---
6+
7+
## Шаг 1: Установка агента инфраструктуры
8+
9+
Убедитесь, что ваш сервер работает на поддерживаемой версии Linux. Инструкции для установки инфраструктурного агента можно найти [здесь](https://docs.newrelic.com/docs/infrastructure/host-integrations/installation/install-infrastructure-host-integrations/#tarball).
10+
11+
Пример установки для RHEL/CentOS:
12+
```bash
13+
sudo yum install newrelic-infra -y
14+
```
15+
16+
---
17+
18+
## Шаг 2: Установка Oracle Instant Client
19+
20+
Для работы интеграции необходим Oracle Instant Client. Пример для Linux x64:
21+
22+
1. Перейдите на [страницу загрузки Oracle Instant Client](https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html).
23+
2. Скачайте RPM-пакет и установите его:
24+
```bash
25+
sudo yum install oracle-instantclient-basic-21.1.0.0.0-1.x86_64.rpm
26+
```
27+
28+
3. Если вы используете Oracle Instant Client версии 19 или выше, путь к библиотекам настроится автоматически. Для более старых версий добавьте библиотеку в `LD_LIBRARY_PATH`:
29+
```bash
30+
sudo sh -c "echo /usr/lib/oracle/21.1/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf"
31+
sudo ldconfig
32+
```
33+
34+
Или настройте переменную окружения:
35+
```bash
36+
export LD_LIBRARY_PATH=/usr/lib/oracle/18.5/client64/lib:$LD_LIBRARY_PATH
37+
```
38+
39+
---
40+
41+
## Шаг 3: Настройка базы данных Oracle
42+
43+
1. **Создайте пользователя с необходимыми привилегиями**:
44+
- Для автономной базы данных:
45+
```sql
46+
ALTER SESSION set "_Oracle_SCRIPT"=true;
47+
CREATE USER USERNAME IDENTIFIED BY "USER_PASSWORD";
48+
```
49+
50+
- Для мультитенантной базы данных:
51+
```sql
52+
CREATE USER c##USERNAME IDENTIFIED BY "USER_PASSWORD";
53+
ALTER USER c##USERNAME SET CONTAINER_DATA=ALL CONTAINER=CURRENT;
54+
```
55+
56+
2. **Предоставьте необходимые привилегии**:
57+
```sql
58+
GRANT CONNECT TO USERNAME;
59+
GRANT SELECT ON gv_$sysmetric TO USERNAME;
60+
GRANT SELECT ON v_$database TO USERNAME;
61+
GRANT SELECT ON gv_$session TO USERNAME;
62+
-- Добавьте остальные необходимые представления из вашего сценария
63+
```
64+
65+
3. **Настройте файл Listener.ora**:
66+
Убедитесь, что база данных настроена для удалённого подключения. По умолчанию база данных слушает только локальный хост.
67+
68+
---
69+
70+
## Шаг 4: Установка и активация интеграции OracleDB
71+
72+
1. Установите интеграцию:
73+
```bash
74+
sudo yum install nri-oracledb
75+
```
76+
77+
2. Скопируйте шаблон конфигурационного файла или создайте новый файл:
78+
```bash
79+
sudo cp /etc/newrelic-infra/integrations.d/oracledb-config.yml.sample /etc/newrelic-infra/integrations.d/oracledb-config.yml
80+
```
81+
82+
3. Откройте файл `/etc/newrelic-infra/integrations.d/oracledb-config.yml` и добавьте следующие настройки:
83+
```yaml
84+
integrations:
85+
- name: nri-oracledb
86+
env:
87+
SERVICE_NAME: ORACLE
88+
HOSTNAME: 127.0.0.1
89+
PORT: 1521
90+
USERNAME: oracledb_user
91+
PASSWORD: oracledb_password
92+
ORACLE_HOME: /app/oracle/product/version/database
93+
interval: 15s
94+
labels:
95+
environment: production
96+
inventory_source: config/oracledb
97+
```
98+
99+
4. Перезапустите агент:
100+
```bash
101+
sudo systemctl restart newrelic-infra
102+
```
103+
104+
---
105+
106+
## Шаг 5: Проверка
107+
108+
После успешной настройки в логах агента появится следующая запись:
109+
```
110+
time="YYYY-MM-DDTHH:MM:SS+03:00" level=info msg="Integration health check finished with success" component=integrations.runner.Runner environment=production integration_name=nri-oracledb runner_uid=
111+
```
112+
113+
Если возникает ошибка **ORA-00000: DPI-1047**, убедитесь в корректности установки Oracle Instant Client. Подробнее см. [документацию Oracle](https://oracle.github.io/odpi/doc/installation.html#linux).
114+
115+
---
116+
117+
## Дополнительная информация
118+
119+
- Подробная документация по настройке и устранению неполадок: [New Relic OracleDB Integration](https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/oracle-database/oracle-database-integration/).
120+
- Обратите внимание на безопасность при хранении паролей, используя переменные окружения вместо прямой записи в конфигурации.
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# Мониторинг PostgreSQL с использованием New Relic
2+
3+
Для инструментации PostgreSQL с использованием агента New Relic выполните следующие шаги:
4+
5+
6+
### Шаг 1: Установка и включение интеграции PostgreSQL
7+
8+
1. Установите пакет интеграции PostgreSQL.
9+
10+
#### Для Debian/Ubuntu:
11+
```bash
12+
sudo apt-get update
13+
sudo apt-get install nri-postgresql
14+
```
15+
16+
#### Для других систем:
17+
Обратитесь к [официальной документации New Relic](https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/postgresql/postgresql-integration/) для получения инструкций.
18+
19+
20+
21+
### Шаг 2: Настройка интеграции
22+
23+
1. Создайте файл конфигурации для интеграции PostgreSQL:
24+
```bash
25+
sudo touch /etc/newrelic-infra/integrations.d/postgresql-config.yml
26+
```
27+
28+
2. Откройте файл `/etc/newrelic-infra/integrations.d/postgresql-config.yml` и добавьте следующие настройки:
29+
```yaml
30+
integrations:
31+
- name: nri-postgresql
32+
env:
33+
HOSTNAME: localhost
34+
PORT: 5432
35+
DATABASE: postgres
36+
USERNAME: your_username
37+
PASSWORD: your_password
38+
COLLECTION_LIST: "ALL"
39+
METRICS: true
40+
INVENTORY: true
41+
EVENTS: true
42+
```
43+
44+
- **Замените** `your_username` и `your_password` на имя пользователя и пароль для доступа к базе данных PostgreSQL.
45+
- **Важно**: Для обеспечения безопасности избегайте хранения паролей в файлах конфигурации. Используйте переменные окружения или ознакомьтесь с [рекомендациями по безопасности](https://docs.newrelic.com/docs/security/security-privacy/compliance/regulatory-audits-new-relic-services/).
46+
47+
48+
49+
### Шаг 3: Настройка PostgreSQL для мониторинга
50+
51+
1. Убедитесь, что пользователь, указанный в конфигурации, имеет доступ к статистическим данным PostgreSQL.
52+
2. Предоставьте доступ, выполнив следующую команду SQL:
53+
```sql
54+
GRANT SELECT ON ALL TABLES IN SCHEMA pg_stat_database TO your_username;
55+
```
56+
57+
58+
59+
### Шаг 4: Перезапуск Infrastructure Agent
60+
61+
После настройки интеграции перезапустите инфраструктурный агент:
62+
63+
```bash
64+
sudo systemctl restart newrelic-infra
65+
```
66+
67+
68+
69+
### Шаг 5: Проверка и мониторинг
70+
71+
1. Перейдите в интерфейс GMonit.
72+
2. Убедитесь, что метрики PostgreSQL начинают отображаться.
73+
74+
75+
76+
### Дополнительно
77+
78+
- Для получения дополнительной информации, таких как расширенные настройки и устранение неполадок, обратитесь к [официальной документации New Relic](https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/postgresql/postgresql-integration/).
79+
- Для обеспечения безопасности убедитесь, что конфиденциальные данные защищены в соответствии с [рекомендациями New Relic](https://docs.newrelic.com/docs/security/security-privacy/compliance/regulatory-audits-new-relic-services/).

0 commit comments

Comments
 (0)