Якщо ви хочете відслідковувати стан серверів VMWare ESXi у своїй корпоративній системі моніторингу, вам потрібно включити і налаштування на хостах віртуалізації службу SNMP. У цій статті ми покажемо, як включити і налаштувати службу SNMP в VMWare ESXi 6.7 (стаття підходить для всіх актуальних версій ESXi, починаючи з 5.5).

У ESXi є вбудований SNMP агент, який може відправляти і отримувати запити і трапи. Ви можете включити і налаштувати агент SNMP на ESXi хостах декількома способами: через vCLI, PowerCLI, але не через графічний інтерфейс клієнта vSphere.

Сервіс SNMP Server у VMWare ESXi

З інтернету інтерфейсу vSphere ви можете тільки перевірити, що служба SNMP сервер запущено, змінити режим її запуску, зупинити / запустити сервіс. Перейдіть на свій ESXi хост -> Configure -> Services -> SNMP-сервер. За замовчуванням служба зупинена. Запустіть її.

Сервіс SNMP Server на vmware esxi

Увімкніть SSH доступ на ESXi хості і підключіться до нього будь-яким ssh-клієнтом (я використовую вбудований OpenSSH клієнт Windows 10).

Щоб перевірити поточні налаштування SNMP, виконайте команду:

esxcli system snmp get

esxcli system snmp get - перевірка налаштувань snmp в esxi

SNMP не налаштований: всі параметри порожні, агент відключений:

Authentication:
Communities:
Enable: false
Engineid:
Hwsrc: indications
Largestorage: true
Loglevel: info
Notraps:
Port: 161
Privacy:
Remoteusers:
Syscontact:
Syslocation:
Targets:
Users:
V3targets:

Налаштування параметрів SNMP агента в ESXi

Зазначимо адресу сервера моніторингу (SNMP target), порт (за замовчуванням 161 UDP) і ім’я SNMP community (зазвичай public):

esxcli system snmp set --targets=192.168.1.100@161/public

Або ви можете вказати ім’я community так:

esxcli system snmp set --communities YOUR_COMMUNITY_STRING

Додатково можна вказати місце розташування:

esxcli system snmp set --syslocation "Серверная Дуб. 22, МСК, RU"

Контакти:

esxcli system snmp set --syscontact admin@winitpro.ru
Тепер потрібно включити сервіс SNMP на хості ESXi:

esxcli system snmp set --enable true

Щоб протестувати конфігурацію SNMP:

esxcli system snmp test

esxi cli: включити і протестувати настройки snmp

Для застосування налаштувань запустіть службу SNMP командою:

/etc/init.d/snmpd restart

snmpd restart перезапуск служби snmp

Щоб скинути поточні настройки, виконайте:

esxcli system snmp set –r

Для відключення SNMP, виконайте:

esxcli system snmp set --disable true

Налаштування брандмауера ESXi для SNMP трафіку

Ви можете дозволити трафік SNMP в файервол хоста ESXi двома способами. Щоб дозволити отримання SMNP запитів від будь-яких пристроїв в мережі:

esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true

Або ви можете дозволити вхідний трафік тільки від конкретного IP адреси вашого сервера моніторингу, або певної IP підмережі, в якій знаходяться ваші SNMP сервера:

esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.1.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true

Тепер ви можете моніторити ваші ESXi сервера.

Налаштування параметрів SNMP на хості ESXi через PowerCLI

Якщо вам потрібно швидко налаштувати параметри SNMP на декількох хостах ESXi, ви можете скористатися скриптом в PowerCLI:

$ESXi = 'msk-esxi01'
$Community = 'Public'
$Target="192.168.1.100"
$Port="161"

# Підключення до хосту ESXi
Connect-VIServer -сервер $ sESXIost
# Очищення поточних налаштувань SNMP
Get-VMHostSnmp | Set-VMHostSnmp -ReadonlyCommunity @ ()
# Налаштування параметрів SNMP
Get-VMHostSnmp | Set-VMHostSnmp -Увімкнено: $ true -AddTarget -TargetCommunity $ Community -TargetHost $ Target -TargetPort $ Port -ReadOnlyCommunity $ Community
# Висновок текущі’ параметри SNMP
$ Cmd = Get-EsxCli -VMHost $ ESXiHost
$ Cmd.System.Snmp.Get ()

Якщо у вас є просунута ліцензія VMWare Enterprise Plus, ви можете налаштувати параметр SNMP на ESXi хостах через Host Profiles (Management -> Host Profiles -> your Profile -> SNMP Agent Configuration).

Налаштування протоколу SNMPv3 на ESXI

Вище ми розглянули, як включити і налаштувати на хостах ESXi SNMP агент версії 1 і 2. Починаючи з ESXi 5.1 підтримується більш сучасна версія протоколу – SNMP v3. Щоб налаштувати більш безпечний протокол SNMPv3, скористайтеся наступними командами.

Задаємо протоколи аутентифікації і шифрування:

esxcli system snmp set -a MD5 -x AES128

Генеруємо хеші для паролів аутентифікації і шифрування (замініть authpass і privhash на потрібний пароль):

esxcli system snmp hash --auth-hash authpass --priv-hash privhash --raw-secret

За допомогою отриманих хеш (authhash і privhash), додамо користувача:

esxcli system snmp set -e yes -C admin@winitpro.ru -u snmpuser/authhash/privhash/priv

Тепер потрібно вказати SNMP-таргет:

esxcli system snmp set –v3targets 192.168.1.100@161/user/priv/trap

Ви можете віддалено перевірити SNMP конфігурацію за допомогою Linux утиліти snmpwalk:

snmpwalk -v3 -u snmpuser -l AuthPriv -a SHA -A $ecret1 -x AES-X $ecret2 192.168.101.20

Leave a Reply

Your email address will not be published. Required fields are marked *