使用PowerShell快速获取Azure中的SQL Server VM

  

,,,,这次来分享一个自己写的脚本,任何脚本当然都是有原始需求推动的,这个脚本的功能其实很简单,他可以帮助我们快速筛选出Azure账号中SQL Server的VM,写这个脚本的原因也是因为有人问,现在环境中有哪些VM是SQL Server的,通过平台本身的门户其实很难筛选出来这些信息,所以特地写了一个脚本,当然,这个脚本还是有一些限制,只能筛选出+ SQL Azure VM许可证模式的虚拟机,对于直接在VM内部安装SQL Server的虚拟机,因为平台本身不会记录这类的信息,所以从平台层面是没办法筛选出来的


,,,,以下是脚本的内容,分享一下


function  Write-DateTimeMessage   {   ,,,param  (   ,,,,,,,(参数(时间=Mandatory 假美元))   ,,,,,,,(开关)警告,美元   ,,,,,,,(参数(时间=Mandatory 真正的美元))   ,,,,,,,(字符串)美元的消息,   ,,,,,,,(参数(时间=Mandatory 假美元))   ,,,,,,,[string] ForegroundColor美元   ,,,,,,,   ,,,)   ,,,,   ,,,,   ,,,if (警告)   ,,,{   ,,,,,,,Write-Warning (美元(Get-Date  -UFormat  & # 39; % Y/% m/% d  % H: % m: % & # 39;), +,“, *,,, +,美元消息)   ,,,}   ,,,   ,,,{   ,,,,,,,if  (ForegroundColor美元)   ,,,,,,,{   ,,,,,,,,,,,Write-Host (美元(Get-Date  -UFormat  & # 39; % Y/% m/% d  % H: % m: % & # 39;), +,“, *,,, +,美元消息),-ForegroundColor  ForegroundColor美元   ,,,,,,,}   ,,,,,,,   ,,,,,,,{   ,,,,,,,,,,,Write-Host (美元(Get-Date  -UFormat  & # 39; % Y/% m/% d  % H: % m: % & # 39;), +,“, *,,, +,美元消息)   ,,,,,,,}   ,,,}   ,,,,   }         [pscustomobject []] SQLVMObjects 美元;=零美元      $ Subscriptions =Get-AzureRmSubscription      foreach  (subscription 美元;拷贝订阅美元)   {   ,,,,   ,,,“Querying 订阅:“   ,,,,   ,,,SubscriptionID 美元;=,Subscription.Id美元   ,,,SubscriptionName 美元;=,Subscription.Name美元   ,,,Select-AzureRmSubscription  -SubscriptionId  SubscriptionID 美元;-InformationAction  SilentlyContinue   ,,,,   ,,,Get-AzureRmResourceGroup  |, % {   ,,,,,,,RG 美元;=$ _   ,,,,,,,Write-DateTimeMessage  -Message “Checking  Resource  Group 美元($ RG.ResourceGroupName)“;   ,,,,,,,AzureVMs 美元;=,Get-AzureRmVM  -ResourceGroupName  RG.ResourceGroupName美元   ,,,,,,,   ,,,,,,,if  (null 美元;-ne  AzureVMs美元)   ,,,,,,,{   ,,,,,,,,,,,   ,,,,,,,,,,,AzureVMs 美元;|,% {   ,,,,,,,,,,,,,,,AzureVM 美元;=$ _   ,,,,,,,,,,,,,,,如果(AzureVM.StorageProfile.ImageReference.Publisher 美元;-like “* *“状态"置疑")   ,,,,,,,,,,,,,,,{   ,,,,,,,,,,,,,,,,,,,Write-DateTimeMessage  -Message “Find  SQL  Server  VM 美元($ AzureVM.Name),拷贝resource  group 美元($ RG.ResourceGroupName)“警告   ,,,,,,,,,,,,,,,,,,,SQLVMObject 美元;=,New-Object  -TypeName  psobject   ,,,,,,,,,,,,,,,,,,,SQLVMObject 美元;|,Add-Member  -MemberType  NoteProperty  -Name  SubscriptionName  -Value  SubscriptionName美元   ,,,,,,,,,,,,,,,,,,,SQLVMObject 美元;|,Add-Member  -MemberType  NoteProperty  -Name  SubscriptionID  -Value  SubscriptionID美元   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

使用PowerShell快速获取Azure中的SQL Server VM