Назад | Перейти на главную страницу

Чрезвычайно быстрая загрузка сервера

Я меняю способ работы наших DHCP / DNS. В настоящее время у нас есть 3 DNS-сервера и DHCP-сервер. Все они виртуальные машины.

Существует циклическая зависимость, когда для загрузки материалов требуется NFS, а для этого требуется DNS. Поэтому, когда мы перезагружаем что-то, что-то может вернуться слегка нарушенным, пока DNS не будет включен, и мы не перезапустим некоторые службы.

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

В идеале я бы хотел использовать Ubuntu 11.10 или Debian 6 в качестве ОС. Меня не интересует Gentoo или компилировать собственное ядро. Это должно быть разумно подтверждено мной.

Какие еще шаги по оптимизации, кроме SSD-накопителей, можно предпринять, чтобы повысить скорость загрузки?

Разве это не та ситуация, когда вы должны создавать циклические зависимости? Установите задержку включения в BIOS сервера. У вас несколько DNS-серверов, так что это плюс. Кеширование DNS? Было бы это так же просто, как использовать IP-адреса или файлы хоста для вашей NFS или сети хранения? Вы не упомянули конкретную технологию виртуализации, но можно, например, установить приоритет загрузки виртуальной машины в VMWare ... Это на нескольких серверах?

В противном случае могут помочь загрузочные диски на основе SSD. Используйте дистрибутив с процессами загрузки Upstart. Уничтожьте демонов.

В зависимости от статуса вашего ИБП, это может быть одним из немногих вариантов использования, где спящий режим ACPI может быть хорошей идеей. Обычно восстановление из спящего режима заменяет загрузку с нуля, особенно в случае систем на основе SSD с низким объемом оперативной памяти. Если у вас есть возможность, шаг завершения работы вашего программного обеспечения ИБП может быть настроен на перевод DNS-сервера в спящий режим.

Я могу порекомендовать очень крошечную систему NetBSD на твердотельных накопителях, но если вы настроены на Linux, есть два варианта, которые сразу приходят на ум:

  • Проклятый маленький Linux - один из самых известных маленьких дистрибутивов Linux. Я не знаю, сколько у них времени загрузки, но оно должно быть относительно коротким.
  • Slax немного более настраиваемый с самого начала и может быть немного быстрее.

Также есть возможность использовать крошечные пользовательские / встроенные решения, такие как вот этот (Система на базе ARM за 99 долларов на модуле с 1-секундным временем загрузки. Это не массовое оборудование, но его можно спрятать в тихом уголке центра обработки данных и оставить работать вечно ...

В большинстве случаев DNS является наиболее важной инфраструктурной службой. Если он сломается, все остальное тоже сломается. Делается вывод, что DNS-сервер (ы) не должен зависеть от других серверов.

Если вам действительно нужен NFS для загрузки - сделайте свои DNS-серверы такими же NFS-серверами (это тоже нарушение правила) - но обязательно экспортируйте только ro и убедитесь, что вы не можете подвергнуть свои NFS-серверы опасности DoS-атака.

Вероятно, лучшим решением является другой подход (HA) для предоставления необходимой службы NFS для загрузки, тем самым нарушая циклическую зависимость (NSCD может помочь и на NFS-серверах).

Обновление 2011-11-17 о NFS: из одного из ваших комментариев я вижу, что NFS используется для / home-dirs. У местных технических пользователей их не должно быть. Все остальное нужно монтировать через autofs с bg, hard, intr.

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

Также есть readahead: https://fedorahosted.org/readahead/ , который я не пробовал.