Достаточно ли у чистой установки PowerShell для администрирования среды домена Windows и / или серверов SQL?
Если нет, то какие хорошие, бесплатные или платные дополнения сторонних производителей?
Чтобы ответить на этот вопрос, вам нужно увеличить масштаб и спросить, что значит администрировать Windows и серверы SQL. Например, сколько всего этого есть в вашем окружении:
Все эти вещи имеют свои собственные механизмы управления, и поскольку PowerShell все еще относительно новый, не все службы будут поддерживать PowerShell. На данный момент вам может потребоваться выйти из PowerShell, чтобы управлять такими вещами.
С другой стороны, нет другого языка, который лучше работал бы со всеми этими инструментами Windows.
Когда вы говорите «функциональность по администрированию серверов», это еще не язык Windows. В мире * nix вы можете оставаться внутри среды сценариев, но мир Windows еще не совсем там.
Ответ на ваш первый вопрос - твердое «ДА».
Для управления существующим доменом Windows «ванильная» оболочка PowerShell (без дополнительных оснасток) предоставляет готовую поддержку WMI, ADSI, COM и .NET.
Управление удаленными машинами осуществляется через WMI (или COM / .NET в зависимости от варианта использования).
Управляющий SQL Server может использовать библиотеки SMO (см. Расширения SQL Server PowerShell для идей). Вы можете получить доступ к данным через ADO.NET.
Чтобы ответить на вторую часть вашего вопроса, какие хорошие сторонние аддоны, действительно зависит от того, что вам нужно делать. Как сказал Джон Кук, расширения сообщества PowerShell - отличное общее дополнение. Есть много-много других. PowerShellCommunity.Org имеет множество отличных ссылок на сторонние продукты, а Codeplex имеет большое количество проектов PowerShell с открытым исходным кодом.
Другие продукты Microsoft добавляют поддержку PowerShell (например, SQL Server 2008, Exchange, Active Directory и т. Д.)
Версия 2 (которая приближается) содержит отличные возможности удаленного взаимодействия и фоновой работы.
Powershell не поставляется с инструментами администрирования SQL, хотя вы можете продолжать использовать такие вещи, как osql или isql. Я знаю, что есть надстройки Powershell, которые позволяют вам «монтировать» SQL-сервер и перемещаться по нему, как если бы это была файловая система (очень похоже на встроенный реестр).
Расширения сообщества PowerShell (PCSX) бесплатны и удобны.
Само по себе PowerShell недостаточно.
Но PowerShell не одинока, и вы тоже. Существуют расширения, такие как упомянутые выше John D. Cook, а также активное сообщество, делающееся тем, что они узнали об этом.
Его легко и постоянно расширять, и он дает вам доступ к объектам COM и .NET, необходимым для администрирования всего, что вам нравится.
Всегда есть Perl. :) Для администраторов баз данных SQL Server см. Книга Линчи Ши.
Я действительно нашел оснастку Quest ActiveRoles очень полезной для работы с Active Directory и управления ею. Вы можете получить оснастку Вот, но я думаю это сообщение в блоге отлично объясняет, что это такое, как его настроить и как использовать.
Как администратор баз данных в довольно большой среде, я считаю ДА. Мы создали всю среду мониторинга и обслуживания MS SQL Server, используя только PowerShell 1.0. Эта система автоматизирует ежедневный мониторинг емкости, а также автоматизацию обслуживания индексов резервного копирования и т. Д.