我正在寻找将虚拟机与OMS工作区断开连接的Powershell方法。
我写了一个powershell脚本将VM移到另一个订阅。因此,我必须将此虚拟机从“源工作区”重新连接到“目标工作区”。
只需删除OMS扩展,即可将虚拟机显示为“未连接”到Azure门户“ Log Analytics工作区>工作区数据源>虚拟机”。
此cmdlet应该可以解决问题(the doc is not really clear),但我总是收到相同的消息
PUT
(CentosMove是我的VM名称)。
我们的ITSOMS工作区已经使用了数百年的VM,许多解决方案,NSG日志流分析等。
remove-AzureRmOperationalInsightsDataSource -Workspace $OmsWkspceITS -Name CentosMove
Confirm
Are you sure you want to remove data source 'CentosMove' in workspace 'itsoms'?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Yes"): yes
WARNING: DataSource 'CentosMove' does not exist in workspace 'itsoms'.
我可以通过此cmdlet获得的唯一数据源就是这样的数据源
$OmsWkspceITS
Name : itsoms
ResourceGroupName : rg_its_exploit
ResourceId : /subscriptions/blablabla/resourcegroups/blabla/providers/microsoft.operationalinsights/workspaces/itsoms
Location : westeurope
Tags :
Sku : standalone
CustomerId : xx
PortalUrl : https://weu.mms.microsoft.com/Accou...
ProvisioningState : Succeeded
我可能不是在看我认为正确的cmdlet ...
感谢您的帮助:)
答案 0 :(得分:1)
要满足要求,请使用cmdlet Remove-AzureRmVMExtension 和 Set-AzureRmVMExtension 。
要查看插图,请查看以下命令。
要断开Linux VM代理的连接,请执行以下操作:
Remove-AzureRmVMExtension -ResourceGroupName RESOURCEGROUPNAME -VMName VMNAME -Name ‘OmsAgentForLinux’
要断开Windows VM代理的连接,请执行以下操作:
Remove-AzureRmVMExtension -ResourceGroupName RESOURCEGROUPNAME -VMName VMNAME -Name ‘MicrosoftMonitoringAgent’
要将Linux VM代理连接到Log Analytics工作区:
$WorkspaceID = "xxxxxxxxxxxxxxxxxxxxxxxxx"
$WorkspaceKey = "xxxxxxxxxxxxxxxxxxxxxxxx"
Set-AzureRmVMExtension -ResourceGroupName RESOURCEGROUPNAME -VMName VMNAME -Name ‘OmsAgentForLinux’ -Publisher ‘Microsoft.EnterpriseCloud.Monitoring’ -ExtensionType ‘OmsAgentForLinux’ -TypeHandlerVersion ‘1.0’ -Location 'LOCATION' -SettingString "{‘workspaceId’: ‘$WorkspaceID’}" -ProtectedSettingString "{‘workspaceKey’: ‘$WorkspaceKey’}"
要将Windows VM代理连接到Log Analytics工作区:
$WorkspaceID = "xxxxxxxxxxxxxxxxxxxxxxxxx"
$WorkspaceKey = "xxxxxxxxxxxxxxxxxxxxxxxx"
Set-AzureRmVMExtension -ResourceGroupName RESOURCEGROUPNAME -VMName VMNAME -Name ‘MicrosoftMonitoringAgent’ -Publisher ‘Microsoft.EnterpriseCloud.Monitoring’ -ExtensionType ‘MicrosoftMonitoringAgent’ -TypeHandlerVersion ‘1.0’ -Location 'LOCATION' -SettingString "{‘workspaceId’: ‘$WorkspaceID’}" -ProtectedSettingString "{‘workspaceKey’: ‘$WorkspaceKey’}"
希望这会有所帮助!!干杯!! :)