[AlwaysOn Availability Groups]AG排查和监控指南
AG排查和监控指南
1. 排查场景
如下表包含了常用排查的场景。根据被分为几个场景类型,比如Configuration,client connectivity,failover和performance。
Scenario |
笔记 |
Scenario Type |
Description |
Troubleshoot AlwaysOn Availability Groups Configuration (SQL Server) |
Configuration |
提供了一些典型的配置AG实例发生问题的信息。比如AG被禁用,账号配置不正确,镜像endpoint不存在(SQL Server Error 1418)。网络访问不存在,join数据库失败(SQL Server Error 35250)。 |
|
Troubleshoot "Validating WSFC quorum vote configuration" warning |
Configuration |
当使用对话框创建AG时,收到一个警告: “The current WSFC cluster quorum vote configuration is not recommended for this availability group.” |
|
Troubleshoot issues when creating availability group listeners |
Configuration |
在创建AG Listener的时候发生错误。 |
|
Troubleshoot a Failed Add-File Operation (AlwaysOn Availability Groups) |
Configuration |
添加文件导致secondary数据库挂起,状态变为NOT SYNCHORNIZING |
|
Fix: Error 41009 when you try to create multiple availability groups |
Configuration |
创建多个AG时发生41009 错误 |
|
Cannot connect to availability group listener in a multi-subnet environment |
Client Connectivity |
创建了AG Listener之后,无法ping通和连接 |
|
Failover |
自动故障转移不能成功完成 |
||
Performance |
自动故障转移或者计划内的手动转移之后,切换时间超过了RTO时间 |
||
Performance |
强制故障转移后,都是的数据超过了RPO。或者异步提交的replica能够承受的数据丢失超过了RPO。 |
||
Troubleshoot: Changes on the Primary Replica are not Reflected on the Secondary Replica |
Performance |
客户端程序可以成功的完成primary的修改,但是查询replia却没有反应。 |
2. 排查工具
以下工具可以用来排查,配置时或者运行时发生的问题
Tool |
笔记 |
Description |
在UI接口下,获取某个时间点的AG健康情况。 |
||
被Alwayson Dashboard使用 |
||
记录AG,副本,数据库,其他AG主键的状态变化,和AG的错误 |
||
记录集群时间,包括AG资源的状态变化,SQL Server resource DDL的事件和错误。 |
||
记录SQL Server健康诊断被报告到WSFC集群,由sp_server_diagnostics (Transact-SQL)产生 |
||
Dynamic Management Views and System Catalog Views (AlwaysOn Availability Groups) |
报告AG的信息,比如配置,健康状况,性能问题 |
|
提供了详细AG信息用来诊断,分析起因 |
||
提供了AG特定的等待信息,用来调整性能 |
||
AlwaysOn Performance Counters |
监控AG的活动,反馈到系统监视器,用来调优,具体可以看 SQL Server, Availability Replica 和 SQL Server, Database Replica. |
|
记录SQL Server系统内部争端的警告,用来debug和AG有关的问题。 |
3. 监控AG
理想的排查时间是在故障转移之前。这个可以通过监控性能值,在超过SLA之前发送告警。比如同步secnodary副本有性能问题,因为预计failover时间增加。AG是高可用和灾难恢复解决访问,最重要的性能指标是切换时间,会影响RTO,灾难导致的数据丢失会影响RPO。
以下表文章用来监控AG的健康状况:
Topic |
笔记 |
Description |
描述AG数据同步,阀值控制,和一些有用的值用来监控AG,还有如何收集RTO,RPO的值。 |
||
提供一些AG监控工具 |
||
The AlwaysOn Health Model Part 1 -- Health Model Architecture |
提供一个Alwayson健康模型的概述 |
|
The AlwaysOn Health Model Part 2 -- Extending the Health Model |
如何用户定制Alwayson监控模型和用户定义Alwayson Dashboard,来显示额外的信息。 |
|
Monitoring AlwaysOn Health with PowerShell - Part 1: Basic Cmdlet Overview |
提供一些基本的Alwayson Powershell命令。用来监控AG的健康状况。 |
|
Monitoring AlwaysOn Health with PowerShell - Part 2: Advanced Cmdlet Usage |
提供一些高级的Alwayson Powershell命令。用来监控AG的健康状况。 |
|
Monitoring AlwaysOn Health with PowerShell - Part 3 : A Simple Monitoring Application |
显示如何使用城区监控AG。 |
|
Monitoring AlwaysOn Health with PowerShell - Part 4 : Integration with SQL Server Agent |
如何使用SQL Server Agent集成监控AG,并且在出问题的时候通知。 |
[AlwaysOn Availability Groups]AG排查和监控指南的更多相关文章
- [AlwaysOn Availability Groups]AG扩展事件
AG扩展事件 SQL Server 2012定义了一些关于AlwaysOn的扩展事件.你可以监控这些扩展事件来帮助诊断AG的根本问题.你也可以使用以下语句查看扩展事件: SELECT * FROM s ...
- [AlwaysOn Availability Groups]排查:AG配置
排查AG配置 本文主要用来帮助排查在AG配置时出现的问题,包括,AG功能被禁用,账号配置不正确,数据库镜像endpoint不存在,endpoint不能访问. Section Description A ...
- [AlwaysOn Availability Groups]DMV和系统目录视图
DMV和系统目录视图 这里主要介绍AlwaysON的动态管理视图,可以用来监控和排查你的AG. 在AlwaysOn Dashboard,你可以简单的配置的GUI显示很多可用副本的DMV和可用数据库通过 ...
- [SQL in Azure] Tutorial: AlwaysOn Availability Groups in Azure (GUI)
http://msdn.microsoft.com/en-us/library/azure/dn249504.aspx Tutorial: AlwaysOn Availability Groups i ...
- [AlwaysOn Availability Groups]CLUSTER.LOG(AG)
CLUSTER.LOG(AG) 作为故障转移资源,在SQL Server和windows故障转移集群服务的资源DLL(hadrres.dll)之间有额外的内部交流,DLL无法被SQL Server监控 ...
- [AlwaysOn Availability Groups]AlwaysOn等待类型
AlwaysOn等待类型 当排查AlwaysOn延迟,等待统计信息可以在DMV中查看累计的AlwaysOn等待类型. 查看AlwaysOn等待类型 SELECT * FROM sys.dm_os_wa ...
- [AlwaysOn Availability Groups]监控AG性能
监控AG性能 AG的性能的性能方面,在关键任务数据库上进行语句级维护性能是很重要的.理解AG如何传输日志到secondary副本对评估RTO和RPO,表明AG是否性能不好. 1. 数据同步步骤 为了评 ...
- [AlwaysOn Availability Groups]排查:AG超过RPO
排查:AG超过RPO 在异步提交的secondary上执行了切换,你可能会发现数据的丢失大于RPO,或者在计算可以忍受的数据都是超过了RPO. 1.通常原因 1.网络延迟太高,网络吞吐量太低,导致Pr ...
- [AlwaysOn Availability Groups]排查:AG超过RTO
排查:AG超过RTO 自动故障转移或者手动转移之后,没有数据都是,你可能会发现切换时间超过了你的RTO.或者当你评估切换时间同步提交secondary副本,发现超过了你的RTO. 1. 通常原因 通常 ...
随机推荐
- Sublime Text 全程指引 by Lucida
作者:Lucida 微博:@peng_gong 豆瓣:@figure9 博客园:@figure9 原文链接:http://zh.lucida.me/blog/sublime-text-complete ...
- Entity Framework 6 Recipes 2nd Edition(10-7)译 -> TPH继承模型中使用存储过程
10-7. TPH继承模型中使用存储过程 问题 用一个存储过程来填充TPH继承模型的实体 解决方案 假设已有如Figure 10-7所示模型. 我们有两个派生实体: Instructor(教员)和St ...
- 游戏编程系列[1]--游戏编程中RPC协议的使用
RPC(Remote Procedure Call Protocol)--远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的存在 ...
- 常用数据库的驱动程序和Url地址
常用数据库的驱动程序及JDBC URL: Oracle数据库: 驱动程序包名:ojdbc6.jar 驱动类的名字:oracle.jdbc.driver.OracleDriver JDBC URL:jd ...
- Function Set in OPEN CASCADE
Function Set in OPEN CASCADE eryar@163.com Abstract. The common math algorithms library provides a C ...
- MVC默认路由实现分页-PagerExtend.dll
这两天在群里有人咨询有没有现成的.net mvc分页方法,由此写了一个简单分页工具,这里简单分享下实现思路,代码,希望能对大家有些帮助,鼓励大家多造些轮子还是好的. A.效果(这里用了bootstra ...
- SQLCMD备忘录:执行文件夹所有Sql文件
在做性能测试的时候最希望的一件事情是数据自动导入. 一般做法就是写很多SQL文件,通过Bat自动执行所有Sql文件. Bat代码: @ECHO OFF SET SQLCMD="C:\Prog ...
- ionic之$ionicGesture手势(大坑)
鄙人来本公司前未用过ionic框架,但由于ionic是基于angularjs封装的,正好我用过angularjs,很荣幸的面试就过了,然后通过该网站http://www.ionic.wang(后面简称 ...
- Java进击C#——应用开发之Asp.net MVC
本章简言 上一章笔者讲到关于Asp.NET的知识点.了解Asp.NET基本的知识点之后,我们在来学习关于C#的MVC框架就简单多了.显然本章就是来介绍一下关于Asp.NET MVC.对于MVC的思想笔 ...
- NginxWeb服务器安装
1. 安装编译工具和库文件 [root@bigdata-51cdh opt]# yum -y install make zlib zlib-devel gcc-c++ libtool opens ...