Как стать автором
Обновить

Комментарии 72

НЛО прилетело и опубликовало эту надпись здесь
Когда машина одна — действительно странно. Но если это хотя бы два десятка виртуалок, то экономия будет уже на лицо. В любом случаи статья писалась не с целью обоснования «острой» необходимости внедрения именно Core-версий, а с целью показать саму систему и пару рецептов ее приготовления.
С двумя десятками виртуалок обычно используют какой-то управляющий софт (VMM, SCCM), так что возиться с недоконсолью тоже не приходится.
Не очень себе представляю при чем тут VMM и SCCM. Это вообще продукты для другого. Особенно VMM.
VMM может хранить шаблоны серверов с уже установленными модулями, SCCM настройки и скрипты для окончтаельного допиливания, в сумме дает так называемый ZTI (Zero-touch installation) — то есть в SCVMM получаем что-то вроде одной кнопки «Хочу новый DNS-сервер, введенный в домен, в нужный OU и с уже сгенерированным по правилу именем» — жмём и ждём.
Это-то так. Только это имеет смысл если нужно 20 DNS (ну или каких-нибудь иных) типовых серверов, что нужно далеко не всем. Если нужно десять пар разных серверов, то использование столь навороченного механизма не имеет смысла.

С VMM-ом и SCCM мне тесно общаться не приходилось, не очень представляю как реализовать ZTI, но подозреваю, что как минимум одну машину (образец) нужно сделать для этого, да и автоматизационные скрипты по сути будут делать те-же действия, что и руками надо сделать на локальной машине (поправьте если это не так и в SCCM можно просто в визарде ткнуть кнопку «сделать контроллер домена»).

Чтобы развернуть SCCM-мом 20 Server Core-ов нужно все равно знать что и как делать руками.
Вы абсолютно правы, когда серверов немного — действия по автоматизации это тоже немаленькая работа и ради десятка серверов смысла особо нет. С другой стороны — нужно вам например штук 15 серверов с IIS с определенным набором компонентов. Вы подготавливаете один сервер, включаете RDP, ставите нужный набор компонентов и делаете все настройки которые будут общими — делаете шаблон из этого сервера. Потом вы уже 15 раз экономите на этих действиях. Остается только по сути задать нужные имена, IP-адреса и что там еще индивидуальное. А если бы серверов было 150 — вы бы уже начали задумываться и об автоматизации этого тоже.
Кстати можно оценить что именно и насколько глубоко реально автоматизировать — на примере Hydration Kit. У MS их еще несколько есть, для развертывания test-lab новых продуктов некоторых.
>Вы подготавливаете один сервер, включаете RDP, ставите нужный набор компонентов и делаете все настройки которые будут общими — делаете шаблон из этого сервера. Потом вы уже 15 раз экономите на этих действиях.

А мы так и делаем, только без VMM, масштабы не те. Просто сделано три-четыре референсных VHD образа (все апдейты, сервис паки, и нужные компоненты). Копируем файлик, монтируем, запускаем. Ну а потом, дали имя, ввели в домен и допиливаем. При наших масштабах хватает за глаза.
Основное преимущество от использования Core режима установки — это не меньшее потребление ресурсов сервера, а меньший footprint системы, как следствие — меньше сервисов -> меньше поверхность атаки -> меньше обновлений -> меньше простой системы.

Однако, широкой практики применения Server Core в организациях, кроме, пожалуй, Hyper-V Server я не встречал. Обычно — это один-два сервера, выполняющих второстепенные задачи, «на поиграться».
Ну да, контроллер домена — это так, поиграться.
И часто у вас в организации контроллеры домена на Server Core разворачивают?
Часто. Вот на следующей неделе приедет HP DL120G7, если WinTarget встанет на него в Server Core, то он будет выполнять роль DC (в т.ч. владелец FSMO PDC), DNS, DHCP и WinTarget.
Ибо футпринт реально меньше, меньше обновлений, реже перезагрузки.
На предыдущем месте поставил ради стёба x64 Core на машину с Atom'ом. Увидев что работает нормально — поднял до КД/DNS/DHCP(v4,v6), докинул хард чтобы сливать бэкапы с рядом стоящих серверов. Скорее всего работает до сих пор.
У некоторых клиентов так же поднимал именно в Core, особенно под Hyper-V.

Собственно если машина идёт под выделенный КД — ей Core Install прямо показан, опять таки из-за меньшего футпринта и более редких перезагрузок.

ЗЫ: на предыдущем месте вторым контроллером был DELL PowerEdge 1550, на двух P3-1266 c 1.5Gb памяти, под WinSvr2008R1 x32. Если бы не гемморой с установкой (сидюк, причём именно сидюк и дохлый, старые сетевые, на которые уже драйверов в штатном дистрибутиве нет, отсутствие загрузки с USB), то я и его бы на Core переставил,.
По поводу WinTarget сказать ничего не могу, но StarWind успешно стоит и работает.
Прокси сервер это не та задача, чтобы использовать Windows Server в домашних условиях. Вам бы подошла любая мелкая сборка линукса или bsd. Даже на 32 мб оперативы было бы все в порядке. Консоль правда там везде, но по манам настроить не проблема. Windows Server нужен в большенстве случаев только для специфичных Microsoft-решений.
Гм, а что там если не GUI? Explorer не грузится, а вместо него cmd? Какая-то не тру консоль. Да и по мне, команды PS какие-то слишком гротескные — для простых действий нередко необходимо писать трехстрочники. Таб, конечно, помогает, но все как-то неудобно, ИМХО.
НЛО прилетело и опубликовало эту надпись здесь
А параметры? "/replicaornewdomain:replica" — это коротко? Есть ли возможность короткой записи параметров, как в unix-системах?
Да и отсутствие графики — всего лишь рекламный ход, слишком уж глубоко она интегрирована с самой ОС и выпилить ее всю, думаю, на данный момент просто не реально.
НЛО прилетело и опубликовало эту надпись здесь
/replicaornewdomain:replica к PowerShell отношения не имеет, это параметр внешней утилиты которая просто вызывается из PS.

Для всех (абсолютно) командлетов PowerShell, все параметры можно сокращать (лишь бы не было разночтений, например если у командлета есть параметры -process и -path, то сокращать до -p не получится, а вот -pr и -pa пожалуйста), а зачастую вообще опускать их имена.
Трёх-строчники писать не приходится. Это может пригодиться только если вы еще изучаете язык и не очень хорошо в нём ориентируетесь. Например добавить что-то в переменную path можно в одну строку вместо 4 которые написал автор:
$env:Path += ";c:\toolbox"
Так этому и надо изначально учить
Спасибо за статью!

И за оговорку про невозможность управления через mmc для русской версии — когда сам столкнулся, «много думал», кто дурак.
Напишите, пожалуйста, какие еще ограничения есть у этого продукта относительно более полных версий.
Честно говоря ответь на этот вопрос точно я не могу. На глаза попадался документ от MS, в котором есть перечень поддерживаемых ролей, ссылку найти не смог, можно нагуглить.
Из того, что знаю сам точно, могу сказать, что по основному функционалу ограничений практически нет, ну кроме очевидных, как то терминальный сервер на нем нельзя развернуть. Все основные роли от полной версии Server Core 2008R2 SP1 так или иначе поддерживает. На сколько мне известно, на него нельзя поставить MS SQL-сервер и Lync (хотя по поводу последнего могу ошибаться). Exchange и TMG точно поддерживаются.
Вот, погуглил за вас.
technet.microsoft.com/en-us/library/dd184075.aspx

Но пока нигде не находил собственно сравнений в числах — сколько же получается экономия при использовании Server Core.
К тому, что вы нагуглили могу добавить, что Core 2008 R2 появилась поддержка роли центра сертификации.

Что до экономии ресурсов. То в данный момент сервер с WSUS-ом отожрал 402 Мб памяти. При этом сейчас он находится под нагрузкой, то есть раздает обновления. При этом оснастка не тупит совершенно.
ужас какой. Пообрезали чего попало не ясно зачем. Для меня вот даже отсутствие terminal services не очевидно. Но выпилить telnet server — это явно из чистого вредительства. Не то, что он кому-то нужен, но то, что нет никаких проблем ему работать под core — это факт.
Как вы себе прдеставляете terminal services на с? ервере у которого из интерфейса — один cmd? Не говоря уж о том, что сам RDP хост тем есть, для администрирования.
а в чем проблема-то? Зачем на сервере еще что-то (да и это не ясно зачем)? Процессоры и память есть. Построить из них ферму и пускай опубликованные приложения хостят. Для этого окошки на сервере рисовать не надо.

Вот у меня есть пачка линуксовых серверов. Никаких иксов на них нет. Но при этом это не мешает мне запускать там приложения удаленно. Как консольные, так и графические.

Проблема, как минимум, в том, что нет 90% обслуживающих графический режим компонентов, соответственно софт (сложнее notepad) просто физически не сможет запуститься.
А если эти компоненты поставить, то теряется весь смысл Server Core (снижение футпринта, обслуживаемых компонентов). Тогда уж можно поставить Full Install и себе поменять shell на cmd.exe.
часть компонентов, наверное, таки понадобится. Ну так почему-бы не дать пользователю решать какие компоненты нужны, а какие нет. Нужно — доставил нужный компонент. Да, увеличился футпринт. Но только на этот один компонент, а не на всё чохом.

Во-вторых, не очень понятно зачем нужны компоненты, обслуживающие графический режим, на сервере. Ведь там этого самого режима нет. Компоненты должны быть на клиенте. Которому они (компоненты) по-любому нужны для отрисовки.

И это не учитывая то, что для фермы терминалов вроде как нет необходимости держать все компоненты на всех машинах. Одна могла-бы быть полной виндой, а остальные — core. Но я не в курсе как это работает в винде, потому верю, что в настоящем времени оно так работать не может по массе причин.

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

ЕМНИП, окно публикуемого приложения на Win2008R2 с соответствующей ролью строится как раз на стороне сервера в специальном сеансе. Отличие только в том, что на клиентскую машину передаётся не весь рабочий стол, а только часть.
>>Но я не в курсе как это работает в винде, потому верю, что в настоящем времени оно так работать не может по массе причин.
Угу.
Если на пальцах, то RDP — это почти тоже самое что VNC, в отличие от X11, в котором сервер и клиент могут находиться где угодно. Так что не получится.

>>Ну так почему-бы не дать пользователю решать какие компоненты нужны, а какие нет
Для RDS это всё равно невозможно, по выше названным причинам.
В Windows Server 8, кстати говоря, будет (точнее уже есть) возможность менять Core/Minimal GUI/Full GUI почти на ходу.
не может быть, что RDP передает картинку. Как-то он настолько шустрее работает, что я просто не верю.

Вот в Win8 можно будет компоненты доставлять по вкусу. Глядишь и RDP сделают по типу X-windows. Совсем кошерная платформа получится. И по идеологии кошерная и без школьных поделок от линукса. Прямо счастье. Жду.
Если есть возможность, то RDP передаёт только графические примитивы и команды на отрисовку, а не их результат, и только в крайнем случае сваливается на передачу растрового (пусть и компрессованного) изображения. Поэтому, в большинстве случаев, RDP работает быстрее чем любой VNC.

>>Совсем кошерная платформа получится
Какой-то вы неправильный линуксоид =)
>>Но выпилить telnet server
Проблема не в «работать под server core», проблема в plain-text пароле. Собственно говоря — слава богу, есть и другие, более безопасные методы.
а в полной версии что стало с plain-text паролем? Почему там сервер телнета оставили?
Compatibility, что же ещё.
Вы нагуглили список для WinSvr2008, для R2 список пошире.
SQL Server 2008 R2 можно поставить
Какой кошмарный синтаксис у CLI
В режиме Windows Core работает бесплатный Hyper-V. Так, что шанс увидеть оболочкой cmd вместо explorer достаточно высок.

Для начинающих для облегчения себе жизни можно посоветовать ставить сразу после установки windows программу CoreConfig.
ИМХО Windows заточен на графический интерфейс, а CLI у него ужасен до безобразия. Команды такие огромные тут описаны что запомнить их нереально. А лазить смотреть так еще и печатать жуть. Вообще мое мнение, Windows не создан для серверов, все эти ограничения, отсутствие полноценных репозиториев, да и прожорливость. Как выше писали, консольных интерфейс работает хуже чем gui, это же уму не постижимо. У нас крутится vdsка. Изначально было 64 мб оперативы и проц вроде около 300 мгц — установлен openbsd. Так вот тянуло apache где то около 5 сайтов. Нагрузка правда была не большая, но когда сидело человек 10-20 + ресайзились фотки через php штук этак 50 по ssh без проблем мониторил сервак. + для удобной работы монтирую по ssh нужную папку на сервере к локальной машине. Практически все на стандартных настройках. Установка софта проста до безобразия. Модули под апач даже автоматически настраиваются и вписывают себя в конфиги. Дал команду перезагрузил апач все работает.
Кстати если не прав, дайте пожалуйста список того, что можно сделать только на Windows Server.
«дайте пожалуйста список того, что можно сделать только на Windows Server. „
Развернуть .net-приложение?
Тут еще вопрос, что дороже обойдется, использование .net приложений с windows server или использовать бесплатные *nix подобные системы да хотя бы с mono например. Понимаю если софт написан и переписывать дороже чем экономить на OS и ресурсах (под *nix можно и железо взять не такое мощное)
Софт не просто написан, его миллионы написано. Включая заказной.
А можете ответить на встречный вопрос, чего нельзя сделать на Windows Server?
Давайте не разводить холивар.
Если инструмент кажется неудобным, то тут одно из двух — либо вы не умеете им пользоваться, либо пытаетесь применить его не по назначению.
Хорошо. Я собственно и ищу назначение.
Ага, а еще третье — инструмент на самом деле и есть кривая поделка.
Вот именно, учитывая сколько стоит Windows Server всего на одну лицензию. То использовать софт на куче серверов с windows server только потому, что его написали на .net как то расточительно. Думаю переписать софт, или портировать/сделать совместимым будет дешевле и по деньгам и по нервам потраченным с таким CLI.
Что-то я не понимаю. Сервер без GUI и последний скрин как-то не стыкуются вообще
Простите не доглядел что это удаленная оснастка
Последний скрин сделан с другой машины, дабы показать возможность удаленного управления через Диспетчер сервера.
«Вместо него можно сделать две виртуалки с Server Core, на одной AD, на второй WSUS. При этом обе эти виртуалки будут жить с полугигом памяти и прекрасно себя чувствовать.»

Вот в этом месте надо четко понимать сумму в российских рублях экономии на покупке дополнительной памяти (память в последнее время стоит «копейки») и затраты на покупку лицензий для запуска двух ДОПОЛНИТЕЛЬНЫХ операционных систем (ок, одной в случае если гипервизор будет на базе бесплатного hyper-v server).
И еще момент — у меня есть серьезные опасения что роль WSUS недоступна для Core-servera, но не утверждаю что это 100% так.
Я специально оговорился на тему лицензирования. Это в самом конце. У нас, например, пул лицензий еще есть, а оборудование докупать руководство жмется.

Что же до WSUS, то он точно есть и точно работает. И выше даже описано как его поставить. Он успешно раздает обновления у нас уже довольно давно.
Просто уточняю. И полностью поддерживаю стремление к схеме «одна ос»=«один сервис», но цена лицензирования такого разделения обычно убивает все остальные доводы за.
Кстати к версии hyper-v есть сторонний софт c реализацией gui, например на случай когда нужно управлять core-serverом с машины windows-xp, а rsat туда уже физически не ставится. Наверняка он и на core будет работать, но я пользуюсь только функционалом диспетчера служб виртуализации.
Если на сервер приобрести лицензии Windows Server Datacenter, то можно запускать неограниченное количество виртуальных машин. Лицензии на ОС далеко не самая высокая статья расходов ИТ в большинстве компаний. Гораздо дороже могут обойтись лицензии на специфическое прикладное ПО, СУБД, оборудование и прочее.
SAP
Самое забавное — что много лет GUI подавался как преимущество перед *nix-системами. Но, как обычно, время все ставит на свои места.

P.S. Синтаксис же действительно кошмарный, требуется некоторое время для акклиматизации. :-)
Так Windows Core и была выпущена для того чтобы показать, что GUI имеет преимущество. ;-)

Но что самое интересное, Exchange 2010 по нормальному может быть настроен только из CLI.
И не только Exchange. В последнем поколении продуктов вообще без PowerShell-а жить тяжело. Например в том же Lync-е есть целый пласт настроек которые можно сделать только через консоль.
Ага, и получается какая-то помесь из настроек GUI и консольных. Мне кажется, это неправильный подход — либо консоль, либо GUI, ну или и то и другое, а не так чтобы в GUI можно настроить одно, а чтобы настроить другое — пожалуйте в консоль.
Это нормальный подход.

И у GUI, и у CLI есть свои преимущества. Для выполнения базовых административных задач, вроде заведения учетки или начальной настройки отлично подойдет GUI с мастерами, окошечками, вкладками, которые не требовательны к уровню знаний администратора и проще в освоении. Для специфических административных задач, траблшутинга и автоматизации некоторых процессов подойдет CLI. Если же стараться запихнуть в GUI весь функционал, то он станет очень громоздким и неудобным для использования.
Коллеги, основное назначение Server Core, это совсем не экономия вычислительных ресурсов. И даже совсем не повышение безопасности. Главная задача этой редакции — повышение uptime сервера путем уменьшения количества перезагрузок вызванных установкой обновлений. В среднем, количество перезагрузок Server Core на 70% меньше, чем редакций с GUI.
По своему опыту использования виртуализации скажу, что использование редакции Server Core — очень удачный вариант для использования в филиалах компаний. Например, когда смысла/возможности использовать дисковую полку ещё нет, а виртуализация и разнесение ролей идёт активным ходом рукой об руку с переходом на 2008 R2 — в основном упираешься не в процессор/память, а всё-таки в дисковую подсистему, точнее её ограниченность. И тут Server Core поможет повысить плотность виртуалок достаточно значительно.
сервер «без гуя» который загружает пош в окошке это просто шедеврально
По вашему все что больше чем CGA 80Х25 символов — это уже GUI?
при чем тут разрешение?
просто это действительно смотрится смешно и бредово

в 21 веке нам подсовывают убогий cmd.exe двадцатилетней давности, занимающий 1/5 экрана и не имеющий никакого права называться современным эмулятором терминала

настраивать что-либо через хрень не имеющую даже вменяемого автодополнения это жесть с которой я никогда-никогда работать не буду

что микрософту стоило написать полноценный, удобный и функциональный терминал?

я прекрасно понимаю, что для поша есть альтернативные оболочки и все такое, но то что представлено «из коробки» тупо неработоспособно и является банальным костылем, созданный по принципу «нате и жрите что дают»

про ужасный и громоздкий синтаксис майкрософтовских консольных утилит я даже упоминать не буду, с ним все было понятно и раньше
Установить Gentoo Server Core просто. Нужно выполнить всего три команды. Вот первая:
DISM /Online /Enable-Feature /FeatureName:NetFx2-ServerCore /FeatureName:IIS-WebServer /FeatureName:IIS-WebServerRole /FeatureName:IIS-ASPNET /FeatureName:IIS-WindowsAuthentication /FeatureName:IIS-HttpCompressionDynamic /FeatureName:IIS-IIS6ManagementCompatibility /FeatureName:IIS-ISAPIFilter /FeatureName:IIS-ISAPIExtensions /FeatureName:IIS-NetFxExtensibility /FeatureName:IIS-Metabase
Странно, сейчас любое сетевое устройство стремится дать админу гуй (вебморду через браузер), и при этом ресурсов хватает и на управление в консоли (telnet или com-терминал), и на всякие специальные протоколы управления и диагностики. А тут либо CLI, либо полновесный виндовый гуй через RDP. Никак не могут web-based MMC запилить?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории