Создание оптимизированного частного облака с использованием Windows Server "8" Server Core

Источник: technet
Russian MSDN

Windows Server "8" - это "поворотный" выпуск. Мы перестали думать о нем, как об ОС для отдельно стоящего сервера, и начали представлять его как ОС, которая одинаково хорошо подходит как для отдельных серверов, так и для облака, использующего кластер из серверов. Мы всегда заботились о значении расходов Capex/Opex для наших клиентов, но когда мы думаем о клиентах, развертывающих десятки или тысячи (или сотни тысяч) серверов, всё меняется. Значение таких критериев, как эффективность, гибкость в эксплуатации и функции автоматизации, из разряда желательных переходит в разряд критичных. Все это знают, однако запуск наших собственных облачных сервисов действительно доказывает правоту этих суждений. Это как разница между тем, чтобы знать, что нужно держать руки поднятыми, потому что вам сказал об этом ваш тренер по боксу, либо же знать это потому, что вы уже пропустили удар по лицу. Только опыт может подвигнуть вас к реальным и долгосрочным изменениям.

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

Server Core - это основа наших усилий в облачной ОС. Мы начали работать над Server Core со времен Windows Server 2008. Этот вариант развертывания не имел большой популярности, однако сейчас, по нашему мнению, достигнута та "критическая масса" в Windows Server "8", чтобы рекомендовать Server Core в качестве предпочтительной конфигурации. Мы говорим нашим независимым партнерам-производителям программного обеспечения, что они должны поддерживать Server Core и переходить к модели с удаленным графическим интерфейсом пользователя. Мы по-прежнему предлагаем "Server c GUI" в качестве опции для совместимости, и добавили "Minimal Server Interface" в качестве варианта для тех приложений или администраторов, которые хотят использовать некоторые преимущества Server Core, но которым требуется чуть больше времени для полного перехода. Это блог содержит описание основ и некоторых деталей о работе над Server Core.

Создание оптимизированного частного облака с использованием Windows Server "8" Server Core

Частные облака обещают дать нам масштабируемые, динамические, многопользовательские сервисы с минимальными затратами на приобретение и операционными расходами. Частные облака раскрывают свой истинный потенциал, когда они развернуты на оптимизированной платформе, на которой работает оптимизированная серверная ОС, которая обеспечивает:

  • Многопользовательское и масштабируемое удаленное управление
  • Последовательную автоматизацию и обработку сценариев
  • Гибкие настройки и конфигурацию
  • Дешевое хранилище данных и надежность
  • Эффективность и управление энергопотреблением
  • Минимальное количество патчей и минимальный периметр для внешних атак
  • Открытую модель разработки веб-служб и обычных приложений
  • Оптимизированный размер занимаемого дискового пространства.

Это те вещи, над которыми мы работали в Windows Server "8", и это одни из многих причин, почему это лучшая облачно-оптимизированная операционная система. Во время планирования данного релиза мы потратили около 10 миллионов долларов и год работы, общаясь с сообществом и разработчиками облачных решений. Во время этого общения нам прямым текстом сказали, что ключами к успеху являются гибкость при развертывании и оптимизация. Давайте поговорим о том, что мы сделали для того, чтобы ответить на эти запросы клиентов.

Рекомендуемой конфигурацией для развертывания Windows Server "8" является Server Core. Server Core минимизирует требования к дисковому пространству и памяти для Windows Server, позволяя администраторам увеличить плотность размещения их виртуальных машин и в значительной степени повысить масштабируемость развертывания. Мы не только значительно экономим дисковое пространство, уменьшая затраты на хранилища данных, но и минимизируем периметр атаки, увеличивая таким образом безопасность и надежность. Естественно, уменьшая общее число компонентов Windows Server, мы также сокращаем число компонентов, которые нужно обновлять. Минимальное число применимых патчей уменьшает частоту перезагрузок и увеличивает доступность сервера.

Изучая усовершенствования в бета-версии Windows Server "8", приведенные в следующей таблице, можно увидеть, что мы, прежде всего, уделяли внимание функциональности, управляемости и гибкости, необходимым для развертывания приложений и служб в частном облаке:

clip_image002

Теперь давайте обсудим детали подхода к созданию этого релиза; но сначала, позвольте мне немного рассказать об истории Server Core, чтобы дать некий контекст тем, кто не знаком с этой моделью развертывания. Много лет большая часть операционной системы Windows поставлялась как монолитный компонент, известный как Windows Foundation. Windows Foundation включал в себя Windows Explorer, .NET, оболочку рабочего стола, драйверы, поддержку мультимедиа и Internet Explorer. Дополнительные функции и серверные роли были представлены как отдельные компоненты, которые могли устанавливаться поверх Windows Foundation.

В Windows Server 2008 мы представили Server Core, цель которого - позволить устанавливать только те компоненты Windows, которые нужны приложению. Server Core - это отдельный вариант установки, и дополнительные функции и серверные роли являются отдельными компонентами, которые могут установлены на него. Этот подход максимизирует ресурсы сервера, доступные вашему приложению, уменьшая при этом затраты на обеспечение безопасности и управляемости для этого сервера. Server Core значительно уменьшил количество перезагрузок в связи с уменьшением количества необходимых патчей, однако он поддерживал ограниченное количество ролей и рабочих нагрузок. Обратная связь от наших клиентов показала, что принятие Server Core в Windows Server 2008 было ограничено по следующим причинам:

  1. Клиентам нужны были роли и продукты (в особенности SQL Server), которые были недоступны на Server Core. Только 9 из 17 серверных ролей работали на Server Core.
  2. Отсутствие PowerShell и поддержки Server Manager сделало Server Core сложным в управлении.
  3. Не было возможности перехода между Server Core и полной версией Server. Если вы установили Server Core и вам потребовалось перейти к полной версии Server, то приходилось все переустанавливать.

clip_image004

Рис. 1. Структура компонентов Windows Server 2008

Следующее поколение Server Core

Хотя первый выпуск Server Core не имел широкого принятия, он бы очень успешным для тех клиентов, которые его использовали. В Windows Server 2008 R2 мы расширили поддержку Server Core несколькими новыми серверными ролями и добавили.NET Framework и PowerShell. Это увеличило число людей, которые могли бы использовать Server Core, и облегчило для них его использование. Однако Server Core по-прежнему оставался отдельным вариантом установки Windows без возможности перехода к полной версии. Основываясь на обратной связи от клиентов и желании более широкого использования Server Core при развертывании частного облака, мы приложили много усилий к разработке Server Core для Windows Server "8", чтобы увеличить гибкость развертывания и принести в Server Core поддержку большего количества серверных ролей. Server Core в Windows Server "8" поддерживает следующие роли:

  • Active Directory Certificate Services
  • Active Directory Domain Services
  • Active Directory Lightweight Directory Services (AD LDS)
  • Active Directory Rights Management Server
  • DHCP Server
  • DNS Server
  • File and Storage Services (включая File Server Resource Manager)
  • Hyper-V
  • Print and Document Services
  • Подроли Remote Desktop Services (Remote Desktop Connection Broker, Remote Desktop Licensing и Remote Desktop Virtualization Host)
  • Routing and Remote Access Server
  • Streaming Media Services (доступна для отдельной отгрузки)
  • Web Server (включая подмножество ASP.NET)
  • Windows Server Update Server

Кроме того, многие серверные приложения, такие как SQL Server 2008, будут поддерживать Server Core в Windows Server "8". С точки зрения архитектуры мы упростили компонент Server Core, чтобы он стал минимальной общей базой для всех редакций Windows Server, а Windows Foundation был разделен на несколько компонентов, которые могут быть установлены и удалены индивидуально. Например, теперь возможно с помощью одной команды перейти от Server Core с интерфейсом командной строки к Server с графическим интерфейсом пользователя с полноценным рабочим столом Windows. Более того, столь же просто можно выполнить обратный переход. Любой переход может быть выполнен всего за несколько минут и требует самое большее одной перезагрузки.

clip_image006

Рис. 2. Структура компонентов Windows Server "8"

Если у вас есть установленная Windows Server "8" Beta, вы сами можете оценить эти возможности. Чтобы преобразовать инсталляцию Windows Server "8" с графическим интерфейсом в Server Core, запустите PowerShell и выполните следующую команду:

Uninstall-WindowsFeature Server-Gui-Mgmt-Infra -Restart

Чтобы повторно установить компоненты графического пользовательского интерфейса, запустите PowerShell и выполните следующую команду:

Install-WindowsFeature Server-Gui-Shell -Restart

Одной из наших целей при разработке Windows Server "8" было сохранение Server Core в максимально упрощенном виде, позволяя клиентам производить их установку в таком виде, чтобы они выполняли только требуемые функции. Чтобы больше узнать о том, как мы этого добились, смотрите раздел "Сокращение занимаемого дискового пространства с помощью функций по запросу" ниже.

Минимальный интерфейс сервера

По завершении двух последних выпусков поставщики услуг и ИТ-профессионалы делились с нами информацией о своих потребностях в плане управления и конфигурирования операционной системы. В действительности многие администраторы любят гибкость и функциональность режима развертывания Server Core, тогда как некоторые хотят иметь возможность пользоваться графическими инструментами, доступными на сервере, не нуждаясь при этом в полноценном GUI и рабочем столе. Самые большие компоненты (с точки зрения требований к дисковому пространству) в Windows Server состоят из графического интерфейса пользователя или GUI. Основываясь на истории обновлений, компоненты GUI намного чаще требуют для себя установки патчей, чем их консольные варианты. Из GUI-компонентов в Windows двумя самыми большими являются Windows Explorer и Internet Explorer. При этом в инсталляциях Windows Server они используются нечасто. В связи с этим мы переместили Windows Explorer и Internet Explorer в дополнительный пакет, который может быть включен и отключен через интерфейс Server Manager, PowerShell или командную строку. В Windows Server "8" мы представляем новый интерфейс под названием Минимальный интерфейс сервера (от англ. minimal server interface, MSI), который включает в себя большинство локальных задач управления через GUI без необходимости устанавливать полную оболочку GUI или Internet Explorer. Минимальный интерфейс сервера содержит файлы, которые обеспечивают полноценное локальное управление. Чтобы сконфигурировать машину Windows Server "8" с минимальным интерфейсом сервера, убедитесь, что пакет Graphical Management Tools and Infrastructure включен, а следующие за ним пакеты Desktop Experience и Server Graphical Shell выключены.

clip_image008

Рис. 3. Выбор функции для MSI

Минимальный интерфейс сервера - это фактически Server с GUI за исключением Internet Explorer, компонентов оболочки Windows, таких как рабочий стол, Windows Explorer, поддержки приложений Metro. MMC и новый Server Manager, которые могут использоваться для управления локальным и удаленными серверами Windows, а также служить в качестве новой точки входа для инструментов управления сервером Windows, входят в состав минимального интерфейса сервера. Поскольку минимальный интерфейс сервера не включает Explorer или графическую оболочку сервера, не весь GUI-функционал доступен. В частности, апплеты панели управления, реализованные как расширения оболочки, недоступны. К ним относятся:

  • Programs and Features
  • Network and Sharing Center
  • Devices and Printers Center (однако Device Manager доступен)
  • Display Options (однако, здесь есть новый инструмент SetRes, который позволяет изменять разрешение дисплея)
  • Windows Firewall (однако оснастка Advanced Firewall MMC доступна)
  • Windows Update
  • Fonts
  • Storage Spaces

Большинство оснасток MMC также могут быть установлены независимо от соответствующих им ролей с помощью дополнительной функции Remote Server Administration Tools (RSAT). В некоторых случаях определенных функционал оснасток MMC может быть недоступен. Например, локальная справка может быть недоступна или панель дополнительной информации в оснастке может быть ограничена отсутствием Internet Explorer для отображения HTML.

Минимальный интерфейс сервера хоть и не такой же большой, как инсталляция с графической оболочкой сервера, все же требует на 4 Гб больше дискового пространства, чем Server Core. Потому мы хотели удостовериться, что даже минимальный интерфейс сервера может быть удален, как только это понадобиться. Функция Graphical Management Tools and Infrastructure может быть удалена, чтобы преобразовать сервер в Server Core. В дополнение к этому оснастки MMC для серверных ролей могут быть легко установлены на клиентские версии Windows 8 с помощью Remote Server Administration Tools (RSAT), чтобы упростить удаленное управление серверами Windows. Кроме того, мы представляем около 2430 новых наборов команд PowerShell для локального и удаленного управления.

Сокращение занимаемого дискового пространства с помощью функций по запросу

По умолчанию, файлы для всех доступных компонентов Windows хранятся в папке под названием side-by-side component store или WinSxS. Структура этого каталога была тщательно разработана, чтобы извлечь максимальную выгоду. Например, установочный носитель никогда не требуется, чтобы включить или выключить какую-либо функцию Windows. Кроме того, обновления Windows могут быть применены в любом порядке, и любое обновление может быть пропущено, если администратор того желает. Этот функционал требует для себя хранения версий всех компонентов Windows, которые могут быть установлены, в папке winsxs, требования к дисковому пространству которой всегда были немаленькими. В связи с постоянным ростом числа виртуальных машин, соперничающих за место на относительно дорогих высокопроизводительных дисках SAN и SSD, мы увидели потребность администраторов в уменьшении дискового пространства, занимаемого Windows Server 8. В то же время, мы хотели оставить высокий уровень гибкости обновления и развертывания, к которому привыкли администраторы.

В Windows Server "8" мы добавили для администраторов возможность полностью удалять ненужные роли и функции из их инсталляций. В предыдущих версиях Windows функция могла быть либо "Enable", либо "Disable". В Windows Server "8" появилось новое состояние под названием "Disabled with payload removed". Новый флаг -Remove в наборе команд Uninstall-WindowsFeature PowerShell переводит функцию в это состояние, удаляя все ее файлы из папки winsxs. Например, вы можете полностью удалить Windows Explorer, Internet Explorer и другие зависимые компоненты (и все связанные с ними файлы) с диска с помощью следующей команды PowerShell:

Uninstall-WindowsFeature Server-Gui-Shell -Remove

После применения этой команды файлы фактически удаляются из хранилища "side-by-side" и с диска в целом. Следовательно, это функция не может быть повторно установлена без использования носителя, указанного в наборе команд Install-WindowsFeature с флагом -source. По умолчанию Windows скачивает недостающие компоненты из Windows Update, если подключение к Интернет доступно (подобное поведение может быть отключено при желании). Если доступа в Интернет нет, доступный на DVD файл образа Windows (install.wim) может быть смонтирован для предоставления источника установочных файлов. Также можно указать список ресурсов для установки, используемый по умолчанию, через групповые политики.

Функционал Features on Demand (с англ. функции по требованию) уже доступен в Windows Server "8" Beta. Например, версия .NET Framework 3.5 не включена в доступный вам для скачивания образ. Установка, которая не требует для себя .NET 3.5, позволяет уменьшить размер файла образа ISO приблизительно на 300 Мб. Точно так же файлы для некоторых компонентов "Server с GUI", таких как графические инструменты управления и некоторые роли серверов, могут быть удалены в стандартной инсталляции Server Core.

Для получение дополнительной информации о данной функции и о том, как использовать Windows PowerShell для преобразования инсталляции Server Core в инсталляцию Server с GUI, обращайтесь к статье "Windows ServerInstallation Options".

Сокращение числа перезагрузок и патчей

Как мы уже рассказывали в предыдущей публикации в блоге, мы проделали большую работу для минимизации частоты перезагрузок из-за обслуживания. В соответствии с этим Windows Update был разработан так, чтобы неустановленные функции также не требовали для себя патчей. Отключая часто обслуживаемые и нечасто используемые дополнительные функции, такие как компоненты GUI для большинства серверов, при использовании Server Core возможно достичь уменьшения количества патчей на 40-60 %.

image

В таблице сверху показано, как много месяцев инсталляция Windows Server Core может проработать без перезагрузки, начиная с даты выпуска соответствующего продукта. Применимые патчи (applicable patches) - это обновления безопасности, которые предлагаются и рекомендуются Windows Update. Эти патчи предлагаются только потому, что затрагиваемые ими файлы установлены в системе. Необходимые патчи (necessary patches) - это подмножество применимых патчей, которое обозначено в бюллетенях безопасности (например, MS08-052), объясняющих, какие из применимых патчей действительно необходимо устанавливать для определенного сценария использования.

Например, в случае MS08-052 патч предназначен для GDI+, устраняя уязвимость, которая могла привести к исполнению удаленного вредоносного кода. Однако эта уязвимость может быть использована только в определенных ситуациях, а именно когда установлены определенные программы, отличные от самого Windows Server. Администратор может спокойно пропустить это отдельно взятое обновление, если решит, что такая уязвимость не может быть использована, избежав тем самым перезагрузки. Устанавливая только необходимые патчи, можно существенно сократить число перезагрузок.

Можно еще больше сократить количество перезагрузок, выбрав установку только критичных обновлений. Начиная с RTM-версии Windows Server 2008, установка Server Core может провести 26 месяцев без перезагрузки - около одной перезагрузки каждые два месяца - что на 67 % меньше по сравнению с инсталляцией Server с GUI.

Заключение

Мы создавали Windows Server "8", чтобы обеспечить превосходную гибкость и оптимизацию использования ресурсов для всех вычислительных центов и облачных сред. Режим развертывания Server Core обеспечивает большую продолжительность непрерывной работы, уменьшенную потребность в обслуживании, оптимизированные требования к дисковому пространству и оперативной памяти и предлагает более быстрое и эффективное развертывание, чем когда-либо до этого. Мы хотели бы призвать ИТ-специалистов и клиентов использовать в своих центрах обработки данных и при развертывании частного облака Server Core и минимальный интерфейс сервера, чтобы обеспечить самое лучшее решение для следующего поколения приложений.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=29111