LINUX.ORG.RU
ФорумAdmin

Все пропало мистика...

 , , ,


1

2

Доброго времени суток. Я нахожусь в некотором шоке и пожалуй начну историю из долека. Не знаю как у других но у меня вчера был очень насыщенный день.

Закралась мне идея в офисе вынести жесткие диски юзеров на сервер в ISCSI.

Я взял сервер Xeon E3-1240v2 старенький из бездействующих серверов, туда воткнул 4 диска WD30EFRX, 8GB RAM, обе сетевухи в bond0. Поставил Debian 10, программный mdraid RAID5 из 3-х дисков, этот рейд в lukscrypt на шифрованном разделе ext4. (вообще я хотел поизучать LVM2 но пока просто на ext4) Далее у меня tgtd раздает таргеты по 100гб через backing-store. Еще у меня там TFTP сервер c IPXE, маленький скрипт на PHP под Nginx.

Вообщем включается клиент, загружается с PXE (MBR). Mikrotik раздает DHCP указывает на сервер PXE, там менюшка, далее скармливается IPXE загрузчик который тягает скрипт с веб сервера, скрипт указываем ISCSI target диск и с него грузится Win7\Win10.

Там помимо Юзеров(1 юзер реально боевой) на этом сервере еще кружится диск от Hyper-V и пара виртуалок. Все это было в таком продакшн тесте, производительность ISCSI через гигабитную локалку давольно не плохая.

Вообщем Все работало…. Пару месяцев..

Сегодня с утра мне сообщают что не работает часть сервисов в этом офисе не доступна, как оказалось здох блок питания в Mikrotik, пока туда сюда пока заменил два кондера пока все поднялось. Все поднялось кроме этого боевого компа юзера.

Тут маленький момент, юзер пришел и пробовал включить комп уже после того как упал маршрутизатор и сломался PXE.

Вообщем юзер включает компьютер, с PXE+ISCSI грузится Win7 проходит половину загрузки и перезагружается и так в цикле. Решаю перезагрузить сервер, малоли что маршрутизатор не работал несколько часов, а там бондинг итд, при этом какбы сервер доступен работает нормально ушел в перезагрузку, нормально вернулся. Подципил lukscrypt диск перезапустил tgt, он отдельно цепляет конфиги с рейда. Проблема таже самая, грузится 7-ка до половины и перезагружается, причем долго тупит.

Отключаю правила ACL на TGTd и 7-ка начинает загружаться, но имеет совершенно не те данные в образе!!! Тобиш корректно загрузилась какаято промежуточная версия особо не настроенной Win7. Никаких ошибок не по рейду ни в логах, как будто с добрым утром все четко.

Я сижу и не могу понять а куда собственно делать полностью настроенная и стабильно работающая несколько месяцев система. Сервер не перезагружался какоето время, возможно все эти два месяца.

У меня 2 теории о сложившейся ситуации.

  1. Во время тестирования я чтото напутал, скормил в конфиг промежуточный образ а реальный образ например удалил и пока служба работала все было в порядке, предпологаю был открыт дискриптор удаленного файл.
  2. Tgt совершил какойто невероятный финт ушами с кэшами или кудато в неизвестном мне направлении сохранял данные не трогая оригинальный образ и при перезагрузке благополучно все забыл. Темнеменее я облазил весь сервер через du -sh ./* и не нашел каких либо крупных файлов имеющих отношение к проблеме.

Я пробовал запускать undelete и debugfs но совершенно не обнаружил удаленных массивов данных. Также я по самому проблемному образу проходился R-Studio и даже намека на файлы пользователя не обнаружил.

Я подозреваю что в самой ext4 должны сохраняться какието данные, и мне бы хотелось их както выудить, но к сожалению мне даже дамп на 6тб некуда сохранить.

Пользователь уже смирился, но меня както карежит, я планирую переводить на подобную систему весь офис и както не очень хотелосьбы в одно прекрасное утро утратить в неизвестном направлении вообще все. Какие есть варианты?

p.s Hyper-V и Виртуалки поднялись нормально с тогоже tgt.



Последнее исправление: KIRALEX (всего исправлений: 1)

Настраивать, перегружать для проверки боеспособнрсти, делать рейд, чтобы данные были например в ZFS raidz3. Чтобы уж наверняка все сохранилось при выходе из строя трех дисков.

anonymous
()

Off

Ну ты и намутил если не влом, обьясни зачем, ну кроме твоих ам иций, снимаю шляпу.

А по существу, я вангую виноват рейд, пятый да програмный… за свою жизнь я много видел чудес, которые не могли быть, но часто случались, лет 15 назад у меня падал рейд 5 правда не програмный с тех пор только зеркала, такая каша была на исправных дисках….

Тогда у меня сдохла сама плата рейда

alex_sim ★★★★
()
Последнее исправление: alex_sim (всего исправлений: 1)
Ответ на: комментарий от anonymous

С 5 рейдом мне что то тоже показалось маловато дисков то, я говорю давно с 5 рейдом завязал, но помнится тогда было два в страйп множим на два (зеркало) минимум 4 а по хорошему 5, может ТС третий рейд все-таки использовал, но он еще более не надежен ИМХО

alex_sim ★★★★
()
Ответ на: комментарий от gedisdone

Это да, бекапы нужны, вопрос сохранил бы бекап чтолибо в данном случае.

KIRALEX
() автор топика
Ответ на: комментарий от anonymous

Можно раскрыть тайну нелюбви к программному рейду и в частности raid5?

Я имел счастье работать с разными рейдами, и могу сказать что программный самый беспроблемный. Raid5 из 3-х дисков дает отказоустойчивость вылета одного диска, и емкость 2-х дисков.

И в конечном счете у меня ни рейд ни шифрованный раздел на нем никуда не делись, работают штатно.

KIRALEX
() автор топика
Последнее исправление: KIRALEX (всего исправлений: 1)
Ответ на: комментарий от anonymous

так сервак не выходил из строя, из строя вышел маршрутизатор, и когда все починилось сервер уже не хотел работать как надо, я подозреваю еще до перезагрузки.

KIRALEX
() автор топика
Ответ на: комментарий от alex_sim

Это все делалось под эгидой отделения рабочих данных от компьютеров пользователей. Изначально планировалось выносить только папку Users.

Если виноват RAID5 как это проверить?, никаких ошибок по рейду нет, он даже не перестраивался, при этом шифрованный раздел не поврежден. Сервер штатно был отправлен в перезагрузку, выключался всегда корректно и живет на бесперебойнике, темболее там шифрованный раздел сам сабой не поднимается.

Диски новые.

Тогда у меня сдохла сама плата рейда.

Ну это получается камень в огород железным рейдам, с программным такой фигни случиться априори не может)

KIRALEX
() автор топика
Последнее исправление: KIRALEX (всего исправлений: 2)

с PXE+ISCSI грузится Win7

чево? таки вся ОС?
а ты уверен, что она умеет полноценно работать через сеть??

darkenshvein ★★★★★
()
Ответ на: комментарий от darkenshvein

чево? таки вся ОС? а ты уверен, что она умеет полноценно работать через сеть??

Оно два месяца полностью выполняло все что надо)))) Я проводил некоторые изыскания. Есть некоторые пляски чтобы винду установить(надо уже инсталятор бутать с самого начала с самого харда иначе установщик не видит диска), давольно сложно производить решение каких либо проблем с восстановлением системы после сбоя. Вообще единственное условие чтобы винда взлетела с ISCSI это наличие драйвера сетевой карты в винде(можно завести на другом железе). Можно винду сначала поставить в виртуалке а потом этот образ уже бутать на реальной машине, вообще у меня давольно багатый опыт с первоначальной установкой винды в виртуалку а затем переносом на реальное железо.

Что касается именно полноценной работы через сеть, работает превосходно!. Я загружал Win7 через VPN в 20мбит и грузится оно не шибко дольше просто обычного старого компа, я могу делать вывод что просто один обычный HDD в рандом чтении настолько проседает что в среднем скорость через локалку(гигабитную)оказывается дажа быстрее.

Что касается деверсии уборщицы, перезапуска службы tgt перезапуска сервера, система очень даже терпит, можно вытащить кабель из сетевухи секунд на 20-30 и винда так сказать может подождать пока линк не вернется, и продолжить работу, правда если дольше то будет синий экран.

Ах да очень важный момент, который даже многие RAID контроллеры не могут, это «Возможно включения кэширования записи для блочного устройства» в винде, сильно увеличивает производительность, причем под tgtd там получается контроллер IET VIRTUAL-DISK SCSI Disk Device который это может, виндовый таргер 3.0 который чтоли этого не может.

KIRALEX
() автор топика
Последнее исправление: KIRALEX (всего исправлений: 1)
Ответ на: комментарий от KIRALEX

Также я уже немного поигрался с LVM2 и TGTD. Фантазировал прикрутить SSD cache, ко всей группе томов, но похоже можно прикрутить только к одному тому. Пробовал создавать отдельно маленькие томики по 100гб с NTFS, потом их расширять(успешно) и сужать(неуспешно). Скажем у тебя 100гб том, на нем NTFS скажем там 10гб и если сжать этот 100гб скажем до 50гб то есть вероятность что всеже NTFS умрет. При расширении приходится перезапускать tgtd иначе он не видит что том увеличился. Также радует перспектива один том размазывать по нескольким рейдам итд. Не проводил тестирований разницы если у тебя файл на ext4 лежит или том на LVM, что там с производительностью.

В идеале хочется придти к тонким томам, которые якобы большие а насамом деле занимают мало места, а также могут быть скажем склонированы или разделяемые как это умеют делать виртуальные машины. Например разместить базовый образ с виндой на SSD, и расклонировать его на тонкие диски который уже будет лежать на HDD и хранить только изменения.

KIRALEX
() автор топика
Последнее исправление: KIRALEX (всего исправлений: 1)
Ответ на: комментарий от KIRALEX

моя теория вот в чём.
обновления включены?
не попыталось ли это чудо при обновлении также совершить действия с загрузчиком? или другими своими файлами, ответственными за процесс загрузки?

darkenshvein ★★★★★
()
Ответ на: комментарий от darkenshvein

Обновления естественно выключены, не хватало чтобы оно вообще рухноло в один прекрасный момент. Ничего не обновлялось просто перезагрузили сервер. Все прекрасно грузится если не считать пары ошибок ACPI в начале загрузки ядра.

Моя теория в том что два месяца назад я чтото намутил с образом юзера, например переместил его переименовал скапировал, и tgtd продолжил(Он кстати давольно не адекватно реагирует на restart просто зависает скрипт, приходится делать или reload или stop\start или вообще kill -9 PID) работать со старым файлом который скажем мог быть удален. Тобиш проблема не с дебианом не с mdraid не с luks не с ext4, поскольку все остальное завелось штатно и работает. Если бы чтото с рейдом случилось я думаю luks бы не открылся и не ext4 не подмонтировался бы без ошибок. На том образе с которого юзер поидее должен грузиться он вообще, там чистая винда которая работает без ошибок, там и не пахнет файлами юзера я прокатил по нему R-Studio, как будто tgtd отдает совершенно другой образ диска.

root@server:/mnt/raid_data/ISCSI# ll
итого 930234028
-rw-r--r-- 1 root root  68719476736 окт  3 00:09 CENTR2493_DATA.IMG
-rw-r--r-- 1 root root 107374182400 окт  3 00:14 CENTR2493.IMG
-rw-r--r-- 1 root root 107374182400 окт  4 01:50 CENTR2493_WIN7.IMG
-rw-r--r-- 1 root root 536870912000 окт  4 11:48 HV_STORAGE.IMG
-rw-r--r-- 1 root root  42947575808 окт  3 00:11 ISCSI_BOOT_TEST.IMG
-rw-r--r-- 1 root root 107374182400 окт  3 00:06 KIRALEX-PC_TEST.IMG
-rw-r--r-- 1 root root          826 авг 11 13:32 targets.conf
drwxr-xr-x 2 root root         4096 авг 11 13:32 targets.d
drwxr-xr-x 2 root root         4096 окт  2 17:06 TEST
root@server:/mnt/raid_data/ISCSI# cat /etc/tgt/targets.conf
include /etc/tgt/conf.d/*.conf
include /mnt/raid_data/ISCSI/targets.d/*.conf
include /mnt/raid_data/ISCSI/*.conf

default-driver iscsi
root@server:/mnt/raid_data/ISCSI# cat targets.d/CENTR2493.conf
<target iqn.2020-07.ru.mycompany:centr2493>
        <backing-store /mnt/raid_data/ISCSI/CENTR2493_WIN7.IMG>
                lun 1
        </backing-store>

        #initiator-name iqn.2010-04.org.ipxe:07667536-4608-f005-a985-d45d64a86203
        #initiator-address 192.168.1.113
        #initiator-address 192.168.0.1
</target>

Вот у меня был бекап от какогото там Июля, он развернут в папке TEST, там уже домен но не то, возможно в момент создания gzip бекапа чтото пошло не так, этот момент я еще думаю как устроить бекапы и не капировать под терабайту каждый раз)

Файлы CENTR2493_DATA.IMG, CENTR2493.IMG не совсем имеют отношение к делу, поскольку это первый пилотный юзер, там было некоторое количество попыток завести юзера в ISCSI разными путями, естественно там тоже нужных данных нет.

KIRALEX
() автор топика
Последнее исправление: KIRALEX (всего исправлений: 1)
Ответ на: комментарий от anonymous

Первый дельный совет. Спасибо за утилитку. Пока без результатно, нашел один недавно удаленный файл, но это не то. Запустил грубокое сканирование.

KIRALEX
() автор топика
Ответ на: комментарий от KIRALEX

Вышел на новый уровень поиска файлов) Расшарил через tgtd вообще весь расшифрованный диск 6тб в сеть и с рабочего компа сканирую через R-Studio, чтото уже нашел восстанавиливает надеюсь то что надо.

KIRALEX
() автор топика

Прочитал весь тред и ничего не понял. У автора , выходит, создано множество томов iscsi, независимых, не тонких, один том на одну вин машину, и один том исчез? Или все тома исчезли?

Bers666 ★★★★★
()
Ответ на: комментарий от Bers666

Том никуда не делся, в томе оказались совсем не те данные. Все остальные тома в норме.

KIRALEX
() автор топика
Ответ на: комментарий от KIRALEX

Ну это получается камень в огород железным рейдам, с программным такой фигни случиться априори не может)

Я бы не был столь категоричным, любой програмный рейд один хрен крутится на железе

alex_sim ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.