Где должны находиться мои разделы подкачки при использовании программного RAID1? Спектакль? LVM?
Когда я ищу, например, установки RAID1, кажется, что администраторы склонны размещать свои разделы подкачки под RAID1.
Для меня более интуитивно понятно иметь два диска, каждый с большим разделом для использования RAID1 и системным разделом и с меньшим разделом для подкачки вне массива RAID.
Каков наихудший сценарий, если я потерял диск и фактически половину пространства подкачки во время работы системы?
Стоит ли ожидать увеличения или уменьшения производительности при зеркалировании тома подкачки по сравнению с двумя отдельными томами подкачки вне RAID?
Если своп должен быть зеркальным, имеет ли смысл использовать своп для собственного массива RAID1 или имеет смысл разделить один большой массив RAID1 с LVM?
(Примечание /4. Я не уверен, можно ли разделить mdX без LVM, но установщик Debian заставляет меня поверить, что это невозможно)
2 ответа
Если вы используете RAID1, вы не потеряете половину вашего свопа, а только одно из двух зеркал. В худшем случае вы потеряете любое преимущество в производительности, которое вы могли бы получить в противном случае. Если у вас есть две отдельные области подкачки на отдельных дисках, ядро будет использовать обе в манере, аналогичной RAID0 (если у них одинаковый набор приоритетов) или JBOD (если приоритеты различаются, с использованием области верхнего приоритета до полного, затем следующего), так если один из дисков умирает, ваша система, вероятно, упадет, как только потребуется какой-либо доступ к разделам подкачки. Вот почему пространства подкачки обычно находятся на томах RAID1 - это просто безопаснее, и это, как правило, важнее производительности.
Две отдельные области подкачки будут использоваться аналогично RAID0, поэтому вы ожидаете увидеть увеличение производительности в целом, хотя это зависит от другой нагрузки, на которой ваши диски находятся в данный момент. В современных ядрах драйвер RAID1 может попытаться угадать, с какого диска лучше всего читать каждый блок, так что вы можете получить некоторое повышение производительности чтения, хотя, очевидно, что при записи в swap вы этого не сделаете, так как оба зеркала должны быть обновлены. В большинстве современных систем производительность подкачки не так важна, как ее безопасность - в наши дни оперативная память относительно дешева, поэтому, если вы не ограничиваете объем оперативной памяти, которую может занять ваша материнская плата, вам следует стремиться иметь достаточно оперативной памяти, чтобы пространство подкачки было в любом случае используется как можно меньше.
Это не будет иметь большого значения, если вы используете одну и ту же пару дисков. Распространенная причина наличия свопа в отдельном массиве заключается в том, что при использовании RAID5/6 для основного массива (что не так в вашем случае) следует избегать и выполнять разбиение на области подкачки, затронутые проблемой производительности записи RAID5/6. Вероятно, вы можете настроить производительность, попытавшись убедиться, что области подкачки находятся ближе к самой загруженной части дисков (поэтому, если у вас есть массив объемом 1 ТБ с логическим томом 250 ГБ, используемый для ваших наиболее занятых активных файлов базы данных, поместите том подкачки рядом с что) для уменьшения движений головы во время свопинга - но на самом деле такие твики не затрачиваются на то время, так как к тому моменту, когда вы сильно поменялись местами, преимущества%-2 не хватит, чтобы сделать разницу между выполнением "ОК" и "нет".
Я полагаю, что вы можете разбивать программные тома RAID на ядра, но это не значит, что установщик понимает такие механизмы. В примерах, не использующих LVM, я всегда видел диски, разделенные на разделы и имеющие отдельный массив RAID для каждого раздела, а не один большой том RAID, который разбит на разделы. Я рекомендую метод LVM, если у вас нет особых причин избегать его, поскольку он более гибкий и (по моему опыту) не менее надежный, чем другие схемы.
Вы можете воспользоваться преимуществами быстрого доступа к RAID0 (хотя и только для чтения) и безопасности RAID1 в Linux, если вы используете RAID10. Драйвер Linux MD может создавать тома RAID10 на любом количестве дисков от 2 и более. Чтобы получить преимущество в скорости, вам нужно указать расположение массива как "дальний" (-p f2
), таким образом, производительность чтения аналогична RAID0, тогда как производительность записи лишь немного ниже, чем RAID1.