使用Azure Automation Hybrid管理本地SQL Server备份状态

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Azure Automation Hybrid管理本地SQL Server备份状态相关的知识,希望对你有一定的参考价值。

前面的博文中给大家介绍了什么是Automation Hybrid Runbook worker以及如何使用自动化的方式将其部署到其他云环境或者本地数据中心。接下来将带着大家一起看一下如何使用Automation Hybrid Runbook worker在本地数据中心执行自动化管理。
我们本次的实验会使用Automation Hybrid Runbook worker运行脚本来监控本地数据库的备份状态,同时会将所有的数据库备份状态回传到log analytics来进行分析,在发现一些问题是进行邮件告警。
闲言少絮,下面我们开始今天的实验:
测试脚本运行状况:
一般我们使用Hybrid Runbook Worker之前,需要先测试脚本在本地是否可以正常运行:
技术图片

配置Automation账户
相信经常通过脚本完成一些自动化任务的朋友都比较清楚,将脚本执行时涉及到的用户名等信息以明文的方式存储到脚本内部是有极大的安全隐患的。为了避免这个隐患,在azure的自动化账户中我们可以添加对应的certificates和variables来存储用户名和密码信息。
首先我们设置variables来存储本地数据库的密码:
技术图片
然后设置certificates来存储本地数据库的用户名信息:
技术图片
上述配置都完成以后,我们可以切换到Runbook选项卡来新建一个runbook:
技术图片
创建完成以后点击“编辑”,然后将我们的脚本文件复制到内部并进行微调:
技术图片
配置完脚本文件后我们就可以点击“start”来测试脚本的运行状态:
技术图片
在运行设置中有两个选项:
Azure:此选项代表只能在Azure内部运行runbook脚本
Hybrid Worker:此选项代表可以在其他云平台货本地数据中心运行runbook脚本
如果选择使用Hybrid Worker的话我们需要指定需要运行脚本的Hybrid worker group:
技术图片
配置完成以后我们可以在log控制台看到对应的运行状态:
技术图片
同时我们也可以在log analytics内执行查询,来查看对应的本分状态等信息:
AzureDiagnostics | where RunbookName_s == "GetSQLBackupStatus" | where ResultDescription contains "Backup" | parse ResultDescription with "SQLServerName: "SQLServerName", Database:"Database", Last Backup Finish Date (UTC): ‘" BackupFinishedDateUTC:datetime "‘"* | project SQLServerName, Database, BackupFinishedDateUTC, TimeGenerated | where BackupFinishedDateUTC <= ago(2d)
技术图片

查询剩余空间百分比低于20%的数据库:
AzureDiagnostics | where RunbookName_s == "GetSQLBackupStatus" | where ResultDescription contains "Free Space" | parse ResultDescription with "SQLServerName:"SQLServerName", Database:"Database", Current Size MB:"CurrentSizeMB", Free Space MB:"FreeSpaceMB", Free Space Percentage:" FreeSpacePercent:long * | project SQLServerName, Database, CurrentSizeMB, FreeSpaceMB, FreeSpacePercent, TimeGenerated | where FreeSpacePercent < 20
技术图片

配置Alerts
除了上述的功能外,我们可以在使用Azure Montior配置邮件报警,来及时的发现潜在问题。
进入Azure Monitor,点击Alert,点击“+new alert rule”:
技术图片
如下图所示进行配置:
技术图片
技术图片

配置完成后,如下图所示:
技术图片
当数据库的剩余空间百分比低于20%的时候,我们就会收到对应的邮件告警信息:

技术图片

以上是关于使用Azure Automation Hybrid管理本地SQL Server备份状态的主要内容,如果未能解决你的问题,请参考以下文章

利用Azure Automation实现云端自动化运维

使用Azure Automation(自动化)定时关闭和启动虚拟机

利用Azure Automation实现云端自动化运维

新版Azure Automation Account 浅析 --- 更新Powershell模块和创建Runbook

利用Azure Automation实现云端自动化运维

AZURE技能分享 | 通过Azure Automation自动化脚本 定时开启和关闭虚拟机