Продолжаем серию постов с разборами реальных кейсов, поступающих в службу техподдержки Veeam. Сегодня мы обсудим ситуацию, когда настройки размера блока данных, сделанные для ленточного устройства в консоли Veeam, не соответствуют настройкам реального устройства. Разумеется, дадим и рекомендации по отслеживанию и исправлению такой ошибки.
Замечу, что изменение размера блоков можно делать и в тех случаях, когда нужно увеличить производительность обработки данных. Ведь, чем больше размер блока, тем больше данных устройство может записать в единицу времени.
![](https://habrastorage.org/r/w780q1/webt/59/e5/cd/59e5cd708efc9009953680.jpeg)
Представьте себе такую картину: контроллер HBA вышел из строя и требует замены. Сервер Veeam при этом остается без изменений (то есть без переустановки ОС и собственно приложения Veeam), как и устройство для записи на магнитную ленту. Вы наконец-то все успешно настроили, и тут вашему боссу понадобилось немедленно восстановить виртуальную машину из бэкапа, записанного на ленту за день до замены контроллера HBA. Вот тут и выплывает сообщение об ошибке с размером блока: Error: Invalid block size
Для начала зайдем на сервере резервного копирования Veeam в папку C:\ProgramData\Veeam\Backup, где по умолчанию хранятся журналы. В журнале наша попытка выполнить восстановление ВМ будет отражена как-то так:
![](https://habrastorage.org/r/w1560/webt/59/e5/e0/59e5e0dc53578511222514.png)
Видим, что после замены контроллера наша ленточная библиотека не дала нам возможности установить прежнее значение размера блока для записи на ленту:
[timestamp] <08> Info [AP] (0f3e) output: Cannot set block size: 1048576setMediaParameters error: Tape error: '87' (The parameter is incorrect.)
После того, как мы убедились, что в журнале имеются такие записи, проверим, какой размер блока указан в настройках ленточного устройства в консоли Veeam. Если получается поменять его на тот, что был указан при архивировании на ленту, то проблему вы решили.
Однако если максимальный размер блока меньше, чем вы рассчитывали, то придется открыть Управление Устройствами (Device Manager) и посмотреть, какой размер блока проставлен там. Если максимальное значение превышает указанное в настройках Veeam Backup & Replication, то мы опять-таки имеем место с расхождением в настройках, и расследование придется продолжить.
Вот пример из реальной жизни пользователя: в консоли Veeam максимальный размер блока указан как 512 КВ.
![](https://habrastorage.org/r/w1560/webt/59/e5/cd/59e5cd705b373813193650.png)
Однако раньше можно было выбрать и большее значение. А в Device Manager максимальный размер блока вообще-то 8 MB:
![](https://habrastorage.org/r/w1560/webt/59/e5/cd/59e5cd7029f87737136629.png)
Возникает резонный вопрос: почему в настройках Veeam такой ограниченный размер, если драйвер не запрещает работать с гораздо большим размером блоков? И что с этим можно сделать? Попробуем покопать поглубже, чтобы ответить на этот вопрос.
Как мы помним, у нас поменялся только контроллер HBA. В документации (Best Practices for Veeam Backup & Replication) про подключение через HBA говорится следующее:
If you connect the tape devices via HBA, Veeam Backup & Replication uses the block size configured for the HBA.
Если подключение ленточного устройства выполняется через HBA, то Veeam Backup & Replication будет использовать размер блока, указанный в настройках HBA.
Значит, надо выяснить, какой размер блоков теперь установлен в настройках HBA, и задать ему подходящее значение.
Для примера редактирования настроек HBA рассмотрим HPE QLogic. У HPE есть вполне официальная статья о том, как поменять размер блока для QLogic HBA.
Для настройки QLogic нам понадобится специальный инструмент для работы с ОС нашего ленточного устройства – его мы скачиваем отсюда.
Чтобы посмотреть, какой размер блока установлен, выполним команду -tsize, видим, что в этом примере он у нас 512 КВ.
Затем выполняем эту же команду с ключом, чтобы выставить новый размер блока:
-tsize /fc /set 1024 или даже вообще -tsize /fc /set 2048
![](https://habrastorage.org/r/w1560/webt/59/e5/cd/59e5cd70f1dc6495120381.png)
После того, как мы изменили настройки для HBA, нужно вернуться в Управление Устройствами (Device Manager) и запустить проверку аппаратных изменений — scan for hardware changes.
Когда как изменения вступят в силу, обязательно перезапустить сервис Veeam Tape Service.
Мы ожидаем, что и в консоли Veeam теперь тоже можно будет задать максимальный размер блока больше, нежели это было до настоящего момента. А наша задача, как мы помним – установить размер блока, равный тому, который был при записи бэкапа на ленту.
Действительно, в консоли мы видим теперь в два раза больший максимальный размер блока:
![](https://habrastorage.org/r/w1560/webt/59/e5/cd/59e5cd70646f2029025647.png)
Проблема с расхождением в размерах блока может проявиться не только во время операции восстановления, но также и при инвентаризации и обновлении каталога магнитных лент. Поэтому мы всегда рекомендуем внимательно ознакомиться с ограничениями и особенностями настроек, а если обнаружится несоответствие, то попытаться его устранить. Если самостоятельно не получается – мы всегда готовы прийти на помощь.
Ваш Veeam Support Team.
Замечу, что изменение размера блоков можно делать и в тех случаях, когда нужно увеличить производительность обработки данных. Ведь, чем больше размер блока, тем больше данных устройство может записать в единицу времени.
![](https://habrastorage.org/webt/59/e5/cd/59e5cd708efc9009953680.jpeg)
Представьте себе такую картину: контроллер HBA вышел из строя и требует замены. Сервер Veeam при этом остается без изменений (то есть без переустановки ОС и собственно приложения Veeam), как и устройство для записи на магнитную ленту. Вы наконец-то все успешно настроили, и тут вашему боссу понадобилось немедленно восстановить виртуальную машину из бэкапа, записанного на ленту за день до замены контроллера HBA. Вот тут и выплывает сообщение об ошибке с размером блока: Error: Invalid block size
Проводим расследование
Для начала зайдем на сервере резервного копирования Veeam в папку C:\ProgramData\Veeam\Backup, где по умолчанию хранятся журналы. В журнале наша попытка выполнить восстановление ВМ будет отражена как-то так:
![](https://habrastorage.org/webt/59/e5/e0/59e5e0dc53578511222514.png)
Видим, что после замены контроллера наша ленточная библиотека не дала нам возможности установить прежнее значение размера блока для записи на ленту:
[timestamp] <08> Info [AP] (0f3e) output: Cannot set block size: 1048576setMediaParameters error: Tape error: '87' (The parameter is incorrect.)
После того, как мы убедились, что в журнале имеются такие записи, проверим, какой размер блока указан в настройках ленточного устройства в консоли Veeam. Если получается поменять его на тот, что был указан при архивировании на ленту, то проблему вы решили.
Однако если максимальный размер блока меньше, чем вы рассчитывали, то придется открыть Управление Устройствами (Device Manager) и посмотреть, какой размер блока проставлен там. Если максимальное значение превышает указанное в настройках Veeam Backup & Replication, то мы опять-таки имеем место с расхождением в настройках, и расследование придется продолжить.
Пример
Вот пример из реальной жизни пользователя: в консоли Veeam максимальный размер блока указан как 512 КВ.
![](https://habrastorage.org/webt/59/e5/cd/59e5cd705b373813193650.png)
Однако раньше можно было выбрать и большее значение. А в Device Manager максимальный размер блока вообще-то 8 MB:
![](https://habrastorage.org/webt/59/e5/cd/59e5cd7029f87737136629.png)
Возникает резонный вопрос: почему в настройках Veeam такой ограниченный размер, если драйвер не запрещает работать с гораздо большим размером блоков? И что с этим можно сделать? Попробуем покопать поглубже, чтобы ответить на этот вопрос.
Как мы помним, у нас поменялся только контроллер HBA. В документации (Best Practices for Veeam Backup & Replication) про подключение через HBA говорится следующее:
If you connect the tape devices via HBA, Veeam Backup & Replication uses the block size configured for the HBA.
Если подключение ленточного устройства выполняется через HBA, то Veeam Backup & Replication будет использовать размер блока, указанный в настройках HBA.
Значит, надо выяснить, какой размер блоков теперь установлен в настройках HBA, и задать ему подходящее значение.
Редактируем настройки
Для примера редактирования настроек HBA рассмотрим HPE QLogic. У HPE есть вполне официальная статья о том, как поменять размер блока для QLogic HBA.
Для настройки QLogic нам понадобится специальный инструмент для работы с ОС нашего ленточного устройства – его мы скачиваем отсюда.
Чтобы посмотреть, какой размер блока установлен, выполним команду -tsize, видим, что в этом примере он у нас 512 КВ.
Затем выполняем эту же команду с ключом, чтобы выставить новый размер блока:
-tsize /fc /set 1024 или даже вообще -tsize /fc /set 2048
![](https://habrastorage.org/webt/59/e5/cd/59e5cd70f1dc6495120381.png)
После того, как мы изменили настройки для HBA, нужно вернуться в Управление Устройствами (Device Manager) и запустить проверку аппаратных изменений — scan for hardware changes.
Когда как изменения вступят в силу, обязательно перезапустить сервис Veeam Tape Service.
Мы ожидаем, что и в консоли Veeam теперь тоже можно будет задать максимальный размер блока больше, нежели это было до настоящего момента. А наша задача, как мы помним – установить размер блока, равный тому, который был при записи бэкапа на ленту.
Действительно, в консоли мы видим теперь в два раза больший максимальный размер блока:
![](https://habrastorage.org/webt/59/e5/cd/59e5cd70646f2029025647.png)
Проблема с расхождением в размерах блока может проявиться не только во время операции восстановления, но также и при инвентаризации и обновлении каталога магнитных лент. Поэтому мы всегда рекомендуем внимательно ознакомиться с ограничениями и особенностями настроек, а если обнаружится несоответствие, то попытаться его устранить. Если самостоятельно не получается – мы всегда готовы прийти на помощь.
Ваш Veeam Support Team.