LINUX.ORG.RU
ФорумAdmin

Proxmox: Или задача про козу, капусту и волка

 , файловое хранилище


0

3

Всем привет!

У меня есть 6 дисков HDD по 16тб, один диск заполнен. Что мне нужно так это вставить все 6 дисков в домашний сервер, который живет под proxmox и не потерять данные.

Т.е. 5 дисков хотел объединить в программный рейд, перенести на них инфу и докинуть шестой.

Первая мысль была сделать ZFS пул и добавить туда диск, но как я понял ZFS нельзя расширять?!

Что делать? В основном домашний сервер работает как файло-помойка, но иногда запускаю всякие VM для экспериментов

UPD: По советам из комментов создал DEGRADED RAID6, потом заверну его в lvm и добавлю в proxmox, перекину в него данные, а потом добавлю еще один диск в рейд. Пока синк RAID6 идет, скорее всего закончится через 21 час, потом буду кидать данные.

Every 1.0s: cat /proc/mdstat                                                                           pve: Sun Oct  5 11:37:19 2025

Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sdi[6] sdd[3] sdc[2] sdb[1] sda[0]
      62502989824 blocks super 1.2 level 6, 512k chunk, algorithm 2 [6/4] [UUUU__]
      [>....................]  recovery =  1.2% (196646388/15625747456) finish=1287.7min speed=199695K/sec
      bitmap: 0/117 pages [0KB], 65536KB chunk

unused devices: <none>
★★★★

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

Вопрос в желании использовать, настраивать, изучать, разбираться. Желании и времени.

Оно везде одинаково, это не дистроспецифично. Из дистроспецифики только установка и настройка, но не более того.

Ещё плюсом, что под проксмокс много гайдов, почти всё можно нагуглить.

Опять-таки гайды различаться могут только по части установки, всё остальное у всех одинаково. Говорить про проксмокс, что он прям заточен, а остальные нет, это все равно что говорить что DistrName заточен под самбу, апач, подставить по вкусу.

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

Где удобнее запускать условный cosmic de? В Gentoo, Ubuntu или Fedora? В Fedora. Потому что он есть в репозиториях

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

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

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

спаре не хранит данные, он подключается в случае выхода из строя диска в массиве, т.е. если два диска в 5-ом рэйде вылетят одновременно, он не спасет.

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

новую серию днём поставить сливаться и спокойно вечером посмотреть независимо от наличия\качества интернета (и даже электричества в некоторых случаях).

Два чая! Сливаешь спокойно новые серии и смотришь в удобное тебе время и без рекламы.

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

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

Зачем вам RAID?

Если вам нужна сохранность данность, то для этого можно приобрести несколько внешних винтов.
У меня именно так.
Каждый день то что разработал нового сохраняю на паре внешних винтов.
Это много времени не занимает.
Впрочем как-там у вас задачи мне не известно …

ИМХО ИИ в домашних условиях подымать и резервировать данные - не благодарная работа.

Ныне у меня приоритете - подсистема управления динамическими объектами и переменными.
При этом скорость доступа к ним должна быть не менее, чем использование линейного массива (речь о динамических массивах, списках, деревьях, …).
Это вполне реально достижимо.

«Время гибнет на достижение эффективной работы с динамическими объектами. Время гибнет на достижение эффективной работы с динамическими объектами.» (как поётся в известной оперной песне).

Ещё раз акцентирую, что нынешние алгоритмы реализующие ИИ ИМХО «Горе от ума».
Да они функционируют, но ИМХО вовсе не панацея.

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

Если вам нужна сохранность данность, то для этого можно приобрести несколько внешних винтов.

И умерли они в один день. Песок плохая замена овсу, рэйд != бэкап. Внешние харды, если это не бокс в котором ынтерпрайз хардешник, это рулетка, сегодня он жив, а при следующем подключении уже трупп. Я не говорю, что не стоит использовать и такой вид бэкапов, но это как один из дополнительных.

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

Я не говорю, что не стоит использовать и такой вид бэкапов, но это как один из дополнительных.

Вроде ТС ИИ занимается.
RAID так понимаю ему нужен для того, что объёмы данных огромные и backup для него неприемлем.

Пошучу

Если с балкона компьютер не выкинет, то RAID его вполне спасёт.

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

Да вот ТС сказал

«Ну и исследование по диссертации: В 64 ТБ памяти можно обучить нейросеть с примерно 30–35 миллионами параметров в гомоморфном CKKS виде и это в идеальных условиях, возможно получится в разы меньше.»

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

Ленточки дорогое удовольствие.

Создание ИИ весьма актуально, но для этой задачи нужно сначала
разработать core для эффективной работы с данными, которого в открытом доступе не видел.
В ином случае задача решаема лишь с «Кто выще бье, тот краще грает».

Пошучу

Дата центр вполне «самое то»

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

Интересуется однако, а скорее всего и использует для решения своих задач.

Пошучу

Так говорю, потому что использую методологию поиска Шерлока Хомса.
Ещё нужно обязательно знать какого цвета у него шнурки на ботинках …

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

Ну это звучит как шляпа и как я ранее говорил, что тупо один диск в raidz2 (аналог raid6) добавить не получится и это печально.

Получится. На zfs >= 2.3.

#создадим 6 дисков
for i in {1..6}; do sudo zfs create -V 1G -o com.sun:auto-snapshot=false rpool-vf2-01/tmp/zd$i; done

#диски на месте
ls -1 /dev/zvol/rpool-vf2-01/tmp/*

/dev/zvol/rpool-vf2-01/tmp/zd1
/dev/zvol/rpool-vf2-01/tmp/zd2
/dev/zvol/rpool-vf2-01/tmp/zd3
/dev/zvol/rpool-vf2-01/tmp/zd4
/dev/zvol/rpool-vf2-01/tmp/zd5
/dev/zvol/rpool-vf2-01/tmp/zd6

#создаем новый пул с минимальным raidz2 из 3 дисков.
sudo zpool create testpool raidz2 /dev/zvol/rpool-vf2-01/tmp/zd{1..3}

#что получилось
sudo zpool list -v testpool
NAME                            SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
testpool                       2.75G  5.48M  2.74G        -         -     0%     0%  1.00x    ONLINE  -
  raidz2-0                     2.75G  5.48M  2.74G        -         -     0%  0.19%      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd1  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd2  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd3  1014M      -      -        -         -      -      -      -    ONLINE 

#добавим ценных данных
sudo dd if=/dev/random of=/testpool/rand.file bs=512M count=1 status=progress

#подкидываем еще 3 диска (по одному)
for i in {4..6}; do sudo zpool attach testpool raidz2-0 /dev/zvol/rpool-vf2-01/tmp/zd$i; done

#что в итоге
sudo zpool list -v testpool 
NAME                            SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
testpool                       5.75G  1.51G  4.24G        -         -     3%    26%  1.00x    ONLINE  -
  raidz2-0                     5.75G  1.51G  4.24G        -         -     3%  26.3%      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd1  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd2  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd3  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd4  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd5  1014M      -      -        -         -      -      -      -    ONLINE
    zvol/rpool-vf2-01/tmp/zd6  1014M      -      -        -         -      -      -      -    ONLINE
undef ★★★
()
Ответ на: комментарий от anonymous

Зачем вам RAID?

Если вам нужна сохранность данность, то для этого можно приобрести несколько внешних винтов.

RAID позволяет потерять диск прям во время работы, а бекапы внезапно и при наличии рейда надо делать

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

А что за разработки ведёте?

Пытаюсь, что-то нарыть в гомоморфном шифровании схемы CKKS для диссертации. Отличительная черта этого шифрования, что возможны математические операции над шифрами, идеально подходит для нейронных сетей так как результат приближенный получается и выглядит примерно так: 1+1=2.000000689

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

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

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

Молодцом!
Достойная разработка!

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

Спасибо. Но увы, есть суровая реальность, первый год в аспирантуре мы ковыряли в носу. В середине второго года нам дали только научника, в середине третьего года только какие-то прототипы начинают появляться, а тут уже должны быть и статьи и конференции, а у меня еще по факту ничего нет, в общем и тут какое-то раздолбайтво. Так и получается, что у меня два коллеги со степенями, один 5 лет писал диссер, второй 8 лет с момента поступления. Походу и у меня что-то подобное будет =(

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

Но увы, есть суровая реальность, первый год в аспирантуре мы ковыряли в носу. В середине второго года нам дали только научника, в середине третьего года только какие-то прототипы начинают появляться, а тут уже должны быть и статьи и конференции, а у меня еще по факту ничего нет, в общем и тут какое-то раздолбайтво.

Пошучу

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

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

Там шум - это неотъемлемая фишка FHE, он позволяет добиться криптостойкости в пост квантовых алгоритмах шифрования основанных на математических решетка и RLWE проблеме. Проблема в том, что при вычислениях в зашифрованном виде этот шум начинает расти, особенно в умножении, что ограничивает глубину вычислений. Т.е. по дефолту ты не можешь сделать 1000 умножений, потому что шум съест значащую часть числа. И есть разные техники, типа scaling/rescaling/bootstrapping, которые эту проблему обходят с разной степенью успешности. bootstrapping позволяет делать бесконечное количество умножений, но требует:

  • Galois ключи (для ротаций): до logN ключей, каждый размером с шифротекст.
  • Bootstrap ключ (в HEAAN/OpenFHE — это зашифрованный секретный ключ в специальном формате).
  • Таблицы предвычислений (например, для аппроксимации синусов/косинусов или полиномов).

Общий объём ключей и вспомогательных данных часто в 10–50 раз превышает размер одного шифротекста.

Во время bootstrapping одновременно хранятся:

Входной и выходной шифротексты, Десятки промежуточных шифротекстов (FFT, интерполяция, ротации), Ключи.

Короче, при N=131072 потребуется от 8 до 20+ ГБ ОЗУ требуется на ОДИН только бутстраппинг, а если глубина вычислений в сто умножений, то и считайте.

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

RAID6 хорошо пишет, когда запись идёт целыми страйпами, т.е. не требуется read-modify-write для обновления парити чанков. Для RAID6 массива 4+2 это блок размером в 4 чанка выровненный по границе 4 чанка. Посмотри какой размер чанка у твоего массива, попробуй писать с помощью dd oflag=direct bs=$((4*chunk_size)).

По хорошему надо при создании массива указать размер чанка поменьше (например 4K), а при создании ext4 указать -E stride=4K,stripe_width=4, чтобы ext4 выравнивала файлы по границе страйпа.

Изменить размер чанка у массива на лету можно (это reshape в терминах mdadm), но это очень длительный процесс с огромным количеством read-modify-write. Изменить stride и stripe_width у ext4 тоже можно с помощью tune2fs, но оно не перевыравнивает уже размещённые файлы.

Поэтому лучше с массива всё забэкапить, массив и файловую систему пересоздать, восстановить файлы с бэкапа. Если диска для бэкапа нет, можно из массива вывести один диск (mdadm /dev/md0 --fail /dev/sdf, mdadm /dev/md0 --remove /dev/sdf), нарезать на нём файловую систему, и использовать его для бэкапа.

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