Какие критерии следует учитывать при выборе операционной системы для указанного сервера (помимо того факта, что необходимое программное обеспечение доступно только на 1 платформе)?
Например, если я создаю сервер Oracle Database, как мне выбрать между Linux (и какой Linux) или Windows?
Для стека LAMP?
Для общих хранилищ?
и т.д...
Это зависит от сервера и от того, для чего он будет использоваться. Если на сервере будет размещен конкретный программный пакет, например Oracle, спросите поставщика, что они рекомендуют. Что им будет легче всего поддержать? Какая ОС имеет лучшие тесты для программного обеспечения в вашем случае использования? Есть ли у вас сотрудники, которые могут работать с этой ОС?
Для обычных серверов используйте то, что вашим сотрудникам будет удобнее всего поддерживать. Для базовых веб-серверов, если ваши сотрудники разбираются во FreeBSD, используйте это. Если они предпочитают CentOS, сделайте это. Это также будет в некоторой степени зависеть от программного обеспечения (вы, вероятно, не собираетесь развертывать Linux для веб-сайта ASP.Net).
Если есть конкретное приложение, хорошо подходящее для конкретной ОС, например брандмауэр, рассмотрите ОС с репутацией в этой области. OpenBSD имеет очень хорошую репутацию в области безопасности, поэтому они являются очевидным выбором для создания брандмауэров.
Программное обеспечение, которое вы установите, по большей части расскажет вам, какая операционная система лучше всего, например PHP, Apache, даже Oracle, я думаю, гораздо лучше подходят для Linux.
для LAMP Linux необходим для хранения, я не думаю, что это имеет такое большое значение, я бы сказал, Linux, но я бы просто использовал любую имеющуюся у вас инфраструктуру, если у вас есть серверы Linux, то Linux
Обычно это зависит от:
Все, что вы упомянули, будет работать на любой ОС. Для конкретной ОС могут быть некоторые (обычно очень специфические) преимущества, но обычно только на уровне предприятия.
Поскольку вы спрашиваете о проблеме, помимо необходимого программного обеспечения, которое работает только на определенной платформе, я добавлю несколько деталей к тому, что сказал Джастин, что было отличным ответом. Во всех оценках функциональности доступные наборы навыков являются важным фактором при выборе платформы ОС. Тем не менее, я считаю, что любая бизнес-среда, требующая большего, чем простые контроллеры домена / небольшой сетевой сервер, требует, по крайней мере, одного человека, умеренно грамотного в Linux / BSD. Мои форумы по выбору серверов по функциональности следующие:
Веб-серверы (особенно решения на основе PHP): если у вас есть хотя бы 1 средний специалист по Linux: (в порядке предпочтения) Redhat, Oracle, Scientific Linux, CentOS, Oracle, Debian, FreeBSD, OpenBSD. Большее количество администраторов серверов знают структуру каталогов на основе Redhat, которую разделяют CentOS и Oracle, чем Debian или OpenBSD. Отсюда порядок предпочтения. Это быстрее, безопаснее, легче найти ответ на любую проблему с помощью поиска Google и MS Windows, а также проще интегрировать сценарии других технологий для обработки текста / файлов. В ответ Джастину и FreeBSD: Да, это отличный выбор, я согласен, особенно в отношении безопасности, хотя иногда бывает нелегко найти кого-то, кому удобнее работать со средой BSD.
Файловые серверы: если производительность и целостность данных являются ключевыми требованиями, Linux (Redhat, Oracle, Scientific Linux, Debian, CentOS). Многие крупные организации любят использовать Linux Software RAID 6 для своих серверов (я не рекомендую RAID 5). Вы можете найти iSCSI и Apache Hadoop.
Серверы баз данных: если вам не нужно что-то интегрировать в MS SQL Server 2008+ (включая Oracle Database), снова это Linux. Oracle действительно работает в Linux значительно быстрее. Redhat, Oracle, Scientific Linux, CentOS. Я не очень хочу рекомендовать дистрибутивы на основе Debian, потому что я не запускал Oracle в Debian, а дистрибутивы на основе Redhat легче поддерживать. Если у вас есть критически важные приложения, требующие максимальной производительности, предложите конфигурацию в разделе базы данных RAID 10. Уменьшает узкое место на диске.
Для наборов файлов, где простота доступа является ключевым моментом, держите MS Server для упрощения схем безопасности на основе ролей и интеграции в проводник файлов MS Windows, но при этом резервные копии важных файлов будут храниться на файловом сервере RAID 6 Linux. MS Windows не очень хороша для программных рейдов, а аппаратные рейды могут быть катастрофой, когда контроллер неизбежно выходит из строя, и кто-то забыл (или слишком дешево) купить запасную карту заранее. Рейды на программное обеспечение Linux доказали свою надежность и не зависят от оборудования.
Сервер безопасности / брандмауэра: Мой первый выбор - OpenBSD или FreeBSD. Или отдельный продукт на их основе. когда дело доходит до безопасности, лучше найти кого-нибудь, кто имеет опыт в области безопасности и этих ОС. Стоит вложить деньги.
Виртуальный сервер: здесь производительность имеет решающее значение, и мы рекомендуем Linux. Redhat, Scientific Linux, CentOS, Oracle легче всего поддерживают самые разнообразные варианты с открытым исходным кодом и коммерческие варианты. Есть также и для дистрибутивов Debian и BSD, но их не так много, и некоторые коммерческие решения с закрытым исходным кодом, которые могут быть идеальными, не могут быть скомпилированы вручную. Знаю несколько компаний, использующих VMware, XenServer. Proxmox тоже выглядит очень многообещающе. VirtualBox тоже хорош.
Групповое ПО / почтовые серверы: все сводится к выбору программного обеспечения. Если все, что требуется, - это простая интеграция с MS Outlook, а администраторы сервера не являются продвинутыми, это простой сервер MS Windows. Если вам нужны более продвинутые опции и вы хотите использовать сервер IBM Domino для Lotus Notes, я рекомендую дистрибутив на основе Redhat (Redhat, Oracle Scientific Linux, CentOS) для повышения производительности. В целях поддержки Redhat и Oracle безопаснее всего избегать фраз «мы не поддерживаем эту ОС» от людей в IBM (в зависимости от того, с кем вы разговариваете, некоторые из них также полезны с CentOS). У Novell Groupwise возникли серьезные проблемы с безопасностью / стабильностью, когда группа, с которой я работал, тестировала различные серверы Groupware; мы могли убить его с помощью одного электронного письма каждый раз, и во время тестирования не было исправления, но, вероятно, исправлено к настоящему времени. Я думаю, что выбор здесь сводится к необходимым функциям, допустимой стоимости и безопасности. Сервер IBM Domino стоит дорого, но имеет больше функций и МНОЖЕСТВО вариантов шифрования. Вы также можете запустить его на серверах MS Windows, но производительность будет не такой быстрой, особенно с включенными функциями шифрования.
Вы можете видеть, что там, где избыточность / скорость / целостность хранилища являются фактором, я считаю, что ОС Linux - лучший выбор, поскольку у меня был неудачный опыт использования рейдов на оборудование, которые являются единственными реальными решениями для рейдов коммерческого уровня, доступными для MS Windows, включая их сервер.
Многие мои знакомые ценят производительность Gentoo или Slackware. Я считаю, что для ситуаций, требующих коммерческого программного обеспечения, они не подходят. И еще труднее найти администраторов серверов, которые знают эти ОС. Надеюсь, все это поможет.
Это зависит от того, какое программное обеспечение вам нужно на нем поддерживать. Это первое, что нужно учитывать. После этого все зависит от того, с чем вы больше знакомы. Если вы вроде как кочевник, занимающийся распространением дистрибутивов, как я, серверная версия Ubuntu поставляется с наиболее предварительно упакованными вещами, готовыми к работе с самой простой настройкой, так что в качестве общего значения по умолчанию я бы пошел с этим.
Для стека LAMP? Для общих хранилищ?
Вероятно, что-то надежное и скучное, например, стабильный Debian. В любом случае, вы не хотите использовать передовые технологии для таких вещей.
У меня есть хорошо отлаженный процесс, который я готов обрисовать для вас в общих чертах.
Я быстро осматриваю среду и смотрю, есть ли сервер или виртуальная машина, которые я могу включить или спасти от неиспользования.
Прежде чем делать что-то столь радикальное и изнурительное, как приложить усилия, я считаю полезным прийти в правильное состояние ума.
После поднятия настроения, как описано выше, пора приступить к работе, поэтому я подбрасываю монетку, чтобы справиться с трудной работой по принятию решения.
Установите все необходимые приложения или функции, которые сервер должен выполнять.
Переустановите ОС, которая лучше всего подходит для работы, в дистрибутиве / версии / выпуске, наиболее подходящей для задачи.
Успех.
Надеюсь, вы понимаете, насколько важно эффективно выбрать ОС, в которой вам удастся изначально найти неиспользуемый сервер или виртуальную машину с уже установленной ОС. В противном случае вы могли бы рассмотреть 6-этапный процесс поиска ОС, которая подходит вам и вашей среде. Следовательно, умный, дальновидный системный администратор, который хочет уменьшить свою рабочую нагрузку, будет тратить десятки часов в неделю на поиск запасных серверов или виртуальных машин и установку на них различных операционных систем, чтобы избежать необходимости делать это в будущем, что приведет к увеличению его рабочая нагрузка, и прервать его график дневного сна в рабочее время, включив некоторое приближение процесса, описанного выше.