SQL Server
AlwaysOn for
Dummies
Mark Broadbent
Principal SQL Consultant
SQLCloud
SQLCLOUD.CO.UK
About
Mark Broadbent
“Possibly the hardest drinking DBA on the planet”
“30 billion times more intelligent than a live mattress”
Email: mark.broadbent@sqlcambs.org.uk
Twitter: retracement
Blog: http://tenbulls.co.uk
PASS UK Regional Mentor
Event Lead to the UK’s first ever SQLSaturday (Cambridge)
Event #2nd due on Friday 27th Sept 2013 (pre-con) 28th Sept (Community day)
http://www.sqlsaturday.com/228/eventhome.aspx
Cambridgeshire PASS Chapter UG Leader http://sqlcambs.org.uk
SQLSaturday Cambridge 2013
27th (pre-con) and 28th (free) September
http://www.sqlsaturday.com/228
Queen’s College, Cambridge CB3 9ET
What is the air-speed velocity of an unladen swallow?
Agenda
Windows Server
Failover Clustering
& Quorum
AlwaysOn
Availability Groups
AlwaysOn Failover
Clustered Instances
Introduction to
AlwaysOn
3
2
1
4
Introduction to AlwaysOn
AlwaysOn Technologies*1
*1 According to my interpretation!
AlwaysOn
Availability Groups
AlwaysOn Failover
Clustered Instances
Database
Mirroring
Scalable Shared
Database
Replication
“AlwAys On” isnae new!
Dr. Evil
Senior Microsoft
Windows Clustering
Program Manager
Don’t let the terms confuse you!
Cluster Node
Cluster Server
Node
Server
Cluster Group
Role
Service or Application
Virtual Server
Failover Cluster
Clustered Instance
SQL Server
Server
Resources (take your pick)
Quorum
Client Network
Private Network
Interconnect
Internal Network
Public Network...
LAN
SAN
Shared Storage
Disk
Cluster Storage
Active/Passive
Single Instance
Multi Instance
N+n Cluster
Majority
Votes
Availability Group
Replica
Readonly Replica
AlwaysOn Clustered Instances Provide…
• Abstraction of SQL instance
• High availability of Instance name
• Instance and related services failover as a unit
• Instance components such as jobs and logins not
a consideration
• Distributed Transaction Support
BUT
• Shared data with single point of failure per
instance.
• Complex to administrate
Availability Groups Provide…
• Abstraction at the databases level
• Failover as a single Unit
• High availability of “Instance” (listener) name
• All the benefits of DB Mirroring
….and less of the problems (FS is supported)
BUT
• Connected replicas are potentially single point of failure (i.e
user error – deletion of records)
• Complex (arguably less than FCI) to administrate
• Instance level components not failed over –contained dbs
partially come to the rescue
• No Distributed Transaction support for failover
AlwaysOn is…
Windows Server
Failover Clustering
The foundation of AlwaysOn
“The Magic” of Clustering
Clustered
“Application”
Cluster Nodes
The “magic” of clustering is the ability for the cluster to ensure only one set of services,
executables and resources are alive on one node for a clustered application at any one time.
A clustered application will be installed onto each node
“The Magic” of Clustering
Clustered
“Application”
Cluster Nodes
failover
“The Magic” of Clustering
Clustered
“Application”
Cluster Nodes
failover
Storage
Network
Internal
Network
A Basic Windows Cluster
Public
(or Client) Network
Shared
(or Asymmetric) Storage
Quorum
The Cluster
Group
Cluster Node
Cluster Service
Understanding Quorum
I’m
Alive!
Quorum Models
Node majority (no witness)
Node majority with witness (disk or file share)
No majority (disk witness only)
+Node weighting
Dynamic weighting -new to
Windows 2012
DEMO
Taking a look at our Cluster
AlwaysOn Failover
Clustered Instances
Instance Level High Availability
Installation
Create and install your clustered
instance on the first cluster node
For all other nodes install
executables on every other node
Clustered Instances
Node A Node B
SQL Server Instance A
Role (formerly known as
Cluster Group)
Network
Name
Clustered Instances
failoverNode A Node B
SQL Server Instance A
Role (formerly known as
Cluster Group)
Network
Name
AlwaysOn
Availability Groups
Database[s] Level High Availability
Availability Group consists of…
Listener
(Name and
IP)
Availability
Group
Resource
Availability
Group
Databases
SQL Instance Components Wndows Cluster Resources
Replica/s
Availability
Cluster Group
Mirroring
Endpoints
Availability
Group
Listener
(Name and
IP)
Do not flippin’ touch!
Transaction Logs
Secondary Replica
SQL Server Instance A
Transaction Logs
Primary Replica
SQL Server Instance A
Availability Groups
Transaction Logs
Redo
Sync/ Async
Secondary Replica
SQL Server Instance B
Listener
Transaction Logs
Secondary Replica
SQL Server Instance A
Availability Groups
Transaction Logs
Sync/ Async
Secondary Replica
SQL Server Instance B
Listener
Redo
Transaction Logs
Primary Replica
SQL Server Instance B
Availability Groups and Readable Secondaries
• 5 Replicas
• 2 Synchronous, others Asynchronous
• 1 Read-Write
• 4 either Read-only, Read-Intent or No Access
DEMO
Using AlwaysOn
ReadOnly Routing
• Set connection string property
ApplicationIntent=ReadOnly
• Must connect to a listener.
• Modify Secondary Replica Roles with read
only routing url.
• Modify Primary Replica Roles with read only
routing list.
In Summary…
• It is not all Butterflys and Unicorns so choose the
HA solution appropriate to your requirements.
• Failover Clustering is a very mature technology
but requires specialist skill and understanding. It
does not provide scalability.
• Availability Groups partially rely on Windows
Clustering but are slightly easier to setup and
manage. They also provide reporting query
scalability.
Tha mo bhàta-foluaimein loma-làn easgannan
for attending this session and
SQLSaturday #202 in Edinburgh
Thank you!

SQL Server AlwaysOn for Dummies SQLSaturday #202 Edition

  • 1.
    SQL Server AlwaysOn for Dummies MarkBroadbent Principal SQL Consultant SQLCloud SQLCLOUD.CO.UK
  • 2.
    About Mark Broadbent “Possibly thehardest drinking DBA on the planet” “30 billion times more intelligent than a live mattress” Email: mark.broadbent@sqlcambs.org.uk Twitter: retracement Blog: http://tenbulls.co.uk PASS UK Regional Mentor Event Lead to the UK’s first ever SQLSaturday (Cambridge) Event #2nd due on Friday 27th Sept 2013 (pre-con) 28th Sept (Community day) http://www.sqlsaturday.com/228/eventhome.aspx Cambridgeshire PASS Chapter UG Leader http://sqlcambs.org.uk
  • 3.
    SQLSaturday Cambridge 2013 27th(pre-con) and 28th (free) September http://www.sqlsaturday.com/228 Queen’s College, Cambridge CB3 9ET What is the air-speed velocity of an unladen swallow?
  • 4.
    Agenda Windows Server Failover Clustering &Quorum AlwaysOn Availability Groups AlwaysOn Failover Clustered Instances Introduction to AlwaysOn 3 2 1 4
  • 5.
  • 6.
    AlwaysOn Technologies*1 *1 Accordingto my interpretation! AlwaysOn Availability Groups AlwaysOn Failover Clustered Instances Database Mirroring Scalable Shared Database Replication
  • 7.
  • 8.
    Dr. Evil Senior Microsoft WindowsClustering Program Manager
  • 9.
    Don’t let theterms confuse you! Cluster Node Cluster Server Node Server Cluster Group Role Service or Application Virtual Server Failover Cluster Clustered Instance SQL Server Server Resources (take your pick) Quorum Client Network Private Network Interconnect Internal Network Public Network... LAN SAN Shared Storage Disk Cluster Storage Active/Passive Single Instance Multi Instance N+n Cluster Majority Votes Availability Group Replica Readonly Replica
  • 10.
    AlwaysOn Clustered InstancesProvide… • Abstraction of SQL instance • High availability of Instance name • Instance and related services failover as a unit • Instance components such as jobs and logins not a consideration • Distributed Transaction Support BUT • Shared data with single point of failure per instance. • Complex to administrate
  • 11.
    Availability Groups Provide… •Abstraction at the databases level • Failover as a single Unit • High availability of “Instance” (listener) name • All the benefits of DB Mirroring ….and less of the problems (FS is supported) BUT • Connected replicas are potentially single point of failure (i.e user error – deletion of records) • Complex (arguably less than FCI) to administrate • Instance level components not failed over –contained dbs partially come to the rescue • No Distributed Transaction support for failover
  • 12.
  • 13.
  • 14.
    “The Magic” ofClustering Clustered “Application” Cluster Nodes The “magic” of clustering is the ability for the cluster to ensure only one set of services, executables and resources are alive on one node for a clustered application at any one time. A clustered application will be installed onto each node
  • 15.
    “The Magic” ofClustering Clustered “Application” Cluster Nodes failover
  • 16.
    “The Magic” ofClustering Clustered “Application” Cluster Nodes failover
  • 17.
    Storage Network Internal Network A Basic WindowsCluster Public (or Client) Network Shared (or Asymmetric) Storage Quorum The Cluster Group Cluster Node Cluster Service
  • 18.
  • 19.
    Quorum Models Node majority(no witness) Node majority with witness (disk or file share) No majority (disk witness only) +Node weighting Dynamic weighting -new to Windows 2012
  • 20.
    DEMO Taking a lookat our Cluster
  • 21.
  • 22.
    Installation Create and installyour clustered instance on the first cluster node For all other nodes install executables on every other node
  • 23.
    Clustered Instances Node ANode B SQL Server Instance A Role (formerly known as Cluster Group) Network Name
  • 24.
    Clustered Instances failoverNode ANode B SQL Server Instance A Role (formerly known as Cluster Group) Network Name
  • 25.
  • 26.
    Availability Group consistsof… Listener (Name and IP) Availability Group Resource Availability Group Databases SQL Instance Components Wndows Cluster Resources Replica/s Availability Cluster Group Mirroring Endpoints Availability Group Listener (Name and IP) Do not flippin’ touch!
  • 27.
    Transaction Logs Secondary Replica SQLServer Instance A Transaction Logs Primary Replica SQL Server Instance A Availability Groups Transaction Logs Redo Sync/ Async Secondary Replica SQL Server Instance B Listener
  • 28.
    Transaction Logs Secondary Replica SQLServer Instance A Availability Groups Transaction Logs Sync/ Async Secondary Replica SQL Server Instance B Listener Redo Transaction Logs Primary Replica SQL Server Instance B
  • 29.
    Availability Groups andReadable Secondaries • 5 Replicas • 2 Synchronous, others Asynchronous • 1 Read-Write • 4 either Read-only, Read-Intent or No Access
  • 30.
  • 31.
    ReadOnly Routing • Setconnection string property ApplicationIntent=ReadOnly • Must connect to a listener. • Modify Secondary Replica Roles with read only routing url. • Modify Primary Replica Roles with read only routing list.
  • 32.
    In Summary… • Itis not all Butterflys and Unicorns so choose the HA solution appropriate to your requirements. • Failover Clustering is a very mature technology but requires specialist skill and understanding. It does not provide scalability. • Availability Groups partially rely on Windows Clustering but are slightly easier to setup and manage. They also provide reporting query scalability.
  • 33.
    Tha mo bhàta-foluaimeinloma-làn easgannan for attending this session and SQLSaturday #202 in Edinburgh Thank you!