More Windows Azure E2E Scripts!

In case you’re not already aware, I’ve written additional scripts for Windows Azure deployment of AlwaysOn Availability Groups for you to play with. Windows Azure provides an ever-expanding set of PowerShell cmdlets, which make automated deployments and administration of SQL Server on IaaS a reality. These scripts are there as proofs of concept to you…


Availability Group Listener in Hybrid IT: End-to-End PowerShell Script Published

Hello, Please check out the script at This script creates a listener for an availability group with replicas both on-premise and in Windows Azure. For information on how to configure the hybrid availability group listener without the script, see As always, feedback is welcome.


Availability Group Listener in Windows Azure Now Supported! (And Scripts for Cloud-Only Configuration)

If you haven’t noticed, AlwaysOn Availability Groups in Windows Azure now supports availability group (AG) listeners. Configuring the AG listener in Windows Azure is a multi-step process that includes: Creating a load-balanced endpoint for the Windows Azure VMs that host AG replicas. Ensuring that hotfix KB2854082 is installed on all cluster nodes (including any node…


How To: Migrate to AlwaysOn from Prior Deployments Combining Database Mirroring and Log Shipping – Part 2

Writer: Cephas Lin (Microsoft) Contributors: Oleg Bulanyy (Microsoft), Jimmy May (Microsoft) This blog is the continuation of a blog series that shows you how to perform the following end-to-end HADR migration scenario of SQL Server inside a test environment: From a SQL Server 2008 R2 solution: Database mirroring for high availability and log shipping for…


Monitoring AlwaysOn Health with PowerShell - Part 4 : Integration with SQL Server Agent

Part 4 – Scheduling and Notification with SQL Agent In Part 3, we introduced the problem of automatically monitoring our availability group.  We made some progress, developing a simple script that evaluates the health of an AG on a given server instance, and throws an error when the AG is a state warranting investigation.  We now…


Monitoring AlwaysOn Health with PowerShell - Part 3 : A Simple Monitoring Application

Part 3 – A Simple Monitoring Application for AlwaysOn In Part 1 and Part 2 of this series, we learned quite a bit about how the AlwaysOn health cmdlets operate.  But why use these cmdlets when you can just use the dashboard?  The answer is automation: I can use these cmdlets build an application that that monitors my…


Monitoring AlwaysOn Health with PowerShell - Part 1: Basic Cmdlet Overview

Introduction The AlwaysOn Dashboard is a very useful tool for determining the overall health of your AlwaysOn Availability Groups (AG).  However, the purpose of this tool is not 24×7 monitoring.  If your application encounters a critical error in the middle of the night, the Dashboard won’t wake you up. To facilitate this alerting scenario, we’ve…


Monitoring AlwaysOn Health with PowerShell - Part 2: Advanced Cmdlet Usage

Part 2 – Advanced Usage of AlwaysOn Health Cmdlets In this part, I’ll cover some advanced features of the AlwaysOn health cmdlets.  Please see Part 1 for a basic overview of these cmdlets. We’ll look at how we can drill down into unhealthy objects to discover individual policy failures, and how to include custom policies…


Configuring AlwaysOn with SQL Server PowerShell

In this post, I’ll give examples of PowerShell scripts for configuring your SQL server instances for AlwaysOn.  PowerShell is a a great tool for automating management tasks across multiple servers, which is useful for an inherently multiserver environment like AlwaysOn.  Moreover, if your deployment includes machines running Server Core, PowerShell gives you a way to…