- Fc подключение к схд сервера под linux
- Многопутевой ввод-вывод (Multipath I/O)
- Установка OceanStor UltraPath
- Настройка UltraPath
- Пересканировать SCSI
- Предварительная настройка
- Настройка системы хранения данных
- Подключение дисковых ресурсов в ОС, настройка MPIO
- Тестирование производительности
- Тестирование утилитой hdparm
- Тестирование копированием блоков (dd)
- Тестирование базой данных PostgreSQL
- Заключение
Fc подключение к схд сервера под linux
Есть другие способы чтобы получить информацию о HBA, но удобнее использовать systool (пакет sysfsutils).
yum install sysfsutils systool -c fc_host
systool -c fc_host -v | grep port_name port_name = "0x21000024ff53e456" port_name = "0x21000024ff53e457"
Сообщите эти значения администратору для настройки параметров доступа к вашему LUN
systool -c fc_host -v | grep port_state port_state = "Online" port_state = "Online"
Если статус Online и настроен доступ на СХД, то можно перезагрузить модуль адаптера и попытаться увидеть ваш LUN
rmmod qla2xxx modprobe qla2xxx
lsscsi -s [0:0:1:1] disk HUAWEI XSG1 4303 /dev/sdg 214GB [0:0:2:1] disk HUAWEI XSG1 4303 /dev/sdh 214GB [7:0:1:1] disk HUAWEI XSG1 4303 /dev/sdc 214GB [7:0:2:1] disk HUAWEI XSG1 4303 /dev/sdd 214GB [7:0:4:1] disk HUAWEI XSG1 4303 /dev/sde 214GB [7:0:5:1] disk HUAWEI XSG1 4303 /dev/sdf 214GB
В этом примере мне выделен один LUN на 200GB, но я вижу 8 штук. Причина в том, что этот LUN виден по 8-ми путям. 2 порта на моем сервере и группа из 4-х портов на СХД образуют 8 возможных путей прохождения данных.
Это необходимо для распределения нагрузки и отказоустойчивости.
— Какое же из устройств использовать? — Если вы просто будете использовать в таком варианте одно из устройств, то это означает использование только одного пути.
Для использования всех нужно использовать либо службу Multipath или Huawei OceanStor UltraPath
Многопутевой ввод-вывод (Multipath I/O)
Использовать много-путевой доступ необходимо даже в том случае если на вашем сервере используется 1 порт.
Иначе, например, в случае обновления прошивки на одном из контроллеров СХД произойдет временное отключение вашего сервера от СХД и данные на вашем LUN могу быть повреждены.
Многопутевой ввод-вывод (Multipath I/O) — технология подключения узлов сети хранения данных с использованием нескольких маршрутов. В случае отказа одного из контроллеров, операционная система будет использовать другой для доступа к устройству. Это повышает отказоустойчивость системы и позволяет распределять нагрузку.
Multipath устройства объединяются в одно устройство с помощью специализированного программного обеспечения в новое устройство. Multipath обеспечивает выбор пути и переключение на новый маршрут при отказе текущего. Это происходит невидимо для программ и процессов использующих это устройство. Кроме того Multipath способен распределять передачу данных по разным путям посредством различных алгоритмов, например:
round-robin — Цикл по всем маршрутам в группе маршрутов, посылая одинаковый поток в каждый)
queue-length Посылать следующую порцию данных по маршруту с наименьшим количеством невыполненных запросов
service-time — Посылать следующую порцию данных по маршруту с наименьшими задержками, которые определяются делением общего объема невыполненного ввода/вывода на каждом маршруте на их относительную пропускную способность.
Преимущества Huawei UltraPath
Установка OceanStor UltraPath
Запросить у службы поддержки ссылку на пакет OceanStor UltraPath соответствующий версии вашей ОС.
unzip OceanStor_UltraPath_V100R008C50SPC200_RHEL.zip cd ./RHEL/ sh ./install.sh
В ходе установки вам будет предложено выбрать опции:
1: Boot from local 2: Boot from SAN
Если система у вас установлена на локальном HDD, то ваш выбор должен быть — 1: Boot from local Если ваша система установливалась на диск доступный по Fibre Channel или iSCSI, то ваш выбор должен быть — 2: Boot from SAN
Следующий шаг — согласиться или отказаться от перезагрузки системы.
The installation is complete. Whether to restart the system now?:n
Если для подключения к системе хранения используются HBA адаптеры HCA, QLogic или Emulex, мы рекомендуем установить значение N.
Установите следующие параметры драйвера HBA адаптера:
Например для QLogic (qla2xxx) в файле /etc/modprobe.d/nxupmodules.conf следует добавить строки, если их там нет:
options qla2xxx ql2xfailover=0 options qla2xxx qlport_down_retry=5
options lpfc lpfc_nodev_tmo=5
Для программного адаптера Linux-iscsi (Red Hat AS4) в файле /etc/iscsi.conf должны быть параметры:
Multipath=portal ConnFailTimeout=1
Для программного адаптера open-iscsi (RHEL-7, Centos) в файле /etc/iscsi/iscsid.conf должны быть параметры:
node.startup = automatic node.session.timeo.replacement_timeout=1
Убедитесь, что UltraPath работает
lsscsi | grep updisk [8:0:0:1] disk up updisk 4303 /dev/sdc
В данном случае виртуальный диск созданный UltraPath имеет имя /dev/sdc
В дальнейшем вы можете использовать его для всех нужд
parted -s /dev/sdc mkpart primary ext2 1 215GB
Создать файловую систему XFS:
Настройка UltraPath
Для управления параметрами используется утилита upadmin
Конфигурация по умолчанию после установки:
upadmin show upconfig ======================================================= UltraPath Configuration ======================================================= Basic Configuration Working Mode : load balancing within controller LoadBalance Mode : min-queue-depth Loadbanlance io threshold : 100 LUN Trespass : on
Здесь стоит изменить параметр Working Mode чтобы данные одновременно передавались по всем путям
upadmin set workingmode -m 0
Контроль I/O по путям для LUN с идентификатором 0:
upadmin show iostat vlun_id=0
Пересканировать SCSI
Если у вас изменился список scsi устройств (добавили LUN), то система не увидит их сама В дистрибутивах основанных на Red Hat есть скрипт:
После отрабатывания скрипта проверьте вывод команды:
Предварительная настройка
Установка операционной системы производится на встроенные диски сервера через интерфейс удаленного администрирования – XCLarity Controller в режиме «Установка ОС (Русский язык)».
Производится разбивка встроеной дисковой емкости следующим образом:
Устанавливается следующий набор программного обеспечения
Параметры безопасности ОС остаются без изменений
После установки входим в систему с созданной учетной записью пользователя, с уровнем целостности – 63.
Создадим локальную копию дистрибутива установочного образа для удобства управления пакетами.
apt install rsync mount /dev/cdrom rsync -av /media/cdrom / /mnt/distrib/
Пропишем путь до репозитория в файле /etc/apt/sources.list
deb file:/mnt/distrib smolensk contrib main non-free
Настройка системы хранения данных
Создадим сущность для хост-системы на СХД . Выбираем режим DM-MP Linux 3.10+
Объединим существующие диски в две группы (HDD и SSD) и создадим тома для нагрузочного тестирования:
Pool | Name | Size | Workload | LUN |
ssd_sas | pgbench | 1TB | Oracle | 10 |
hdd_sas | dd | 2TB | Other media and entertainment | 20 |
Подключение дисковых ресурсов в ОС, настройка MPIO
Установим драйвер многопутевого ввода-вывода, обновим список дисков, проверим корректность настройки:
apt install multipath-tools rescan-scsi-bus.sh multipath -ll
Установим поддержку ФС xfs, настроим и подключим точки монтирования
apt install xfsprogs mkfs.xfs /dev/dm-0 mkfs.xfs /dev/dm-1 mkdir /var/lib/postgresql mkdir /mnt/bench
Добавим в файл /etc/fstab следующие точки монтирования
/dev/dm-0 /var/lib/postgresql xfs defaults 0 0 /dev/dm-1 /mnt/bench xfs defaults 0 0
Тестирование производительности
Тестирование утилитой hdparm
Устанавливаем утилиту и проводим тестирование скорости чтения. Делаем 2-3 прохода.
apt-install hdparm hdparm -Tt /dev/dm-0 hdparm -Tt /dev/dm-1
Tied buffered reads (МБ/сек) | Проход 1 | Проход 2 | Проход 3 | Среднее | Медиана |
ssd | 953,86 | 953,07 | 953,12 | 953,35 | 953,12 |
sas | 40,43 | 77,44 | 111,39 | 76,42 | 77,44 |
Тестирование копированием блоков (dd)
Проверяем скорость чтения. Скопируем 100 ГБ файл, сбросим буфер на диск и прочитаем созданый файл. Делаем 4-5 проходов сброса кэша и чтения.
dd if=/dev/zero of=/var/lib/postgresql/ddbench.tmp bs=1M count=102400 conv=fdatasync,notrunc status=progress echo 3 > /proc/sys/vm/drop_caches dd if=/var/lib/postgresql/ddbench.tmp of=/dev/null bs=1M count=102400
Read speed (МБ/сек) | Проход 1 | Проход 2 | Проход 3 | Проход 4 | Проход 5 | Среднее | Медиана |
ssd | 518,99 | 1036,32 | 1036,61 | 1038,77 | 1034,85 | 933,11 | 1036,32 |
sas | 1024,85 | 1024,27 | 1024,88 | 1024,26 | 1020,34 | 1023,72 | 1024,27 |
Тестирование базой данных PostgreSQL
Создадим БД для тестирования
su postgres psql> CREATE DATABASE benchmark; \q
Наполним БД тестовыми данными
pgbench -i -s 10000 benchmark
pgbench -c 100 -j 16 -T600 -P 10 benchmark
Ниже представлены результаты тестирования
Запустим более продолжительное тестирование со следующими параметрами
pgbench -c 100 -j 16 -T43200 -P 10 benchmark
Ниже представлены результаты тестирования:
При текущих настройках на продолжительном тестировании (12 часов) стенд показал производительность 13 865 транзакций TPC-B в секунду, показатели стабильные, среднее отклонение между скоростью выполнения отдельных транзакций оставляет менее 10 мс.
Заключение
В данном тестировании была произведена установка операционной системы Астра Линукс Смоленск 1.6 на сервер Lenovo SR650. Показано что ОС устанавливается, запускается и работает в штатном режиме.
Произведено подключение блочных дисковых устройств по протоколу Fibre Channel с системы хранения Lenovo DE4000. Показано что дисковые устройства корректно подключаются к операционной системе, драйвер многопутевого ввода-вывода автоматически определяет и объединяет множественные пути до одного логического тома.
Выполнен раяд нагрузочных тестов для проверки стабильности работы аппаратного обеспечения под управлением ОС Астра Линукс Смоленск 1.6. Было показано что высокая нагрузка на дисковую подсистему, имитированная утилитами «dd» и «hdparm» не вызывает проблем со стабильностью и не приводит к незапланированным остановкам работы компонентов операционной системы и оборудования.
Произведено долгосрочное нагрузочное тестирование (более 12 часов) в режиме интенсивном режиме тестирования TPC-B, подразумевающем значительный объем ввода-вывода дисковых операций.
Все проведенные тесты показали консистентность результатов и низкое отклонение показателей производительности друг от друга.
domestic/astra_linux/special/astra_linux_lenovo_de4000.txt · Last modified: 2022/09/17 13:18 by mchus