Windows Azure PowerShell Cmdlets 2.0 have been released!

Even while we are here at BUILD we are working hard to make deploying and managing your Windows Azure applications simpler. We have made some significant improvements to the Windows Azure Platform PowerShell Cmdlets and we are proud to announce we are releasing them today on CodePlex:

In this release we focused on the following scenarios:

  • Automation of Deployment Scenarios
  • Windows Azure Diagnostics Management
  • Consistency and Simpler Deployment

As part of making the cmdlets more consistent and easier to deploy we have renamed a few cmdlets and enhanced others with the intent of following PowerShell cmdlet design guidelines much closer. From a deployment perspective we have merged the Access Control Service PowerShell Cmdlets with the existing Windows Azure PowerShell Cmdlets to have both in a single installation.

In addition to those changes we have added quite a few new and powerful cmdlets in this release:

Hosted services, affinity groups and role instance management.
New-HostedService Creation of a new hosted service.
Remove-HostedService Removal of an existing hosted service.
Set-HostedService Update an existing hosted service properties.
Reset-RoleInstance Allows for the reset or reimage of role instances.
Get-RoleInstanceStatus Returns the status of role instances.
Get-RoleInstanceCount Returns the number of instances for a role.
New-AffinityGroup Creation of a new affinity group.
Remove-AffinityGroup Removal of an existing affinity group.
Update-AffinityGroup Updates an existing affinity group.
Automation of Sql Azure Deployments
New-SQLAzureServer Creation of a new Sql Azure server.
Remove-SqlAzureServer Removes an existing Sql Azure server.
Get-SqlAzureServer Returns an existing Sql Azure Server.
New-SqlAzureFirewallRule Adds a new Sql Azure firewall rule to a server.
Get-SqlAzureFirewallRules Returns the firewall rules for the specified Sql Azure server.
Remove-SqlAzureFirewallRule Removes an existing Sql Azure fireall rule.
Set-SqlAzurePassword Set/Reset the password for a Sql Azure server.
Windows Azure Diagnostics Management
Get-PerfmonLog Downloads the specified performance counters for a deployment and optionally converts them to perfmon format (.blg)
Clear-PerfmonLog Clears the performance counters for a deployment (or all deployments) from Windows Azure Storage.
Get-WindowsAzureLog Downloads the specified Windows Azure logs for a deployment.
Clear-WindowsAzureLog Clears the Windows Azure logs for a deployment (or all deployments) from Windows Azure Storage.
Get-WAEventLog Downloads the specified Windows Azure event logs for a deployment.
Clear-WAEventLog Clears the Windows Azure event logs for a deployment (or all deployments) from Windows Azure Storage.
Get-InfrastructureLog Downloads the specified diagnostic infrastructure logs for a deployment.
Clear-InfrastructureLog Clears the diagnostic infrastructure logs for a deployment (or all deployments) from Windows Azure Storage.
Windows Azure Storage
New-StorageAccount Creates a new storage account.
Remove-StorageAccount Removes an existing storage account.
Get-StorageAccount Returns all storage accounts under the specified subscription.
Get-Container Returns the blob containers for the specified account.
Clear-Container Clears the specified blob container(s) of its contents.
Save-Container Saves the contents of the specified blob container(s) to the local file system.
Get-StorageServicePropertiesForAnalytics Returns the current properties for storage analytics for the specified account.
Set-StorageServicePropertiesForAnalytics Sets the service analytics settings for a storage account.
Get-StorageAnalyticsLogs Saves to the file system storage analytic logs for the specified storage account.
Get-StorageAnalyticsMetrics Saves to the file system storage analytics metrics for the specified storage account.

Breaking Changes From 1.0 to 2.0

Previous Releases Version 2.0
Import-Module AcsManagementToolsSnapIn Import-Module WAPPSCmdlets
Add-PsSnapin AzureManagementToolsSnapIn Add-PsSnapin WAPPSCmdlets or Import-Module WAPPSCmdlets


Previous Releases Version 2.0
Set-WindowsEventLog Set-WAEventLog
Get-StorageProperties Get-StorageAccountProperties
Get-StorageServices Get-StorageAccount
Previous Releases Version 2.0
StorageServiceName StorageAccountName (See New-Deployment, Set-Deployment / Update-Deployment)

Updated Namespaces in the Cmdlets Solution

The namespaces in the cmdlets solution have undergone substantial change. While this should not typically affect any existing scripts, it should be taken into account in the rare event that classes in the cmdlets project are being instantiated directly.

Click Here To download the Windows Azure PowerShell Cmdlets

Make sure and take a look at the Readme.docx in the install folder (C:\WindowsAzure\WAPPSCmdlets\docs).

Follow my other Windows Azure Blog as well.