Recently we were able to approve Windows Management Framework for distribution using WSUS. If you haven’t heard, the WMF is a package of tools that enables administrators to do some great things. Included in the Windows Management framework is Powershell 2.0, BITS 4.0, and WinRM 2.0.
The downloads come as two packages for Server 2008 and Vista, where BITS 4.0 is a separate installation. The great news is however that Powershell 2.0 and WinRM 2.0 can be easily deployed. With the help of Group Policy, servers enterprise wide can be enabled for Powershell remoting. If you’re looking for the Windows 7 and Windows 2008 R2 links, don’t worry – though it isn’t apparent at first the “Windows Management Framework” simply combines features that are already available in Windows 7 and Windows Server 2008 R2 and makes them available to Windows Vista, Windows Server 2008, Windows Server 2003 and Windows XP. I am quite excited to be able to use a single Powershell platform to manage servers. Already we’ve been making great use of the new cmdlets in Powershell 2.0 such as Write-Eventlog to log our relevant information related to functions of servers, which we can then subscribe to or act upon using the built in tools in Vista, Server 2008, Windows 7, and Server 2008 R2.
Jeffrey Snover [MSFT] asks
I would love to know
1) What sort of events you write to the log.
2) Are you using remoting? If so, how is that working for you.
3) What things would you like to see in the next version?”
Currently, we write the script results to the event log. For example, the one script I’ve done so far queries hard disk space. In the event it is too low, it will stop a service, delete some files that grow without releasing space automatically, then write the result of that action as well as the filenames to the custom event log.
2. I used remoting for the first time today, just as a test. I enabled the listeners via Group Policy for our ServersOU as well as the firewall rule for WS-Management 5895. Haven’t had a chance to use this power a lot yet!
3. Standard operators. Although I’m getting used to “-eq” and “-lt”, years of “==” and “>” or “<” will be hard to break. It is especially hard to transition when I go to the C# level to make a command line app or something that I’m not yet familiar enough with Powershell syntax to accomplish. If there is a place to leave the suggestions please comment – I know my colleagues who use Powershell quite a bit more than me (800+ line identity management script at one point that has since been redone in C# as a service) will have more than a few suggestions.