PowerShell в Orchestrator – Запуск x64, v4 PowerShell скриптов

Думаю, для тех, кто уже использовал System Center Orchestrator, не является секретом то что очень часто в процедурах приходится использовать скрипты PowerShell (или код C#, смотря что ближе, но сейчас не об этом). Однако, возможности Orchestrator в плане исполнения скриптов PowerShell местами ограничены. Так, например, Orchestrator использует только x86 версию PowerShell, да еще и версии 2, даже если установлен на Windows Server 2012 R2 где доступен PowerShell v4.

Удостовериться в этом можно выполнив такой код, и выведя результаты:

image

image

Разумеется, это вызывает проблемы если хочется воспользоваться возможностями новых версий PowerShell или использовать модули которые есть только в x64 версии. К счастью, для этой проблемы доступно несколько обходных решений.

Самый простой метод, это запустить PowerShell.exe, и выполнить скрипт в нём. Я модифицировал вышеприведённый код для использования этой возможности:

image

image

Тут можно видеть что хоть и есть некоторые проблемы в форматировании вывода (лишние переносы строк), но зато теперь доступна версия 4.0.

Другое решение, позволяющее добиться такого результата (и при этом сохранив вывод в должном качестве) – это воспользоваться PowerShell Remoting. При этом вовсе необязательно подключаться к другому компьютеру, можно подключиться и к localhost. Но сам Remoting конечно должен быть включен (например, командлетом Enable-PSRemoting). Вот что получается:

image

image

Обратите внимание, что нужно обязательно указать параметр –ComputerName, иначе профита не будет.

А что делать если необходимо выполнить достаточно большой скрипт, и при этом вернуть еще несколько переменных? Тут можно воспользоваться, например, встроенным типом данных PowerShell – Hashtable. Hashtable представляет из себя простой набор ключей и соответствующих значений.

image

На сегодня всё. Дальше будет больше Smile

Опубликовано в Uncategorized. Метки: , , , . Комментарии к записи PowerShell в Orchestrator – Запуск x64, v4 PowerShell скриптов отключены

Teched 2012: Облака без бла-бла-бла v2012

Вот и пришло время очередного TechEd Russia — 2012. На этот раз я опять буду участвовать в докладе «Облака без бла-бла-бла», но теперь в названии уже есть «v2012» (код доклада — INF330). Помогать мне будет моя коллега из Microsoft Consulting Services — Елена Козылькова. Как и на предыдущем TechEd, доклад будет содержать минимум абстрактных и маркетинговых слайдов, зато в нём будет немало демонстраций и действительно интересного о том, почему SC Orchestrator является необходимым элементом «облаков» и других современных автоматизированных систем.

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

Разумеется, как и всегда, я буду очень рад услышать ваши вопросы. Задать их мне можно будет либо на сессии вопросов и ответов про System Center (INF 220RT), либо в любое другое время когда вы сможете меня поймать. Например я точно буду готов отвечать на ваши вопросы после своего доклада «Облака без бла-бла-бла«.

Опубликовано в Uncategorized. Комментарии к записи Teched 2012: Облака без бла-бла-бла v2012 отключены

Политики System Center Orchestrator с TechEd Russia 2011

На прошедшем TechEd Russia 2011, мы с Артуром Гаффановым в процессе нашего доклада «Интеграция продуктов System Center: облака без бла-бла-бла» показали много интересных демонстраций возможностей System Center Orchestrator.
В частности были следующие демки:

    Автоматическое добавление процессоров на виртуальные серверы по сигналу от System Center Operations Manager.

    Автоматическая очистка временных файлов на диске виртуального сервера если там заканчивается место, а если временных файлов было не много — увеличение виртуального диска и расширение раздела.
    Политика создающая Change Request в System Center Service Manager для тех компьютеров где требуется перезагрузка для установки обновлений и политика перезагружающая эти компьютеры после одобрения Change Request.
    Бонусная политика, уничтожающая виртуальные машины в ЦОД по команде из твиттера 😉

    Посмотреть запись доклада можно здесь.
    А если вы захотите что-то из этих политик применить у себя (разумеется адаптировав под свои задачи) или просто посмотреть на них более подробно, то можете загрузить файл экспорта отсюда. Обратите внимание, политики в формате Orchestrator RC, c Orchestrator Beta или Opalis они работать не будут. Зато скорее всего их можно будет импортировать в финальную релизную версию Orchestrator, когда она выйдет.

Опубликовано в Uncategorized. 3 комментария »

Новые русскоязычные ресурсы по PowerShell

Привет! К сожалению, в последнее время я несколько подзабросил свой блог. Впрочем скоро я снова начну писать, несколько интересных постов уже наготове Smile Но речь не об этом. Сообщество PowerShell не стоит на месте, и у нас появилось несколько новых русскоязычных ресурсов посвященных PowerShell. Знакомьтесь:

  • Скринкасты Юрия Лебедева о PowerShell – обучающее пособие для тех кому удобнее воспринимать информацию в формате видео.
  • Блог SHS (возможно знакомого многим по форумам), “еще один блог сисадмина” со всевозможными скриптами на PowerShell и другими интересными постами.
  • NETZ – Блог об администрировании Windows и не только, и конечно о PowerShell Smile
  • Заметки о PowerShell. Автор блога – Kazun, которого вы могли встретить в разделе скриптинга на русскоязычных форумах технет. В блоге приводятся интересные скрипты PowerShell, в том числе с активным применением C# и Win32API.
Опубликовано в Uncategorized. 4 комментария »

Invoke-SQL

Всем привет!

thumbnailCA2CQQEOСпасибо всем кто не отписался от моего блога несмотря на отсутствие новых постов в последнее время. У меня для вас есть кое что вкусное Smile

Я думаю большинству читателей моего блога, так или иначе приходится сталкиваться и взаимодействовать с серверами MSSQL, ведь большинстов современных серверных продуктов используют их для хранения данных. И я думаю что вам, так же как и мне, часто хотелось автоматизировать взаимодействие с этими хранилищами данных с помощью PowerShell. И Microsoft даже пошла нам на встречу выпустив SQL Server 2008 с интеграцией PowerShell. Это позволило нам автоматизировать настройку серверов SQL, но возможностей работы с данными содержащимися в базах к сожалению не прибавило. То же относится к недавно выпущенному MSSQL 2008 R2. А ведь казалось бы, нам нужно совсем немного – хотя бы простой командлет который смог бы принимать на вход SQL запрос, и возвращать данные не в текстовом представлении, как это делают osql.exe или isql.exe, а в виде объектов, со свойствами – столбцами. Аналогичный командлет на самом деле уже написала компания SoftwareFX, но он поставляется в составе их платного продукта PowerGadgets, который хоть и хорош сам по себе, но покупать его только для того чтобы удобно выполнять SQL запросы из PowerShell – просто нецелесообразно. Поэтому я решил написать собственный командлет (advanced function), с таким функционалом, являющийся на самом деле обёрткой над .NET классами для работы с SQL.

Читать далее…

Опубликовано в Uncategorized. Метки: , . 10 комментариев »