Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


icinga:icinga-monitoring-of-hp-smart-array-and-msa-storage-raid-controllers-via-check_raid-plug-in-with-cciss_vol_status-tool

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
icinga:icinga-monitoring-of-hp-smart-array-and-msa-storage-raid-controllers-via-check_raid-plug-in-with-cciss_vol_status-tool [14.06.2018 17:14] Алексей Максимовicinga:icinga-monitoring-of-hp-smart-array-and-msa-storage-raid-controllers-via-check_raid-plug-in-with-cciss_vol_status-tool [17.10.2019 09:27] (текущий) – [Плагин check_cciss] Алексей Максимов
Строка 1: Строка 1:
-===== Мониторинг RAID-контроллеров HP Smart Array (и Compaq MSA) в Icinga с плагином check_raid =====+===== Мониторинг RAID-контроллеров HP Smart Array (и Compaq MSA) в Icinga с плагинами check_raid и check_cciss =====
  
 {{:icinga:pasted:20180614-164105.png }} Среди ряда публично доступных плагинов мониторинга **RAID**-контроллеров **HP Smart Array**, совместимых с **Icinga**,  {{:icinga:pasted:20180614-164105.png }} Среди ряда публично доступных плагинов мониторинга **RAID**-контроллеров **HP Smart Array**, совместимых с **Icinga**, 
Строка 8: Строка 8:
 ---- ----
 \\ \\
-==== Установка плагина check_raid ====+==== Плагин check_raid ====
  
 Плагин **check_raid** по своей сути - большой скрипт, написанный на **Perl**. Плагин является универсальным, так как поддерживает мониторинг множества разных типов RAID-контроллеров. Основная информация о плагине доступна на странице проекта: [[https://github.com/glensc/nagios-plugin-check_raid|nagios-plugin-check_raid]] Плагин **check_raid** по своей сути - большой скрипт, написанный на **Perl**. Плагин является универсальным, так как поддерживает мониторинг множества разных типов RAID-контроллеров. Основная информация о плагине доступна на странице проекта: [[https://github.com/glensc/nagios-plugin-check_raid|nagios-plugin-check_raid]]
Строка 132: Строка 132:
 Теперь на стороне сервера **Icinga** в веб-консоли **Icinga Director** создаём команду, например "**check_raid_cciss**" (с фактической командой вызова ''check_raid.pl --plugin cciss'') Теперь на стороне сервера **Icinga** в веб-консоли **Icinga Director** создаём команду, например "**check_raid_cciss**" (с фактической командой вызова ''check_raid.pl --plugin cciss'')
  
-{{ :icinga:pasted:20180614-161714.png }}+{{:icinga:pasted:20180614-161714.png}}
  
 Затем на основе созданной ранее команды "**check_raid_cciss**" создаём шаблон службы, например "**Disk array HP Compaq RAID**"  Затем на основе созданной ранее команды "**check_raid_cciss**" создаём шаблон службы, например "**Disk array HP Compaq RAID**"
  
-{{ :icinga:pasted:20180614-162023.png }}+{{:icinga:pasted:20180614-162023.png}}
  
 Назначаем любым удобным способом шаблон службы на хосты, которые необходимо мониторить данной службой  Назначаем любым удобным способом шаблон службы на хосты, которые необходимо мониторить данной службой 
 (разумеется на всех соответствующих хостах в каталоге ''$ICINGA_PLUGIN_DIR'' предварительно должен быть установлен плагин **check_raid.pl**). В нашем упрощённом примере создано правило **Apply Rule** с нацеливанием на имя конкретного сервера.  (разумеется на всех соответствующих хостах в каталоге ''$ICINGA_PLUGIN_DIR'' предварительно должен быть установлен плагин **check_raid.pl**). В нашем упрощённом примере создано правило **Apply Rule** с нацеливанием на имя конкретного сервера. 
  
-{{ :icinga:pasted:20180614-162337.png }}+{{:icinga:pasted:20180614-162337.png}}
  
 В конечном итоге получаем желаемый результат: В конечном итоге получаем желаемый результат:
  
-{{ :icinga:pasted:20180614-162819.png }}+{{:icinga:pasted:20180614-162819.png}}
  
 По аналогии можно создать и другие команды, например "**check_raid_hpacucli**" (с фактической командой вызова ''check_raid.pl hpacucli --bbu-monitoring'') и затем использовать эту команду при создании шаблона службы, которая так же будет в последующем назначена на хосты.  По аналогии можно создать и другие команды, например "**check_raid_hpacucli**" (с фактической командой вызова ''check_raid.pl hpacucli --bbu-monitoring'') и затем использовать эту команду при создании шаблона службы, которая так же будет в последующем назначена на хосты. 
  
-Однако в некоторых случаях для мониторинга контроллеров HP Smart Array более удобным может показаться и другой плагин **check_cciss**, установка которого описана в отдельной статье.+Однако в некоторых случаях для мониторинга контроллеров HP Smart Array более удобным может показаться и другой плагин **check_cciss**, установку которого рассмотрим далее.
  
 \\ \\
 ---- ----
  
-==== Установка плагина check_cciss ====+==== Плагин check_cciss ====
  
 Плагин **check_cciss** по сути является обычный **shell**-скриптом. Этот плагин является более простым и узкоспециализированным, то есть, в отличие от рассмотренного выше плагина **check_raid**, данный плагин умеет мониторить только контроллеры **HP Smart Array**. Более подробную информацию о плагине можно получить на странице [[https://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/RAID-Controllers/check_cciss--2D-HP-and-Compaq-Smart-Array-Hardware-status/details|check_cciss]] Плагин **check_cciss** по сути является обычный **shell**-скриптом. Этот плагин является более простым и узкоспециализированным, то есть, в отличие от рассмотренного выше плагина **check_raid**, данный плагин умеет мониторить только контроллеры **HP Smart Array**. Более подробную информацию о плагине можно получить на странице [[https://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/RAID-Controllers/check_cciss--2D-HP-and-Compaq-Smart-Array-Hardware-status/details|check_cciss]]
 +
 На мой взгляд, данный плагин интересен тем, что имеет отлаженную возможность мониторинга кэш-батареи контроллера, а также позволяет получить более информативный вывод в случае необходимости, то есть можно включить отображение информации о каждом диске в массиве.   На мой взгляд, данный плагин интересен тем, что имеет отлаженную возможность мониторинга кэш-батареи контроллера, а также позволяет получить более информативный вывод в случае необходимости, то есть можно включить отображение информации о каждом диске в массиве.  
  
 Чтобы было проще загрузить скрипт, я переложил его на github. Загружаем: Чтобы было проще загрузить скрипт, я переложил его на github. Загружаем:
  
-# wget https://raw.githubusercontent.com/Aleksey-Maksimov/Icinga2/master/plugins/check_cciss.sh +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># wget https://raw.githubusercontent.com/Aleksey-Maksimov/check_cciss/master/check_cciss \ 
- --directory-prefix=$ICINGA_PLUGIN_DIR+ --directory-prefix=$ICINGA_PLUGIN_DIR</pre></HTML>
  
 Делаем скрипт исполняемым: Делаем скрипт исполняемым:
  
-# cd $ICINGA_PLUGIN_DIR +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># cd $ICINGA_PLUGIN_DIR 
-# chmod +x ./check_cciss.sh +# chmod +x ./check_cciss.sh</pre></HTML>
  
 Чтобы проверить возможность запуска плагина и получить обильную справочную информацию о его использовании, выполним: Чтобы проверить возможность запуска плагина и получить обильную справочную информацию о его использовании, выполним:
  
-# ./check_cciss.sh -h+<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ./check_cciss.sh -h</pre></HTML>
  
  
-На обновляемых из репозиториев HP системах вместо утилиты **hpssacli** сейчас используется утилита **ssacli**+На обновляемых из репозиториев HP системах вместо утилиты **hpssacli** сейчас используется утилита **ssacli**.
 Синтаксис этих двух утилит схож. Поэтому, чтобы сделать возможной работу скрипта мониторинга сделаем линк: Синтаксис этих двух утилит схож. Поэтому, чтобы сделать возможной работу скрипта мониторинга сделаем линк:
  
-# ln -s /usr/sbin/ssacli /usr/sbin/hpssacli+<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ln -s /usr/sbin/ssacli /usr/sbin/hpssacli</pre></HTML>
  
 Проверим линк: Проверим линк:
  
-# ls -la /usr/sbin/hpssacli+<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ls -la /usr/sbin/hpssacli</br><font style="color:#B2B2B2;"> 
 +lrwxrwxrwx. 1 root root 16 Jun 12 11:48 /usr/sbin/hpssacli -> /usr/sbin/ssacli</font></pre></HTML>
  
-lrwxrwxrwx. 1 root root 16 Jun 12 11:48 /usr/sbin/hpssacli -> /usr/sbin/ssacli 
  
-По умолчанию дотянутся до утилит ssacli может только root:+По умолчанию дотянутся до утилиты **ssacli** может только **root**:
  
-# ls -la /usr/sbin/ssacli +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ls -la /usr/sbin/ssacli</br><font style="color:#B2B2B2;"> 
- +-r-x------. 1 root root 174 May 17  2017 /usr/sbin/ssacli</font></pre></HTML>
--r-x------. 1 root root 174 May 17  2017 /usr/sbin/ssacli+
  
 Дадим права на исполнение файла всем пользователям системы:  Дадим права на исполнение файла всем пользователям системы: 
  
-# chmod 555 /usr/sbin/ssacli +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># chmod 555 /usr/sbin/ssacli 
-# ls -la /usr/sbin/ssacli+# ls -la /usr/sbin/ssacli</br><font style="color:#B2B2B2;"> 
 +-r-xr-xr-x. 1 root root 174 May 17  2017 /usr/sbin/ssacli</font></pre></HTML>
  
--r-xr-xr-x. 1 root root 174 May 17  2017 /usr/sbin/ssacli+Теперь нам потребуется дополнительно выдать права пользователю, от имени которого работает служба **Icinga** для возможности выполнения утилит диагностики HP без необходимости повышения уровня прав через **sudo** 
 +Создадим файл настроек в ''/etc/sudoers.d/'':
  
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># nano /etc/sudoers.d/check_cciss</pre></HTML>
  
-Теперь нам потребуется дополнительно выдать права пользователю, от имени которого работает служба Icinga для возможности выполнения утилит диагностики HP без необходимости повышения уровня прав через sudo +Наполним файл содержимым:
-Создадим файл настроек в /etc/sudoers.d/:+
  
-# nano /etc/sudoers.d/check_cciss +<file bash check_cciss>User_Alias CHECK_CCISS=nagios, icinga
- +
-User_Alias CHECK_CCISS=nagios, icinga+
 Defaults:CHECK_CCISS !requiretty Defaults:CHECK_CCISS !requiretty
 # #
Строка 214: Строка 213:
 CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller all show status CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller all show status
 CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller * logicaldrive all show CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller * logicaldrive all show
-CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller * physicaldrive all show+CHECK_CCISS ALL=(root) NOPASSWD: /usr/sbin/hpssacli controller * physicaldrive all show</file>
  
  
-<WRAP center important 100%>Будьте внимательны.+<WRAP center important 100%>Будьте внимательны.\\
 Некорректные манипуляции с настройками **sudo** могут сломать возможность штатного повышения уровня прав для всех пользователей системы. В результате этого можно полностью потерять административный доступ к системе. В таком случае помогут только [[unix-linux:debian:stretch:how-to-restore-root-access-to-debian-linux-if-sudo-does-not-work|отдельные восстановительные меры]], использование которых потребует на некоторое время вывести сервер в **offline**. Некорректные манипуляции с настройками **sudo** могут сломать возможность штатного повышения уровня прав для всех пользователей системы. В результате этого можно полностью потерять административный доступ к системе. В таком случае помогут только [[unix-linux:debian:stretch:how-to-restore-root-access-to-debian-linux-if-sudo-does-not-work|отдельные восстановительные меры]], использование которых потребует на некоторое время вывести сервер в **offline**.
 </WRAP> </WRAP>
Строка 224: Строка 223:
 Проверяем работу плагина Проверяем работу плагина
  
-# ./check_cciss.sh -v+<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ./check_cciss.sh -v</br><font style="color:#B2B2B2;"> 
 +RAID OK:  Smart Array P400 in Slot 1  
 +array A logicaldrive 1 (68.3 GB, RAID 1, OK)  
 +array B logicaldrive 2 (68.3 GB, RAID 1, OK)  
 +[Controller Status: OK Cache Status: OK Battery/Capacitor Status: OK] 
 +</font></pre></HTML>
  
-RAID OK:  Smart Array P400 in Slot 1 array A logicaldrive 1 (68.3 GB, RAID 1, OK) array B logicaldrive 2 (68.3 GB, RAID 1, OK) [Controller Status: OK Cache Status: OK Battery/Capacitor Status: OK]+С дополнительным ключом ''-p'' в выводе плагина сможем видеть информацию о состоянии каждого диска
  
-С дополнительным ключом -p в выводе плагина сможем видеть информацию о состоянии каждого диска+<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># ./check_cciss.sh -v -p</br><font style="color:#B2B2B2;"> 
 +RAID OK:  Smart Array P400 in Slot 1  
 +array A logicaldrive 1 (68.3 GB, RAID 1, OK)  
 +array B logicaldrive 2 (68.3 GB, RAID 1, OK)  
 +physicaldrive 1I:1:5 (port 1I:box 1:bay 5, SAS, 72 GB, OK)  
 +physicaldrive 2I:1:1 (port 2I:box 1:bay 1, SAS, 72 GB, OK)  
 +physicaldrive 1I:1:6 (port 1I:box 1:bay 6, SAS, 72 GB, OK)  
 +physicaldrive 2I:1:2 (port 2I:box 1:bay 2, SAS, 72 GB, OK)  
 +[Controller Status: OK Cache Status: OK Battery/Capacitor Status: OK] 
 +</font></pre></HTML>
  
-# ./check_cciss.sh -v -p 
  
-RAID OK:  Smart Array P400 in Slot 1 array A logicaldrive 1 (68.3 GB, RAID 1, OK) array B logicaldrive 2 (68.3 GB, RAID 1, OK) physicaldrive 1I:1:5 (port 1I:box 1:bay 5, SAS, 72 GB, OK) physicaldrive 2I:1:1 (port 2I:box 1:bay 1, SAS, 72 GB, OK) physicaldrive 1I:1:6 (port 1I:box 1:bay 6, SAS, 72 GB, OK) physicaldrive 2I:1:2 (port 2I:box 1:bay 2, SAS, 72 GB, OK) [Controller Status: OK Cache Status: OK Battery/Capacitor Status: OK]+\\ 
 +----
  
 +==== Icinga Director и check_cciss  ====
  
 +По аналогии с обозначенным выше примером, на стороне сервера Icinga в веб-консоли Icinga Director создаём команду, например "**check_cciss**" (с фактической командой вызова ''check_cciss.sh -v'')
  
-\\ +{{:icinga:pasted:20180614-173459.png}} 
-----+ 
 +Затем на основе созданной ранее команды "**check_cciss**" создаём шаблон службы, например "**Disk array HP Smart Array RAID**"
  
-==== Icinga Director и check_ciss  ====+{{:icinga:pasted:20180614-174011.png}}
  
 +Назначаем любым удобным способом созданный шаблон службы на хосты, которые необходимо мониторить данной службой (разумеется на всех соответствующих хостах в каталоге ''$ICINGA_PLUGIN_DIR'' предварительно должен быть установлен плагин **check_cciss.sh**). 
 +В нашем упрощённом примере создано правило **Apply Rule** с нацеливанием на имена некоторых серверов по маске.
  
-Создаём команду "check_cciss" (check_cciss.sh -v -p)+{{:icinga:pasted:20180614-174353.png}}
  
-Создаём шаблон службы "Disk array HP Smart Array RAID" +В конечном итоге получаем желаемый результат:
  
 +{{:icinga:pasted:20180614-174706.png}}
  
 \\ \\
 ---- ----
 Проверено на следующих конфигурациях: Проверено на следующих конфигурациях:
-^ Версия ОС на стороне клиента Icinga ^ Версия клиента Icinga ^ Версия скрипта check_raid  ^ +^ Версия ОС на стороне клиента Icinga ^ Версия клиента Icinga ^ Скрипт и его версия  ^ 
-| Debian GNU/Linux 9.4 (Stretch) | r2.7.0-1 | 4.0.8 (2017-09-01) | +| Debian GNU/Linux 9.4 (Stretch) x86_64 | r2.7.0-1 | check_raid 4.0.8 (2017-09-01) | 
 +| Debian GNU/Linux 9.4 (Stretch) x86_64 | r2.7.0-1 | check_cciss 1.15 (2017/04/28) | 
 +| CentOS Linux release 7.5.1804 (Core) x86_64 | r2.8.4-1 | check_cciss 1.15 (2017/04/28) | 
  
 ---- ----
-{{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Виталий Якоб]] \\ Время публикации: 14.06.2018 15:22+{{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 14.06.2018 15:22
  
-{{tag>Icinga Monitoring Plugin HP "Smart Array" "Smart Array P400" P400 MSA "MSA 1000" RAID "Disk array" cciss Storage Nagios Linux Debian CentOS}}+{{tag>Icinga "Icinga Director" Monitoring Plugin HP "Smart Array" "Smart Array P400" P400 MSA "MSA 1000" RAID "Disk array" cciss Storage Nagios Linux Debian CentOS}}
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
icinga/icinga-monitoring-of-hp-smart-array-and-msa-storage-raid-controllers-via-check_raid-plug-in-with-cciss_vol_status-tool.1528985672.txt.gz · Последнее изменение: 14.06.2018 17:14 — Алексей Максимов

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki