SlideShare una empresa de Scribd logo
1 de 44
Проблемы с
дисками?
Антон Жбанков
VMware vExpert
Pluggable Storage Architecture
• MultiPathing Plugin
• По умолчанию VMware NMP (Native MultiPathing)
• SATP – Storage Array Type Plugin
• Отказы и переключения путей
• PSP – Path Selection Plugin
• Балансировка нагрузки и выбор пути для IO
Роли и команды PSA
• PSA обнаруживает доступные хосту ресурсы хранения
• Присваивает правила MPP для управления ресурсом
• Для просмотра всех плагинов PSA
• esxcli storage core plugin list
PSA - MPP
• NMP/MPP исполняет функции
• MPP определяет физический путь до устройства для SATP
• NMP имеет собственный набор правил для ассоциации SATP с
PSP
• Экспортирует логическое устройство по физическому пути для
PSP
• Для просмотра всех устройств с соотв. PSP/SATP
• esxcli storage nmp device list
PSA - SATP
• Наблюдает за состоянием путей до физ. системы
• Объявляет пути в состояние failed/down
• Управляет переключением физ. путей после сбоя
• vSphere включает в себе SATP под некоторое количество
распространенных СХД, и несколько универсальных
вариантов active-active/active-passive
PSA - SATP
• Для просмотра всех загруженных SATP и ассоциированных
PSP
• esxcli storage nmp satp list
• Для изменения PSP по умолчанию для определенного
SATP
• esxcli storage nmp satp set –b <boottime> -P <Default PSP> -s
<SATP>
PSA - PSP
• Особенности и ответственность PSP
• Выбор пути для отправки IO запроса (далее просто IO)
• Отличается от SATP тем, что является механизмом
балансировки нагрузки и работает только с активными
путями
• vSphere использует три плагина по умолчанию:
• Fixed
• Most Recently Used (MRU)
• Round Robin
• VMware NMP по умолчанию выбирает PSP,
ассоциированный с SATP, загруженным для данной СХД
PSA - PSP
• Для просмотра загруженных PSP с текущей конфигурацией
• esxcli storage nmp psp <PSP Namespace> deviceconfig get –d
<device identifier>
IO от начала до конца
• ВМ выдает SCSI команду на соотв. виртуальный диск
• Драйверы гостевой ОС взаимодействуют с драйверами
виртуального хранения
• Команда перебрасывается в Vmkernel, где вступает PSA
• PSA загружает соотв. MPP (NMP в нашем случае)
• NMP вызывает соотв. PSP
• PSP согласно с правилами балансировки выбирает путь.
Команда отсылается аппаратному/программному
инициатору, CNA или HBA
• Если неудачно, то PSP вызывает SATP для обработки ошибки.
Статус пути меняется на неактивный и процесс повторяется
• Инициатор, CNA или HBA трансформирует команду соотв.
транспорту и посылает запрос
vCenter Storage View
• Пример – сколько занимают снапшоты
vCenter Storage View
• Пример - отказоустойчивость доступа к хранилищам
vCenter Storage View
• Пример – детальный статус по путям до датастора
vCenter Maps
esxtop/resxtop
Log
• Основные журналы для решения проблем с дисковой
системой
• /var/log/hostd.log Основной журнал с информацией о
задачах, событиях и взаимодействии хоста с клиентом,
vCenter агентом (vpxa) и т.д.
• /var/log/vmkernel.log Основной журнал VMkernel,
включающие обнаружение устройств, сетевых и дисковых
событиях и включении ВМ
• /var/log/sysboot.log Журнал VMkernel с сообщениями о
старте хоста и загрузке модулей
Log
• Для простого поиска в журнале
• grep –r search_term /var/log/vmkernel.log
• Для рекурсивного поиска во всех журналах
• grep –r search_term /var/log/*
• Данный поиск выдаст только строки, содержащие искомое
• Если нужно не только эти строки, то
• grep –r –A3 –B2 search_term /var/log/*
• Этот запрос выдаст также 3 строки перед и 2 после
• Поиск всех событий, в которых одновременно SCSI и Failed
• cat /var/log/vmkernel.log | grep SCSI | grep –i Failed
Log
• Экран переполнился?
• cat /var/log/vmkernel.log | grep –i SCSI | less
• Последние 10 сообщений в hostd.log
• tail –n10 /var/log/hostd.log
• Первые 10 сообщений в hostd.log
• head –n10 /var/log/hostd.log
• Наблюдение за журналом vmkwarning.log
• tail –f /var/log/vmkwarning.log
ПРОБЛЕМЫ ВИДИМОСТИ
СИСТЕМ ХРАНЕНИЯ
Клейминг (claim)
• Клейминг – процесс установки взаимосвязи между
физическими устройствами и плагинами в PSA
• Все клейм-правила могут быть загружены только через
командную строку и не доступны через GUI
Клейминг (claim)
• Просмотр загруженных клейм-правил
• esxcli storage core claimrule list
• Клейм правило может быть разных типов
• vendor, location, transport и driver
• У каждого правила есть идентификатор от 0 до 65535
• ID 0-100, 65436-65535 зарезервированы
Клейминг (claim)
• Идентификатор 65535 зарезервирован
• Правила применяются в порядке от 0 по возрастающей
• Если устройство не попало ни под одно предыдущее правило,
то его забирает под себя NMP
• MASK_PATH – плагин, реализующий на уровне PSA
функционал, аналогичный зонированию и маскированию
в FC
• Если есть правило 134 для MASK_PATH и правило 150 для
MPP, то путь будет скрыт и устройство не будет подключено
• У каждого правила есть класс
• File – правило загружено в системе
• Runtime – правило включено и активно (связано с
устройством)
Клейминг (claim)
• Удалить клейм-правило
• esxcli storage core claimrule remove –rule 400
• !!! Всегда используйте команду vm-support для сохранения
текущей конфигурации !!!
Клейминг (claim)
• Удалить можно только правило в состоянии File
• Для удаления правила в состоянии Runtime
• Сначала загрузим набор правил
esxcli storage core claimrule load
• Затем снимем клейм с устройства
esxcli storage core claiming unclaim -t location -A vmhba32 -T 1 -L 0
• Простой рескан теперь позволит увидеть датастор
Проблемы с путями
• Внимательно читайте документацию к СХД
• vSphere по умолчанию загружает
• Fixed для active-active СХД
• MRU для active-passive СХД
• Вендор СХД знает лучше
• Например, HP MSA1500 имеет active-active
• Но в силу внутренней логики MSA рекомендуется MRU
Disk Resignature
• VMFS том содержит в сигнатуре информацию о железе
• В том числе идентификатор массива, LUN ID и UUID
• Если том перенесен или сменил ID – vSphere игнорирует
• Для предотвращения монтирования копий и снапшотов
• Переподписывание (resignature) – создание новой
сигнатуры (и UUID) для перемещенного LUN при
монтировании
• http://kb.vmware.com/selfservice/microsites/search.do?langu
age=en_US&cmd=displayKC&externalId=1011387
Disk Resignature
• Сохранить сигнатуру можно только если уверены, что
оригинальный LUN НИКОГДА не вернется.
Номера LUN
• Максимальное количество LUN’ов, с которыми может
работать ESXi = 256
• При рескане ESXi начинает с 0 и останавливается на 255
• LUN 268 НИКОГДА не будет виден ESXi
• Пока нет острой необходимости – не меняйте LUN ID для
разных хостов
• Disk.MaxLun может сократить время рескана и загрузки
• Но всегда есть опасность, что новый выделенный LUN будет с
ID > Disk.MaxLun и соотв. хост его не увидит
IP видимость
• Настоятельно рекомендуется использование различных
подсетей и даже физических сетей для сети ВМ и IP
хранения
• Отдельная сеть – отдельные проблемы
• Пропали диски – проверьте подключение
• ping и vmkping для ESXi – одно и то же
Проблемы iSCSI
• Практически все проблемы с iSCSI можно найти в
журналах
• grep –r iscsid/var/log/* | less
• Если информации недостаточно, то…
• vmkiscsid -x "insert into internal (key, value) VALUES
('option.LogLevel',' 999');"
• Только не забудьте выключить после
• vmkiscsid -x "delete from internal where key ='option.LogLevel';"
Проблемы NFS
• NFS подключения лишены многих блочных проблем, но…
• Зависят еще и от DNS
• Некоторые NFS системы требуют обратного разрешения
имен. Если NFS СХД не может разрешить имя ESXi, то не
отдаст ресурс
• Не подключается NFS датастор – проверь ACL
• Проверь ACL еще раз
• И еще раз
• И не забудь, что NFS чувствителен к рЕгисТрУ
• И что на ВСЕХ хостах имя датастора должно быть одинаковым
Проблемы NFS
• NFS и командная строка
• grep –r nfs /var/log/* | less
• Добавим информации
• esxcfg-advcfg –s 1 /NFS/LogNfsStat3
• Закончили – убавили
• esxcfg-advcfg –s 0 /NFS/LogNfsStat3
ПРОБЛЕМЫ ПРОИЗВОДИТЕЛЬНОСТИ
IO Latency
• Ключевая проблема дисковых систем – задержки
• esxtop нам их покажет
• DAVG/cmd – среднее время на команду, посланную VMkernel
на устройство. Нормальный показатель <25ms
• KAVG/cmd – среднее время внутри VMkernel. 1-2ms
• GAVG/cmd – среднее время для гостевой ОС. <25ms
IO Latency – где зарыта?
• Как узнать, где именно зарыта собака?
• На одном HBA? На массиве? На одном пути?
• esxtop: d f a b g
IO Latency – где зарыта?
• Задержки по устройствам
• esxtop: u f a i
IO Latency по ВМ
• Можно посмотреть какие задержки в среднем по ВМ
• esxtop: v f b g h
SCSI Reservation
• VMFS – симметричная кластерная файловая система
• Нет выделенных хостов-арбитров
• Для предотвращения порчи данных при обновлении
метаданных идет блокировка всего LUN
• Метаданные обновляются в монопольном режиме
• Операции, требущие обновления метаданных
• Включение/выключение ВМ
• Создание новой ВМ/развертывание из шаблона
• Миграция ВМ на другой хост
• Изменение датасторов
• Изменение размера файла
SCSI Reservation
• vmkernel.log
• reservation conflict
• esxtop: d u f F H
SCSI Reservation - решение
• Включите VAAI
• Конкретно ATS
• Разместите ВМ, требующие SCSI Reservation по разным
LUN
• Включение-выключение, снапшоты
• Увеличьте количество LUN
• Уменьшите количество хостов на LUN
• Уменьшите количество снапшотов
• Уменьшите количество ВМ на LUN
• http://kb.vmware.com/selfservice/microsites/search.do?langu
age=en_US&cmd=displayKC&externalId=1005009
Очереди IO
• IO не сразу уходит на диск, а сначала попадает в очередь
• OS queue
• 32 по умолчанию
• 64 для PVSCSI
• Изменяется в реестре Windows
• Adapter Queue
• Обычно 1024+ на порт и крайне редко требует внимания
• Per-LUN queue
• Обычно 32 или 64
• Disk.SchedNumReqOutstanding
Очереди IO
• Мониторинг очередей
• DQLEN – per-LUN queue
• ACTV – активные команды в обработке VMkernel
• QUED – команды, ждущие обработки или постановки в
очередь
• %USED – процент команд в очереди в активной обработке
• LOAD – отношение нагруженности очереди к ее размеру
• Как посмотреть
• esxtop: u f F
Очереди IO
• Очевидны проблемы с LUN’ом
• QUED>0 означает, что очередь кончилась
• DAVG, KAVG, GAVG выше порогов
• DQLEN = 32, а не стандартные 128. Результат работы
Disk.SchedNumReqOutstanding
Литература
• Troubleshooting vSphere Storage. Preston, Mike.
• Information Storage and Management: Storing, Managing,
and Protecting Digital Information in Classic, Virtualized, and
Cloud Environments. EMC Education Services
• Storage Implementation in vSphere 5.0 Technology Deep Dive.
Mostafa Khalil
Вопросы?
• Антон Жбанков
• VCP 3/4/5
• VMware vExpert 2009-2014
• MCITP: SA + VA
• EMC Cloud Architect Expert
• anton@vadmin.ru
• http://blog.vadmin.ru
• https://communities.vmware.com/community/vmtn/vmug/fo
rums/emea/russia

Más contenido relacionado

La actualidad más candente

Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)
Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)
Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)Ontico
 
Максим Шапошников, Nutanix
Максим Шапошников, NutanixМаксим Шапошников, Nutanix
Максим Шапошников, NutanixOntico
 
Практический опыт использования некоторых современных решений репликации MySQL
Практический опыт использования некоторых современных решений репликации MySQLПрактический опыт использования некоторых современных решений репликации MySQL
Практический опыт использования некоторых современных решений репликации MySQLAlex Chistyakov
 
EMC XtremIO. Превосходя ожидания
EMC XtremIO. Превосходя ожиданияEMC XtremIO. Превосходя ожидания
EMC XtremIO. Превосходя ожиданияКРОК
 
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решение
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решениеViolin Memory. Первая скрипка Huawei Dorado. Антикризисное решение
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решениеКРОК
 
Что нового в SQL Server 2014
Что нового в SQL Server 2014Что нового в SQL Server 2014
Что нового в SQL Server 2014Andrey Korshikov
 
Hitachi FMD. Новый подход к старой задаче
Hitachi FMD. Новый подход к старой задачеHitachi FMD. Новый подход к старой задаче
Hitachi FMD. Новый подход к старой задачеКРОК
 
Флеш в серверах: работа со скоростью вспышки
Флеш в серверах: работа со скоростью вспышкиФлеш в серверах: работа со скоростью вспышки
Флеш в серверах: работа со скоростью вспышкиКРОК
 
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)Ontico
 
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp Технологии эффективного хранения данных, ключевые дифференциаторы NetApp
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp Yaryomenko
 
Практический опыт применения виртуализации для web-систем
Практический опыт применения виртуализации для web-системПрактический опыт применения виртуализации для web-систем
Практический опыт применения виртуализации для web-системAlex Chistyakov
 
Резервное копирование не только виртуальных сред при помощи продуктов Veeam
Резервное копирование не только виртуальных сред при помощи продуктов VeeamРезервное копирование не только виртуальных сред при помощи продуктов Veeam
Резервное копирование не только виртуальных сред при помощи продуктов VeeamYaryomenko
 
Расширение границ возможного с EMC XtremIO
Расширение границ возможного с EMC XtremIOРасширение границ возможного с EMC XtremIO
Расширение границ возможного с EMC XtremIOКРОК
 
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...Ontico
 
Аппаратная и программно-аппаратная дедупликация от EMC
Аппаратная и программно-аппаратная дедупликация от EMCАппаратная и программно-аппаратная дедупликация от EMC
Аппаратная и программно-аппаратная дедупликация от EMCКРОК
 
Percona XtraBackup: экспертные возможности (Алексей Копытов)
Percona XtraBackup: экспертные возможности (Алексей Копытов)Percona XtraBackup: экспертные возможности (Алексей Копытов)
Percona XtraBackup: экспертные возможности (Алексей Копытов)Ontico
 
SAM за 7 шагов. Рецепт для небольших компаний
SAM за 7 шагов. Рецепт для небольших компанийSAM за 7 шагов. Рецепт для небольших компаний
SAM за 7 шагов. Рецепт для небольших компанийValery Bychkov
 
Совместимы ли понятия SDS и производительность?
Совместимы ли понятия SDS и производительность?Совместимы ли понятия SDS и производительность?
Совместимы ли понятия SDS и производительность?Mikhail Chusavitin
 
Обзор технологий Microsoft Hyper-V: введение в виртуализацию
Обзор технологий Microsoft Hyper-V: введение в виртуализациюОбзор технологий Microsoft Hyper-V: введение в виртуализацию
Обзор технологий Microsoft Hyper-V: введение в виртуализациюSkillFactory
 
Контейнеры в OpenStack: простое решение сложных проблем
Контейнеры в OpenStack: простое решение сложных проблемКонтейнеры в OpenStack: простое решение сложных проблем
Контейнеры в OpenStack: простое решение сложных проблемYandex
 

La actualidad más candente (20)

Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)
Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)
Велосипед уже изобретен. Что умеют промышленные СХД? / Антон Жбанков (Nutanix)
 
Максим Шапошников, Nutanix
Максим Шапошников, NutanixМаксим Шапошников, Nutanix
Максим Шапошников, Nutanix
 
Практический опыт использования некоторых современных решений репликации MySQL
Практический опыт использования некоторых современных решений репликации MySQLПрактический опыт использования некоторых современных решений репликации MySQL
Практический опыт использования некоторых современных решений репликации MySQL
 
EMC XtremIO. Превосходя ожидания
EMC XtremIO. Превосходя ожиданияEMC XtremIO. Превосходя ожидания
EMC XtremIO. Превосходя ожидания
 
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решение
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решениеViolin Memory. Первая скрипка Huawei Dorado. Антикризисное решение
Violin Memory. Первая скрипка Huawei Dorado. Антикризисное решение
 
Что нового в SQL Server 2014
Что нового в SQL Server 2014Что нового в SQL Server 2014
Что нового в SQL Server 2014
 
Hitachi FMD. Новый подход к старой задаче
Hitachi FMD. Новый подход к старой задачеHitachi FMD. Новый подход к старой задаче
Hitachi FMD. Новый подход к старой задаче
 
Флеш в серверах: работа со скоростью вспышки
Флеш в серверах: работа со скоростью вспышкиФлеш в серверах: работа со скоростью вспышки
Флеш в серверах: работа со скоростью вспышки
 
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)
Настройка kubernetes: tips and tricks / Михаил Прокопчук (Avito)
 
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp Технологии эффективного хранения данных, ключевые дифференциаторы NetApp
Технологии эффективного хранения данных, ключевые дифференциаторы NetApp
 
Практический опыт применения виртуализации для web-систем
Практический опыт применения виртуализации для web-системПрактический опыт применения виртуализации для web-систем
Практический опыт применения виртуализации для web-систем
 
Резервное копирование не только виртуальных сред при помощи продуктов Veeam
Резервное копирование не только виртуальных сред при помощи продуктов VeeamРезервное копирование не только виртуальных сред при помощи продуктов Veeam
Резервное копирование не только виртуальных сред при помощи продуктов Veeam
 
Расширение границ возможного с EMC XtremIO
Расширение границ возможного с EMC XtremIOРасширение границ возможного с EMC XtremIO
Расширение границ возможного с EMC XtremIO
 
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...
Как и зачем создавать NginX-модуль — теория, практика, профит. Часть 2 / Васи...
 
Аппаратная и программно-аппаратная дедупликация от EMC
Аппаратная и программно-аппаратная дедупликация от EMCАппаратная и программно-аппаратная дедупликация от EMC
Аппаратная и программно-аппаратная дедупликация от EMC
 
Percona XtraBackup: экспертные возможности (Алексей Копытов)
Percona XtraBackup: экспертные возможности (Алексей Копытов)Percona XtraBackup: экспертные возможности (Алексей Копытов)
Percona XtraBackup: экспертные возможности (Алексей Копытов)
 
SAM за 7 шагов. Рецепт для небольших компаний
SAM за 7 шагов. Рецепт для небольших компанийSAM за 7 шагов. Рецепт для небольших компаний
SAM за 7 шагов. Рецепт для небольших компаний
 
Совместимы ли понятия SDS и производительность?
Совместимы ли понятия SDS и производительность?Совместимы ли понятия SDS и производительность?
Совместимы ли понятия SDS и производительность?
 
Обзор технологий Microsoft Hyper-V: введение в виртуализацию
Обзор технологий Microsoft Hyper-V: введение в виртуализациюОбзор технологий Microsoft Hyper-V: введение в виртуализацию
Обзор технологий Microsoft Hyper-V: введение в виртуализацию
 
Контейнеры в OpenStack: простое решение сложных проблем
Контейнеры в OpenStack: простое решение сложных проблемКонтейнеры в OpenStack: простое решение сложных проблем
Контейнеры в OpenStack: простое решение сложных проблем
 

Similar a VMUG Moscow 2014 Проблемы с дисками?

Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_drupalconf
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Ontico
 
Isilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDIsilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDAndrew Pantyukhin
 
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ontico
 
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...ForkConf
 
Опыт внедрения OpenStack
Опыт внедрения OpenStackОпыт внедрения OpenStack
Опыт внедрения OpenStackYandex
 
Эволюция High availability: Windows Server 2016 Failover Clustering
Эволюция High availability: Windows Server 2016 Failover ClusteringЭволюция High availability: Windows Server 2016 Failover Clustering
Эволюция High availability: Windows Server 2016 Failover ClusteringYuriy Denisov
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентацияPavel Odintsov
 
Использование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаИспользование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаYandex
 
Александр Чистяков - Практический опыт использования решений виртуализации в ...
Александр Чистяков - Практический опыт использования решений виртуализации в ...Александр Чистяков - Практический опыт использования решений виртуализации в ...
Александр Чистяков - Практический опыт использования решений виртуализации в ...HappyDev
 
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...Ontico
 
Видеохостинг своими руками
Видеохостинг своими рукамиВидеохостинг своими руками
Видеохостинг своими рукамиStanislavMalkin
 
Mysql replication DevConf 2012
Mysql replication DevConf 2012Mysql replication DevConf 2012
Mysql replication DevConf 2012Alex Chistyakov
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализацияYandex
 
Обзор Redis storage / Symfony Camp UA 2011
Обзор Redis storage / Symfony Camp UA 2011Обзор Redis storage / Symfony Camp UA 2011
Обзор Redis storage / Symfony Camp UA 2011Igor Brovchenko
 
presentation_r00t_conf
presentation_r00t_confpresentation_r00t_conf
presentation_r00t_confMax Glekov
 
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Tanya Denisyuk
 
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)Ontico
 
Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Что нового в nginx? / Максим Дунин (Nginx, Inc.)Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Что нового в nginx? / Максим Дунин (Nginx, Inc.)Ontico
 
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, ЯндексYandex
 

Similar a VMUG Moscow 2014 Проблемы с дисками? (20)

Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.
 
Isilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDIsilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSD
 
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
 
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
 
Опыт внедрения OpenStack
Опыт внедрения OpenStackОпыт внедрения OpenStack
Опыт внедрения OpenStack
 
Эволюция High availability: Windows Server 2016 Failover Clustering
Эволюция High availability: Windows Server 2016 Failover ClusteringЭволюция High availability: Windows Server 2016 Failover Clustering
Эволюция High availability: Windows Server 2016 Failover Clustering
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентация
 
Использование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостингаИспользование контейнеризации в среде массового хостинга
Использование контейнеризации в среде массового хостинга
 
Александр Чистяков - Практический опыт использования решений виртуализации в ...
Александр Чистяков - Практический опыт использования решений виртуализации в ...Александр Чистяков - Практический опыт использования решений виртуализации в ...
Александр Чистяков - Практический опыт использования решений виртуализации в ...
 
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
 
Видеохостинг своими руками
Видеохостинг своими рукамиВидеохостинг своими руками
Видеохостинг своими руками
 
Mysql replication DevConf 2012
Mysql replication DevConf 2012Mysql replication DevConf 2012
Mysql replication DevConf 2012
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализация
 
Обзор Redis storage / Symfony Camp UA 2011
Обзор Redis storage / Symfony Camp UA 2011Обзор Redis storage / Symfony Camp UA 2011
Обзор Redis storage / Symfony Camp UA 2011
 
presentation_r00t_conf
presentation_r00t_confpresentation_r00t_conf
presentation_r00t_conf
 
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
 
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
 
Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Что нового в nginx? / Максим Дунин (Nginx, Inc.)Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Что нового в nginx? / Максим Дунин (Nginx, Inc.)
 
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс
"OpenStack & Oracle — взболтать, но не смешивать". Сергей Филимонцев, Яндекс
 

VMUG Moscow 2014 Проблемы с дисками?

  • 2. Pluggable Storage Architecture • MultiPathing Plugin • По умолчанию VMware NMP (Native MultiPathing) • SATP – Storage Array Type Plugin • Отказы и переключения путей • PSP – Path Selection Plugin • Балансировка нагрузки и выбор пути для IO
  • 3. Роли и команды PSA • PSA обнаруживает доступные хосту ресурсы хранения • Присваивает правила MPP для управления ресурсом • Для просмотра всех плагинов PSA • esxcli storage core plugin list
  • 4. PSA - MPP • NMP/MPP исполняет функции • MPP определяет физический путь до устройства для SATP • NMP имеет собственный набор правил для ассоциации SATP с PSP • Экспортирует логическое устройство по физическому пути для PSP • Для просмотра всех устройств с соотв. PSP/SATP • esxcli storage nmp device list
  • 5. PSA - SATP • Наблюдает за состоянием путей до физ. системы • Объявляет пути в состояние failed/down • Управляет переключением физ. путей после сбоя • vSphere включает в себе SATP под некоторое количество распространенных СХД, и несколько универсальных вариантов active-active/active-passive
  • 6. PSA - SATP • Для просмотра всех загруженных SATP и ассоциированных PSP • esxcli storage nmp satp list • Для изменения PSP по умолчанию для определенного SATP • esxcli storage nmp satp set –b <boottime> -P <Default PSP> -s <SATP>
  • 7. PSA - PSP • Особенности и ответственность PSP • Выбор пути для отправки IO запроса (далее просто IO) • Отличается от SATP тем, что является механизмом балансировки нагрузки и работает только с активными путями • vSphere использует три плагина по умолчанию: • Fixed • Most Recently Used (MRU) • Round Robin • VMware NMP по умолчанию выбирает PSP, ассоциированный с SATP, загруженным для данной СХД
  • 8. PSA - PSP • Для просмотра загруженных PSP с текущей конфигурацией • esxcli storage nmp psp <PSP Namespace> deviceconfig get –d <device identifier>
  • 9. IO от начала до конца • ВМ выдает SCSI команду на соотв. виртуальный диск • Драйверы гостевой ОС взаимодействуют с драйверами виртуального хранения • Команда перебрасывается в Vmkernel, где вступает PSA • PSA загружает соотв. MPP (NMP в нашем случае) • NMP вызывает соотв. PSP • PSP согласно с правилами балансировки выбирает путь. Команда отсылается аппаратному/программному инициатору, CNA или HBA • Если неудачно, то PSP вызывает SATP для обработки ошибки. Статус пути меняется на неактивный и процесс повторяется • Инициатор, CNA или HBA трансформирует команду соотв. транспорту и посылает запрос
  • 10. vCenter Storage View • Пример – сколько занимают снапшоты
  • 11. vCenter Storage View • Пример - отказоустойчивость доступа к хранилищам
  • 12. vCenter Storage View • Пример – детальный статус по путям до датастора
  • 15. Log • Основные журналы для решения проблем с дисковой системой • /var/log/hostd.log Основной журнал с информацией о задачах, событиях и взаимодействии хоста с клиентом, vCenter агентом (vpxa) и т.д. • /var/log/vmkernel.log Основной журнал VMkernel, включающие обнаружение устройств, сетевых и дисковых событиях и включении ВМ • /var/log/sysboot.log Журнал VMkernel с сообщениями о старте хоста и загрузке модулей
  • 16. Log • Для простого поиска в журнале • grep –r search_term /var/log/vmkernel.log • Для рекурсивного поиска во всех журналах • grep –r search_term /var/log/* • Данный поиск выдаст только строки, содержащие искомое • Если нужно не только эти строки, то • grep –r –A3 –B2 search_term /var/log/* • Этот запрос выдаст также 3 строки перед и 2 после • Поиск всех событий, в которых одновременно SCSI и Failed • cat /var/log/vmkernel.log | grep SCSI | grep –i Failed
  • 17. Log • Экран переполнился? • cat /var/log/vmkernel.log | grep –i SCSI | less • Последние 10 сообщений в hostd.log • tail –n10 /var/log/hostd.log • Первые 10 сообщений в hostd.log • head –n10 /var/log/hostd.log • Наблюдение за журналом vmkwarning.log • tail –f /var/log/vmkwarning.log
  • 19. Клейминг (claim) • Клейминг – процесс установки взаимосвязи между физическими устройствами и плагинами в PSA • Все клейм-правила могут быть загружены только через командную строку и не доступны через GUI
  • 20. Клейминг (claim) • Просмотр загруженных клейм-правил • esxcli storage core claimrule list • Клейм правило может быть разных типов • vendor, location, transport и driver • У каждого правила есть идентификатор от 0 до 65535 • ID 0-100, 65436-65535 зарезервированы
  • 21. Клейминг (claim) • Идентификатор 65535 зарезервирован • Правила применяются в порядке от 0 по возрастающей • Если устройство не попало ни под одно предыдущее правило, то его забирает под себя NMP • MASK_PATH – плагин, реализующий на уровне PSA функционал, аналогичный зонированию и маскированию в FC • Если есть правило 134 для MASK_PATH и правило 150 для MPP, то путь будет скрыт и устройство не будет подключено • У каждого правила есть класс • File – правило загружено в системе • Runtime – правило включено и активно (связано с устройством)
  • 22. Клейминг (claim) • Удалить клейм-правило • esxcli storage core claimrule remove –rule 400 • !!! Всегда используйте команду vm-support для сохранения текущей конфигурации !!!
  • 23. Клейминг (claim) • Удалить можно только правило в состоянии File • Для удаления правила в состоянии Runtime • Сначала загрузим набор правил esxcli storage core claimrule load • Затем снимем клейм с устройства esxcli storage core claiming unclaim -t location -A vmhba32 -T 1 -L 0 • Простой рескан теперь позволит увидеть датастор
  • 24. Проблемы с путями • Внимательно читайте документацию к СХД • vSphere по умолчанию загружает • Fixed для active-active СХД • MRU для active-passive СХД • Вендор СХД знает лучше • Например, HP MSA1500 имеет active-active • Но в силу внутренней логики MSA рекомендуется MRU
  • 25. Disk Resignature • VMFS том содержит в сигнатуре информацию о железе • В том числе идентификатор массива, LUN ID и UUID • Если том перенесен или сменил ID – vSphere игнорирует • Для предотвращения монтирования копий и снапшотов • Переподписывание (resignature) – создание новой сигнатуры (и UUID) для перемещенного LUN при монтировании • http://kb.vmware.com/selfservice/microsites/search.do?langu age=en_US&cmd=displayKC&externalId=1011387
  • 26. Disk Resignature • Сохранить сигнатуру можно только если уверены, что оригинальный LUN НИКОГДА не вернется.
  • 27. Номера LUN • Максимальное количество LUN’ов, с которыми может работать ESXi = 256 • При рескане ESXi начинает с 0 и останавливается на 255 • LUN 268 НИКОГДА не будет виден ESXi • Пока нет острой необходимости – не меняйте LUN ID для разных хостов • Disk.MaxLun может сократить время рескана и загрузки • Но всегда есть опасность, что новый выделенный LUN будет с ID > Disk.MaxLun и соотв. хост его не увидит
  • 28. IP видимость • Настоятельно рекомендуется использование различных подсетей и даже физических сетей для сети ВМ и IP хранения • Отдельная сеть – отдельные проблемы • Пропали диски – проверьте подключение • ping и vmkping для ESXi – одно и то же
  • 29. Проблемы iSCSI • Практически все проблемы с iSCSI можно найти в журналах • grep –r iscsid/var/log/* | less • Если информации недостаточно, то… • vmkiscsid -x "insert into internal (key, value) VALUES ('option.LogLevel',' 999');" • Только не забудьте выключить после • vmkiscsid -x "delete from internal where key ='option.LogLevel';"
  • 30. Проблемы NFS • NFS подключения лишены многих блочных проблем, но… • Зависят еще и от DNS • Некоторые NFS системы требуют обратного разрешения имен. Если NFS СХД не может разрешить имя ESXi, то не отдаст ресурс • Не подключается NFS датастор – проверь ACL • Проверь ACL еще раз • И еще раз • И не забудь, что NFS чувствителен к рЕгисТрУ • И что на ВСЕХ хостах имя датастора должно быть одинаковым
  • 31. Проблемы NFS • NFS и командная строка • grep –r nfs /var/log/* | less • Добавим информации • esxcfg-advcfg –s 1 /NFS/LogNfsStat3 • Закончили – убавили • esxcfg-advcfg –s 0 /NFS/LogNfsStat3
  • 33. IO Latency • Ключевая проблема дисковых систем – задержки • esxtop нам их покажет • DAVG/cmd – среднее время на команду, посланную VMkernel на устройство. Нормальный показатель <25ms • KAVG/cmd – среднее время внутри VMkernel. 1-2ms • GAVG/cmd – среднее время для гостевой ОС. <25ms
  • 34. IO Latency – где зарыта? • Как узнать, где именно зарыта собака? • На одном HBA? На массиве? На одном пути? • esxtop: d f a b g
  • 35. IO Latency – где зарыта? • Задержки по устройствам • esxtop: u f a i
  • 36. IO Latency по ВМ • Можно посмотреть какие задержки в среднем по ВМ • esxtop: v f b g h
  • 37. SCSI Reservation • VMFS – симметричная кластерная файловая система • Нет выделенных хостов-арбитров • Для предотвращения порчи данных при обновлении метаданных идет блокировка всего LUN • Метаданные обновляются в монопольном режиме • Операции, требущие обновления метаданных • Включение/выключение ВМ • Создание новой ВМ/развертывание из шаблона • Миграция ВМ на другой хост • Изменение датасторов • Изменение размера файла
  • 38. SCSI Reservation • vmkernel.log • reservation conflict • esxtop: d u f F H
  • 39. SCSI Reservation - решение • Включите VAAI • Конкретно ATS • Разместите ВМ, требующие SCSI Reservation по разным LUN • Включение-выключение, снапшоты • Увеличьте количество LUN • Уменьшите количество хостов на LUN • Уменьшите количество снапшотов • Уменьшите количество ВМ на LUN • http://kb.vmware.com/selfservice/microsites/search.do?langu age=en_US&cmd=displayKC&externalId=1005009
  • 40. Очереди IO • IO не сразу уходит на диск, а сначала попадает в очередь • OS queue • 32 по умолчанию • 64 для PVSCSI • Изменяется в реестре Windows • Adapter Queue • Обычно 1024+ на порт и крайне редко требует внимания • Per-LUN queue • Обычно 32 или 64 • Disk.SchedNumReqOutstanding
  • 41. Очереди IO • Мониторинг очередей • DQLEN – per-LUN queue • ACTV – активные команды в обработке VMkernel • QUED – команды, ждущие обработки или постановки в очередь • %USED – процент команд в очереди в активной обработке • LOAD – отношение нагруженности очереди к ее размеру • Как посмотреть • esxtop: u f F
  • 42. Очереди IO • Очевидны проблемы с LUN’ом • QUED>0 означает, что очередь кончилась • DAVG, KAVG, GAVG выше порогов • DQLEN = 32, а не стандартные 128. Результат работы Disk.SchedNumReqOutstanding
  • 43. Литература • Troubleshooting vSphere Storage. Preston, Mike. • Information Storage and Management: Storing, Managing, and Protecting Digital Information in Classic, Virtualized, and Cloud Environments. EMC Education Services • Storage Implementation in vSphere 5.0 Technology Deep Dive. Mostafa Khalil
  • 44. Вопросы? • Антон Жбанков • VCP 3/4/5 • VMware vExpert 2009-2014 • MCITP: SA + VA • EMC Cloud Architect Expert • anton@vadmin.ru • http://blog.vadmin.ru • https://communities.vmware.com/community/vmtn/vmug/fo rums/emea/russia