你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure PowerShell 部署适用于 SAP 的 Azure Monitor 解决方案

Azure Monitor for SAP Solutions 是一款 Azure 本机监视产品,适用于在 Azure 上运行的 SAP 环境。 如果关键的 SAP 应用程序在 Azure 上运行,请使用它监视其可用性、性能和操作。

在本快速入门中,你将使用 Azure PowerShell 部署用于 SAP 解决方案的 Azure Monitor 资源,并通过提供程序实例将其连接到 SAP 系统。

先决条件

  • 如果没有 Azure 订阅,请在开始之前创建一个免费帐户

  • 若要在本地使用 Azure PowerShell,请安装 Az PowerShell 模块,并使用 Connect-AzAccount cmdlet 连接到 Azure 帐户。 有关安装 Az PowerShell 模块的详细信息,请参阅安装 Azure PowerShell。 或者,可以使用 Azure Cloud Shell

    通过运行以下命令安装 Az.Workloads PowerShell 模块:

    Install-Module -Name Az.Workloads
    
  • 如果有多个 Azure 订阅,请使用 Set-AzContext cmdlet 选择要用于计费的订阅:

    Set-AzContext -SubscriptionId aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
    
  • 为有权访问源 SAP 系统的虚拟网络的 Azure Monitor for SAP 解决方案创建或选择虚拟网络。

  • 在与 Azure Monitor for SAP Solutions 关联的虚拟网络中创建地址范围为 IPv4/25 或更大的子网,并将子网委托分配给 Microsoft.Web/serverFarms

    显示为 Azure Monitor for SAP Solutions 创建子网的屏幕截图。

创建资源组

使用 New-AzResourceGroup cmdlet 创建 Azure 资源组。 资源组是一个逻辑容器,可在其中将 Azure 资源部署和管理为组。

运行以下命令,创建具有指定名称和指定位置的资源组:

New-AzResourceGroup -Name Contoso-AMS-RG -Location <myResourceLocation>

创建 SAP 监视器

若要创建 SAP 监视器,请使用 New-AzWorkloadsMonitor cmdlet。

  1. 运行以下命令,为指定的订阅、资源组和资源名称创建 SAP 监视器:

    $monitor_name = 'Contoso-AMS-Monitor'
    $rg_name = 'Contoso-AMS-RG'
    $subscription_id = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
    $location = 'eastus'
    $managed_rg_name = 'MRG_Contoso-AMS-Monitor'
    $subnet_id = '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ams-vnet-rg/providers/Microsoft.Network/virtualNetworks/ams-vnet-eus/subnets/Contoso-AMS-Monitor'
    $route_all = 'RouteAll'
    
    New-AzWorkloadsMonitor -Name $monitor_name -ResourceGroupName $rg_name -SubscriptionId $subscription_id -Location $location -AppLocation $location -ManagedResourceGroupName $managed_rg_name -MonitorSubnet $subnet_id -RoutingPreference $route_all
    
  2. 若要获取 SAP 监视器的属性,请运行以下命令:

    Get-AzWorkloadsMonitor -ResourceGroupName Contoso-AMS-RG -Name Contoso-AMS-Monitor
    

创建提供程序

若要创建 SAP NetWeaver 提供程序,请使用 New-AzWorkloadsProviderInstance cmdlet。

  1. 运行以下命令以设置订阅上下文:

    Set-AzContext -SubscriptionId aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
    
  2. 运行以下命令以创建 NetWeaver 提供程序实例。

    在此代码中, hostname 是 SAP Web 调度程序或应用程序服务器的主机名或 IP 地址。 SapHostFileEntryGetSystemInstanceList 第 6 点 (xi) 中列出的每个实例的 IP 地址、完全限定的域名或主机名。

    $subscription_id = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
    $rg_name = 'Contoso-AMS-RG'
    $monitor_name = 'Contoso-AMS-Monitor'
    $provider_name = 'Contoso-AMS-Monitor-NW'
    
    $SapClientId = '000'
    $SapHostFileEntry = '["10.0.0.0 x01scscl1.ams.azure.com x01scscl1,10.0.0.0 x01erscl1.ams.azure.com x01erscl1,10.0.0.1 x01appvm1.ams.azure.com x01appvm1,10.0.0.2 x01appvm2.ams.azure.com x01appvm2"]'
    $hostname = 'x01appvm0'
    $instance_number = '00'
    $password = 'Password@123'
    $sapportNumber = '8000'
    $sap_sid = 'X01'
    $sap_username = 'AMS_NW'
    $providerSetting = New-AzWorkloadsProviderSapNetWeaverInstanceObject -SapClientId $SapClientId -SapHostFileEntry $SapHostFileEntry -SapHostname $hostname -SapInstanceNr $instance_number -SapPassword $password -SapPortNumber $sapportNumber -SapSid $sap_sid -SapUsername $sap_username -SslPreference Disabled
    
    New-AzWorkloadsProviderInstance -MonitorName $monitor_name -Name $provider_name -ResourceGroupName $rg_name -SubscriptionId $subscription_id -ProviderSetting $providerSetting
    

获取提供程序实例的属性

若要获取提供程序实例的属性,请使用 Get-AzWorkloadsProviderInstance cmdlet。 以下示例获取指定资源组和 SAP 监视器名称的提供程序实例属性:

Get-AzWorkloadsProviderInstance -ResourceGroupName Contoso-AMS-RG -SapMonitorName Contoso-AMS-Monitor

清理资源

如果不需要本文中创建的资源,可以通过运行以下命令将其删除。

删除提供程序实例

若要删除提供程序实例,请使用 Remove-AzWorkloadsProviderInstance cmdlet。 以下示例删除指定订阅、资源组、SAP 监视器名称和资源名称的 IBM Db2 提供程序实例:

$subscription_id = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
$rg_name = 'Contoso-AMS-RG'
$monitor_name = 'Contoso-AMS-Monitor'
$provider_name = 'Contoso-AMS-Monitor-DB2'

Remove-AzWorkloadsProviderInstance -MonitorName $monitor_name -Name $provider_name -ResourceGroupName $rg_name -SubscriptionId $subscription_id

删除 SAP 监视器

若要删除 SAP 监视器,请使用 Remove-AzWorkloadsMonitor cmdlet。 以下示例删除指定的订阅、资源组和监视器名称的 SAP 监视器:

$monitor_name = 'Contoso-AMS-Monitor'
$rg_name = 'Contoso-AMS-RG'
$subscription_id = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'

Remove-AzWorkloadsMonitor -Name $monitor_name -ResourceGroupName $rg_name -SubscriptionId $subscription_id

删除资源组

以下示例删除指定的资源组及其所有资源。

注意

如果本文范围之外的资源存在于指定的资源组中,则它们也会被删除。

Remove-AzResourceGroup -Name Contoso-AMS-RG