Есть несколько серверов ProLiant DL320e Gen8 с аппаратным RAID HP Smart Array G6 controllers, на которых установлен CentOS 6.
Требуется мониторить состояние дисков в RAID 10, хотя бы с помощью утилиты smartctl
Убедиться, что именно такой контроллер, можно вот так:
# lspci | grep RAID
05:00.0 RAID bus controller: Hewlett-Packard Company Smart Array G6 controllers (rev 01)
У HP есть утилита, которая позволяет посмотреть в linux состояние дисков, входящих в состав RAID массива. Называется она hpacucli.
По сути, наша задача только лишь ее установить, в остальном, за исключением некоторых особенностей синтаксиса вызова smartctl, отличий нет.
Для установки утилиты действуем так:
1. Создаем файл в /etc/yum.repos.d/, например, spp.repo
# nano /etc/yum.repos.d/spp.repo
Содержимое файла должно содержать:
dist_ver — версию дистрибутива (можно выяснить командой # cat /etc/centos-release);
arch — архитектура (можно выяснить командой # # uname -m);
project_ver — я ставлю current
Для моей ОС CentOS 6.6 и 64 битной архитектуры строка получилась
http://downloads.linux.hp.com/repo/spp/rhel/6.6/x86_64/current/
[spp]
name=Service Pack for ProLiant
baseurl=http://downloads.linux.hp.com/repo/spp/rhel/dist_ver/arch/project_ver
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-ServicePackforProLiant
2. Затем даем команду установки:
# yum install -y hpacucli
Для получения информации о дисках, входящий в массив, а так же сведения о массиве пользуемся командой :
# hpacucli ctrl all show config
Smart Array P410 in Slot 2 (sn: PACCRID124902P8)
array A (SATA, Unused Space: 0 MB)
logicaldrive 1 (1.8 TB, RAID 1+0, OK)
physicaldrive 2I:0:5 (port 2I:box 0:bay 5, SATA, 1 TB, OK)
physicaldrive 2I:0:6 (port 2I:box 0:bay 6, SATA, 1 TB, OK)
physicaldrive 2I:0:7 (port 2I:box 0:bay 7, SATA, 1 TB, OK)
physicaldrive 2I:0:8 (port 2I:box 0:bay 8, SATA, 1 TB, OK)
Как видно, рейд в рабочем состоянии, диски в статусе OK
Для получения smart info для дисков выполняем команду для каждого диска, нумерация от 0, то есть, для первого диска:
# smartctl -a /dev/sda -d cciss,0 --all
Посмотреть smart сразу для четырех дисков можно командой
# for i in $(seq 0 3); do smartctl -a /dev/sda -d cciss,$i ;done
У меня виснет весь сервер при вводе:
smartctl -a /dev/sda -d cciss,0 —all