# Настройка HOSTVM Manager для отправки SNMP-ловушек

Настройте HOSTVM Manager для отправки SNMP-ловушек одному или нескольким внешним SNMP-менеджерам. SNMP-ловушки содержат информацию о системных событиях; они используются для мониторинга среды HOSTVM. Количество и тип ловушек, отправляемых SNMP-менеджеру, настраиваются на машине HOSTVM Manager.

HOSTVM поддерживает SNMPv2 и SNMPv3. SNMPv3 поддерживает следующие уровни безопасности:

**NoAuthNoPriv** \
SNMP-ловушки отправляются без какой-либо авторизации или обеспечения конфиденциальности.

**AuthNoPriv** \
SNMP-ловушки отправляются с авторизацией по паролю, но без обеспечения конфиденциальности.

**AuthPriv** \
SNMP-ловушки отправляются с авторизацией  по паролю и обеспечением конфиденциальности.

Предварительные требования

* Один или несколько внешних SNMP-менеджеров настроены на прием SNMP-ловушек.
* IP-адреса или FQDN машин, которые будут выполнять функции SNMP-менеджеров. При необходимости, укажите порт, через который HOSTVM Manager получает уведомления. По умолчанию используется UDP-порт 162.
* SNMP Community (только для SNMPv2). Несколько SNMP-менеджеров могут принадлежать к одному community. Системы управления и агенты могут взаимодействовать, только если они находятся в одном community. Community по умолчанию является публичным.
* Trap OID (object identifier) для оповещений. HOSTVM Manager предоставляет OID по умолчанию: 1.3.6.1.4.1.2312.13.1.1. Все типы ловушек отправляются вместе с информацией о событии SNMP-менеджеру, когда этот OID определен. Обратите внимание, что изменение Trap OID по умолчанию не позволяет сгенерированным ловушкам соответствовать информационной базе HOSTVM Manager.
* Имя пользователя SNMP для SNMPv3, уровни безопасности 1, 2 и 3.
* Кодовая фраза SNMP для SNMPv3, уровни безопасности 2 и 3.
* Приватная кодовая фраза SNMP для SNMPv3, уровень безопасности 3.

{% hint style="info" %}
HOSTVM Manager предоставляет MIB (management information bases), расположенные в `/usr/share/doc/ovirt-engine/mibs/OVIRT-MIB.txt` и `/usr/share/doc/ovirt-engine/mibs/REDHAT-MIB.txt`. Прежде чем продолжить, загрузите MIB в свой SNMP-менеджер.
{% endhint %}

Параметры SNMP по умолчанию расположены на машине HOSTVM Manager в файле конфигурации службы уведомлений о событиях /usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf. Для значений, указанных в следующем примере, за основу взяты значения по умолчанию или примеры, приведенные в этом файле. Не редактируйте этот файл, поскольку системные изменения, такие как обновления, могут привести к удалению любых изменений, внесенных в этот файл. Вместо этого скопируйте этот файл в `/etc/ovirt-engine/notifier/notifier.conf.d/<integer>-snmp.conf`, где `<integer>`- это число, указывающее приоритет, с которым файл будет запускаться.

### Процедура&#x20;

1. На машине HOSTVM Manager создайте файл конфигурации SNMP с именем файла `<integer>-snmp.conf`, где `<integer>` - это целое число, указывающее порядок обработки файлов. Например:

```
# vi /etc/ovirt-движок/уведомитель/notifier.conf.d/20-snmp.conf
```

{% hint style="warning" %}
Скопируйте настройки SNMP по умолчанию из файла конфигурации службы уведомлений о событиях `/usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf`. Этот файл содержит комментарии для всех настроек.
{% endhint %}

2. Укажите SNMP-менеджера(ов), SNMP community (только  для SNMPv2) и OID в формате, указанном в следующем примере:

```
SNMP_MANAGERS="manager1.example.com manager2.example.com:162".
SNMP_COMMUNITY=общедоступный 
SNMP_OID=1.3.6.1.4.1.2312.13.1.1 
```

3. Укажите, следует ли использовать SNMP версии 2 (по умолчанию) или 3:

```
SNMP_VERSION=3
```

4. Укажите значение для SNMP\_ENGINE\_ID. Например:

```
SNMP_ENGINE_ID="80:00:00:00:01:02:05:05"
```

5. Для SNMPv3 укажите уровень безопасности для SNMP-ловушек:

Security level 1, NoAuthNoPriv traps:

```
SNMP_USERNAME=NoAuthNoPriv
SNMP_SECURITY_LEVEL=1
```

Security level 2, AuthNoPriv traps, пользователь - **ovirtengine**, с использованием кодовой фразы SNMP Auth **authpass**.

```
SNMP_USERNAME=ovirtengine 
SNMP_AUTH_PROTOCOL=MD5 
SNMP_AUTH_PASSPHRASE=аутентификация 
SNMP_SECURITY_LEVEL=2
```

Security level 3, AuthPriv traps, пользователь - **ovirtengine** с использованием кодовых фраз SNMP Auth **authpass** и  SNMP Priv **privpass**. Например:

```
SNMP_ИМЯ ПОЛЬЗОВАТЕЛЯ=ovirtengine 
SNMP_AUTH_PROTOCOL=MD5 
SNMP_AUTH_PASSPHRASE=аутентификация 
SNMP_PRIVACY_PROTOCOL=AES128 
SNMP_PRIVACY_PASSPHRASE=privpass 
SNMP_SECURITY_LEVEL=3
```

6. Определите, какие события отправлять диспетчеру SNMP:

Примеры событий \
Отправлять все события в профиль SNMP по умолчанию:

```
FILTER="include:*(snmp:) ${FILTER}"
```

Отправлять все события **ERROR** или **ALERT** в профиль SNMP по умолчанию:

```
FILTER="include:*:ERROR(snmp:) ${FILTER}"
```

```
FILTER="include:*:ALERT(snmp:) ${FILTER}"
```

Отправлять события для VDC\_START на указанный адрес электронной почты:

```
FILTER="include:VDC_START(snmp:mail@example.com) ${FILTER}"
```

Отправлять события для всего, кроме VDC\_START, в профиль SNMP по умолчанию:

```
FILTER="exclude:VDC_START include:*(snmp:) ${FILTER}"
```

Фильтр по умолчанию, определённый в ovirt-engine-notifier.conf; если не отключить этот фильтр или не применить переопределяющие фильтры, уведомления отправляться не будут:

```
FILTER="exclude:*"
```

**VDC\_START** - это пример доступных сообщений журнала аудита. Полный список сообщений журнала аудита можно найти в `/usr/share/doc/ovirt-engine/AuditLogMessages.properties`. Также, возможна фильтрация результатов в вашем SNMP-менеджере.

7. Сохраните файл.
8. Запустите службу **ovirt-engine-notifier** и добавьте её в автозагрузку:

```
# systemctl start ovirt-engine-notifier.service
# systemctl enable ovirt-engine-notifier.service
```

Проверьте свой SNMP-менеджер, чтобы убедиться, что он принимает SNMP-ловушки .

{% hint style="info" %}
Должен быть определён один из параметров: **SNMP\_MANAGERS**, **MAIL\_SERVER** или оба в `/usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf` или в созданном вами файле конфигурации, чтобы служба уведомлений могла работать.
{% endhint %}

### Пример файла конфигурации SNMP&#x20;

Для этого примера взяты настройки из файла ovirt-engine-notifier.conf. Файл конфигурации SNMP переопределяет настройки в ovirt-engine-notifier.conf.

{% hint style="warning" %}
Скопируйте настройки SNMP по умолчанию из файла конфигурации службы уведомлений о событиях `/usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf` в `/etc/ovirt-engine/notifier/notifier.conf.d/<`*`integer`*`>-snmp.conf`, где `<`*`integer`*`>` - это число, указывающее порядок обработки файлов. Этот файл содержит комментарии для всех настроек.
{% endhint %}

`/etc/ovirt-engine/notifier/notifier.conf.d/20-snmp.conf`&#x20;

```
SNMP_MANAGERS="manager1.example.com manager2.example.com:162" 1
SNMP_COMMUNITY=public                                         2
SNMP_OID=1.3.6.1.4.1.2312.13.1.1                              3
FILTER="include:*(snmp:)"                                     4
SNMP_VERSION=3                                                5
SNMP_ENGINE_ID="80:00:00:00:01:02:05:05"                      6
SNMP_USERNAME=<username>                                      7
SNMP_AUTH_PROTOCOL=MD5                                        8
SNMP_AUTH_PASSPHRASE=<authpass>                               9
SNMP_PRIVACY_PROTOCOL=AES128                                  10
SNMP_PRIVACY_PASSPHRASE=<privpass>                            11
SNMP_SECURITY_LEVEL=3 Some code                               12
```

1 IP-адреса или FQDN машин, которые будут выполнять функции SNMP-менеджеров. Записи должны быть разделены пробелом и могут содержать номер порта. Например, **manager1.example.com** **manager2.example.com:164**&#x20;

2 (Только для SNMPv2) SNMP Community String по умолчанию. \
SNMP Trap OID для исходящих уведомлений. iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) redhat(2312) ovirt(13) engine(1) notifier(1)

{% hint style="danger" %}
3 Изменение значения по умолчанию приведет к тому, что сгенерированные ловушки не будут соответствовать требованиям OVIRT-MIB.txt.
{% endhint %}

4 Алгоритм, используемый для определения триггеров и получателей SNMP-уведомлений.&#x20;

5 Версия SNMP. Поддерживаются ловушки SNMPv2 и SNMPv3. 2 = SNMPv2, 3 = SNMPv3.&#x20;

6 (Только для SNMPv3) Engine ID, используемый для SNMP-ловушек.&#x20;

7 (Только для SNMPv3) Имя пользователя, используемое для SNMP-ловушек.&#x20;

8 (Только для SNMPv3) Протокол аутентификации SNMP. Поддерживаемые значения - MD5 и SHA. Требуется, если для **SNMP\_SECURITY\_LEVEL** установлено значение 2 (**AUTH\_NOPRIV**) или 3 (**AUTH\_PRIV**).&#x20;

9 (Только для SNMPv3) Ключевая фраза SNMP Auth. Требуется, если для **SNMP\_SECURITY\_LEVEL** установлено значение 2 (**AUTH\_NOPRIV)** или 3 (**AUTH\_PRIV**).&#x20;

10 (Только для SNMPv3) SNMP privacy protocol. Поддерживаемые значения - AES128, AES192 и AES256. Заметьте, что AES192 и AES256 не определены в RFC3826, поэтому убедитесь, что ваш SNMP-сервер поддерживает эти протоколы, прежде чем включать их. Требуется, если для **SNMP\_SECURITY\_LEVEL** установлено значение 3 (**AUTH\_PRIV**).&#x20;

11 (Только для SNMPv3) Ключевая фраза SNMP, используемая, когда для **SNMP\_SECURITY\_LEVEL** задано значение 3 (**AUTH\_PRIV**).&#x20;

12 (Только для SNMPv3) Уровень безопасности SNMP. 1 = **NOAUTH\_NOPRIV**, 2 = **AUTH\_NOPRIV**, 3 = **AUTH\_PRIV**.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kb.pvhostvm.ru/hostvm-server/rukovodstvo-po-administrirovaniyu/nastroika-uvedomlenii/nastroika-hostvm-manager-dlya-otpravki-snmp-lovushek.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
