Jump to content

Windows Management Framework V5 Preview


Recommended Posts

Guest Jeffrey Snover Windows
Posted

Title: Windows Management Framework 5.0 Preview

One goal of management is to simplify creating and operating computing environments. In Windows Server 2012 R2 we introduced two new standards-based technologies to achieve that: Windows PowerShell Desired State Configuration and Certified for Windows Network Switches. Both of these generated a lot of excitement with our customers and partners. Today we are announcing the Preview of Windows Management Framework V5 which advances both of these areas and introduces Windows PowerShell OneGet to dramatically simplify finding and installing software on your machines. OneGet works with the community-based software repository called Chocolatey which has over 1,700 unique software packages. Step by step, we are delivering the technologies you need to simplify creating and operating your computing environment.

 

Cheers! Jeffrey

In this release we have made Windows PowerShell Desired State Configuration (DSC) more stable and reliable by addressing bug fixes, performance improvements and general optimizations. These improvements in combination with our recent release of wave 3 of the DSC resource kit give you what you need to effectively deploy and manage your features, applications and services on all of your Windows environments. As developers you should be writing DSC providers for your resources to enable customers to use DSC or choose any Configuration Management tool that supports the DSC platform. If you are considering purchasing a Configuration Management tool, make sure that tool supports DSC or you won’t be aligned with the Windows Server strategy.

In addition to the DSC refresh, WMF 5.0 Preview includes 2 new features OneGet and NetworkSwitch cmdlets. You can download the WMF 5.0 Preview HERE.

Windows PowerShell OneGet

 

OneGet is a new way to discover and install software packages from around the web. With OneGet, you can:

 

· Manage a list of software repositories in which packages can be searched, acquired, and installed

 

· Search and filter your repositories to find the packages you need

 

· Seamlessly install and uninstall packages from one or more repositories with a single PowerShell command

 

 

This first version of OneGet installs and searches software from Chocolatey repositories. Support of additional repositories will come in subsequent versions. Here are some sample commands to get you started:

Import module:

PS> Import-Module -Name OneGet

 

Enumerate the list of OneGet commands available:

PS> Get-Command -Module OneGet

 

CommandType Name ModuleName

----------- ---- ----------

Cmdlet Add-PackageSource OneGet

Cmdlet Find-Package OneGet

Cmdlet Get-Package OneGet

Cmdlet Get-PackageSource OneGet

Cmdlet Install-Package OneGet

Cmdlet Remove-PackageSource OneGet

Cmdlet Uninstall-Package OneGet

Network Switches

 

In Windows Server 2012 R2, Microsoft worked with the industry and DMTF (Distributed Management Task Force) to standardize the schema and protocol for managing network switches. We published the Windows Server Logo certification program to ensure interoperability. This effort was part of the Data Center Abstraction (DAL) vision which was led by Microsoft working closely with industry leaders in this space such as: Arista, Cisco and Huawei. Using Windows Server 2012 R2, network switches that pass the Certified for Windows program can now be managed natively by System Center Virtual Machine Manager 2012 R2 (SCVMM) without the need to write custom plugins. You can learn more here

In July of 2013 we published the blog DAL in action: Managing network switches using PowerShell and CIM which described how to manage the network switch via PowerShell by using the CIM cmdlets.

In this release, we have added a set of L2 Layer NetworkSwitch management PowerShell cmdlets to manage Certified for Windows network switches.

The following are some examples for how you can use the NetworkSwitch cmdlets:

Import Module:

PS>import-module .\NetworkSwitch.psd1

 

Enumerate the list of Network Switch Cmdlets

PS> Get-Command *-NetworkSwitch*

CommandType Name ModuleName

----------- ---- ----------

Function Disable-NetworkSwitchEthernetPort NetworkSwitch

Function Disable-NetworkSwitchFeature NetworkSwitch

Function Disable-NetworkSwitchVlan NetworkSwitch

Function Enable-NetworkSwitchEthernetPort NetworkSwitch

Function Enable-NetworkSwitchFeature NetworkSwitch

Function Enable-NetworkSwitchVlan NetworkSwitch

Function Get-NetworkSwitchEthernetPort NetworkSwitch

Function Get-NetworkSwitchFeature NetworkSwitch

Function Get-NetworkSwitchGlobalData NetworkSwitch

Function Get-NetworkSwitchVlan NetworkSwitch

Function New-NetworkSwitchVlan NetworkSwitch

Function Remove-NetworkSwitchEthernetPortIPAdd.. NetworkSwitch

Function Remove-NetworkSwitchVlan NetworkSwitch

Function Restore-NetworkSwitchConfiguration NetworkSwitch

Function Save-NetworkSwitchConfiguration NetworkSwitch

Function Set-NetworkSwitchEthernetPortIPAddress NetworkSwitch

Function Set-NetworkSwitchPortMode NetworkSwitch

Function Set-NetworkSwitchPortProperty NetworkSwitch

Function Set-NetworkSwitchVlanProperty NetworkSwitch

 

To manage the switch you will need to create a CIM session connection. You can do this as show in the following example, and store the session context in the $s variable:

PS> $ip = "10.0.0.2"

PS> $sessionOption = New-CimSessionOption -UseSsl -SkipCACheck -SkipCNCheck -SkipRevocationCheck

PS> $s = New-CimSession -CN $ip -port 5986 -Auth Basic -Credential admin -SessionOption $sessionOption

 

Enumerate NetworkSwitch features:

PS> Get-NetworkSwitchFeature -CimSession $s

ElementName InstanceID FeatureName IsEnabled PSComputerName

----------- ---------- ----------- --------- --------------

SSH Arista:Feature:2 2 True 10.0.0.2

Tacacs Arista:Feature:3 3 True 10.0.0.2

BGP Arista:Feature:4 4 False 10.0.0.2

VLAN Arista:Feature:5 5 True 10.0.0.2

LACP Arista:Feature:6 6 True 10.0.0.2

DHCP Arista:Feature:7 7 False 10.0.0.2

LLDP Arista:Feature:8 8 True 10.0.0.2

 

Enumerate all ports:

PS> Get-NetworkSwitchEthernetPort -CimSession $s | Format-Table InstanceID, ElementName, MaxSpeed, PortNumber, EnabledState

InstanceID ElementName MaxSpeed PortNumber EnabledState

---------- ----------- -------- ---------- ------------

Arista:Ether... Ethernet1 1410065408 1 2

Arista:Ether... Ethernet2 1410065408 2 2

Arista:Ether... Ethernet3 1410065408 3 2

Arista:Ether... Management1 1410065408 97 2

 

Disable port number 3:

PS> Disable-NetworkSwitchEthernetPort -PortNumber 3 -CimSession $s

ReturnValue Job PSComputerName

----------- --- --------------

0 10.0.0.2

 

Get the state of port number 3:

PS>get-NetworkSwitchEthernetPort -PortNumber 3 -CimSession $s | FT InstanceID, ElementName, MaxSpeed, PortNumber, EnabledState

 

 

InstanceID ElementName MaxSpeed PortNumber EnabledState

---------- ----------- -------- ---------- ------------

Arista:Ether... Ethernet3 1410065408 3 3

 

Cloud OS Infrastructure Team

04b0b9e21ded08740c6d680803ed626f._.gif

 

Continue reading...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...