На каком физическом диске на самом деле лежит ваша виртуальная машина?
Список сообщает, что машина использует local-lvm. Он не сообщает, что на том же физическом диске лежат ещё восемь машин. Именно вторая фраза определяет, во что обойдётся один отказ.
AtlasPVE ·
Эта статья отвечает на
- proxmox на каком диске моя вм
- proxmox где лежит диск виртуальной машины
- proxmox хранилище физический диск соответствие
- proxmox топология просмотр
- proxmox network topology visualizer
Спросите, где лежит диск виртуальной машины, и интерфейс ответит сразу: local-lvm. Это верный ответ, и это не тот ответ, который вам был нужен. local-lvm это имя, а имя не говорит, какая именно железка перестанет вращаться.
Настоящий вопрос стоит за ним: если сегодня ночью откажет один физический диск, сколько машин уйдёт вместе с ним?
В цепочке пять звеньев
Виртуальная машина лежит не на диске. Она лежит на конце цепочки, и каждое звено это место, где ответ может вас удивить.
Машина объявляет виртуальный диск в собственной конфигурации. Строка вида scsi0: local-lvm:vm-100-disk-0,size=32G называет хранилище, а не железо.
Виртуальный диск это либо файл, либо блочное устройство. Что именно, зависит от типа хранилища, и эта разница определяет, будет ли снимок дешёвым или невозможным.
Хранилище это запись в конфигурации узла. Это ярлык, указывающий на что-то другое. Два ярлыка могут указывать на одно и то же, и именно так две якобы разделённые машины оказываются связаны одним отказом.
Пул или группа томов это место, где несколько физических дисков собраны вместе. Или где один диск притворяется пулом.
Физический диск это единственное звено, которое действительно может умереть.
Список показывает вам первое и третье звено. Риск живёт во втором, четвёртом и пятом.
Почему ответ весит больше, чем кажется
Возьмите обычную конфигурацию: восемь машин, все на local-lvm, на узле с четырьмя дисками. Читается так, будто нагрузка распределена по четырём дискам. Так ли это, полностью зависит от того, как собрана группа томов.
Если четыре диска объединены полосами без избыточности, отказ одного диска забирает все восемь машин. Если они зеркалированы попарно, отказ одного диска не забирает ничего, и вы спокойно его меняете. Те же восемь машин, то же имя хранилища, тот же экран. Противоположные последствия.
В списке машин нет ничего, что различало бы эти два случая. Цепочку нужно пройти.
Где цепочка прячется
Тонкое выделение. Машина может показывать 32 ГБ выделенных и занимать 4 ГБ. Сложите выделенные размеры, и вы можете превысить физическую ёмкость без единого предупреждения. Всё работает, пока пул действительно не заполнится, и тогда ломается не у выросшей машины, а сразу у всех.
Снимки в том же пуле. Снимок защищает вас от ошибки внутри машины. Он не защищает от диска под ней. Снимок, лежащий в том же пуле, что и машина, умирает вместе с машиной.
Два ярлыка, одно устройство. Каталожное хранилище, путь которого случайно лежит на той же группе томов, что и блочное. Две записи в интерфейсе, одна физическая судьба.
Системный диск. На многих узлах системный диск и первое хранилище машин это одно и то же устройство. Это работает, это распространено, и это значит, что один отказ забирает и машины, и то, что должно было ими управлять.
Вопрос, на который резервная копия не отвечает
«Резервные копии есть» это хороший ответ на другой вопрос. Копия отвечает на вопрос сколько займёт восстановление, а не сколько машин придётся восстанавливать.
Это разные числа, и стоят они по отдельности. Восстановить одну машину это вечер. Восстановить восемь это выходные, причём выходные, когда ничего не работает.
Пройденная цепочка даёт вам второе число. Его стоит знать заранее, потому что измерить его, когда диск уже мёртв, невозможно.
Читаем цепочку вручную
Каждое звено читается с узла, и это стоит проделать хотя бы раз, чтобы форма стала знакомой.
Конфигурация машины называет своё хранилище. Конфигурация хранилищ узла говорит, какого оно типа и на что указывает. Для группы томов список группы показывает, какие физические устройства ей принадлежат. Для пула ZFS состояние пула показывает устройства и, что важнее, как они расположены: зеркалируют ли они друг друга или просто стоят рядом.
Последняя деталь решает всё, и она же дальше всего от списка машин.
Что делает Atlas
Atlas рисует всю цепочку на одном экране, от машины до физического диска. Ответ получается движением по линии, а не открытием пяти экранов и соединением их в голове.
Карта показывает машину, её долю процессора и памяти, её виртуальные диски, хранилище, на котором они лежат, пул, и в самом низу настоящее железо. Когда восемь машин сходятся на одном физическом диске, восемь линий заметно сходятся вместе. Чтобы это найти, не нужно об этом подозревать.
Рисуется и расположение, а не только принадлежность: зеркальная пара и два независимых диска выглядят по-разному, потому что разница между ними это разница между спокойной заменой и потерянными выходными.
Цепочка читается вживую, а не рисуется однажды, поэтому хранилище, добавленное в прошлом месяце, есть на карте без того, чтобы кто-то помнил про обновление схемы.
Источники
Собственная документация Proxmox. На английском, и последнее слово в этом вопросе за ней.