SAP の高可用性シナリオにおける Azure Standard Load Balancer を使用した Virtual Machines のパブリック エンドポイント接続Public endpoint connectivity for Virtual Machines using Azure Standard Load Balancer in SAP high-availability scenarios

この記事では、パブリック エンドポイントへの送信接続を有効にする構成について説明します。The scope of this article is to describe configurations, that will enable outbound connectivity to public end point(s). 構成は、主に、SUSE/RHEL に対する Pacemaker での高可用性のコンテキストにおけるものです。The configurations are mainly in the context of High Availability with Pacemaker for SUSE / RHEL.

高可用性ソリューションの Azure フェンス エージェントで Pacemaker を使用している場合、VM には Azure 管理 API への送信接続が必要です。If you are using Pacemaker with Azure fence agent in your high availability solution, then the VMs must have outbound connectivity to the Azure management API. この記事では、シナリオに最適なオプションを選択できるように、複数のオプションを示します。The article presents several options to enable you to select the option that is best suited for your scenario.


クラスタリングを使用して SAP ソリューションに対する高可用性を実装する場合、必要なコンポーネントの 1 つは Azure Load Balancer です。When implementing high availability for SAP solutions via clustering, one of the necessary components is Azure Load Balancer. Azure には、Standard と Basic の 2 つのロード バランサー SKU が用意されています。Azure offers two load balancer SKUs: standard and basic.

Standard Azure Load Balancer には、Basic ロード バランサーより優れた点がいくつかあります。Standard Azure load balancer offers some advantages over the Basic load balancer. たとえば、Azure 可用性ゾーンをまたがって機能し、トラブルシューティングが容易になる強化された監視とログ記録の機能を備え、待機時間が短縮されます。For instance, it works across Azure Availability zones, it has better monitoring and logging capabilities for easier troubleshooting, reduced latency. "HA ポート" 機能は、すべてのポートが対象です。つまり、すべてのポートを個別に指定する必要がなくなります。The “HA ports” feature covers all ports, that is, it is no longer necessary to list all individual ports.

Azure Load Balancer の Basic SKU と Standard SKU には、いくつかの重要な違いがあります。There are some important differences between the basic and the standard SKU of Azure load balancer. そのうちの 1 つは、パブリック エンドポイントへの送信トラフィックの処理です。One of them is the handling of outbound traffic to public end point. Basic SKU と Standard SKU の Load Balancerの詳細な比較については、「Load Balancer の SKU の比較」をご覧ください。For full Basic versus Standard SKU load balancer comparison, see Load Balancer SKU comparison.

パブリック IP アドレスを持たない VM が、内部 (パブリック IP アドレスがない) Standard Azure Load Balancer のバックエンド プール内に配置されている場合、追加の構成を行わない限り、パブリック エンドポイントへの送信接続はありません。When VMs without public IP addresses are placed in the backend pool of internal (no public IP address) Standard Azure load balancer, there is no outbound connectivity to public end points, unless additional configuration is done.

VM にパブリック IP アドレスが割り当てられている場合、または VM がパブリック IP アドレスを持つロード バランサーのバックエンド プールに含まれる場合は、パブリック エンドポイントへの送信接続があります。If a VM is assigned a public IP address, or the VM is in the backend pool of a load balancer with public IP address, it will have outbound connectivity to public end points.

SAP システムには、機密性の高いビジネス データが含まれることがよくあります。SAP systems often contain sensitive business data. SAP システムをホストしている VM にパブリック IP アドレス経由でアクセスすることが許可されることはほとんどありません。It is rarely acceptable for VMs hosting SAP systems to be accessible via public IP addresses. 同時に、VM からパブリック エンドポイントへの送信接続を必要とするシナリオもあります。At the same time, there are scenarios, which would require outbound connectivity from the VM to public end points.

Azure のパブリック エンドポイントへのアクセスを必要とするシナリオの例を次に示します。Examples of scenarios, requiring access to Azure public end point are:

  • Azure Fence Agent には、 へのアクセスが必要になりますAzure Fence Agent requires access to and
  • Azure BackupAzure Backup
  • Azure Site RecoveryAzure Site Recovery
  • オペレーティング システムに修正プログラムを適用するためのパブリック リポジトリの使用Using public repository for patching the Operating system
  • SAP アプリケーションのデータ フローで、パブリック エンドポイントへの送信接続が必要になる場合があるThe SAP application data flow may require outbound connectivity to public end point

SAP のデプロイでパブリック エンドポイントへの送信接続が必要ない場合は、追加の構成を実装する必要はありません。If your SAP deployment doesn’t require outbound connectivity to public end points, you don’t need to implement the additional configuration. パブリック エンドポイントからの受信接続も不要であるなら、高可用性シナリオ用に内部 Standard SKU Azure Load Balancer を作成するだけで十分です。It is sufficient to create internal standard SKU Azure Load Balancer for your high availability scenario, assuming that there is also no need for inbound connectivity from public end points.


パブリック IP アドレスのない VM が、内部 (パブリック IP アドレスがない) Standard の Azure Load Balancer のバックエンド プール内に配置されている場合、パブリック エンドポイントへのルーティングを許可するように追加の構成が実行されない限り、送信インターネット接続はありません。When VMs without public IP addresses are placed in the backend pool of internal (no public IP address) Standard Azure load balancer, there will be no outbound internet connectivity, unless additional configuration is performed to allow routing to public end points.
VM にパブリック IP アドレスがあるか、または VM がパブリック IP アドレスを持つ Azure Load Balancer のバックエンド プールに既に存在する場合、VM は既にパブリック エンドポイントへの送信接続を持っています。If the VMs have either public IP addresses or are already in the backend pool of Azure Load balancer with public IP address, the VM will already have outbound connectivity to public end points.

最初に、以下の記事をお読みください。Read the following papers first:

オプション 1: インターネットへの送信接続のために追加する外部 Azure Standard Load BalancerOption 1: Additional external Azure Standard Load Balancer for outbound connections to internet

パブリック エンドポイントから VM への受信接続を許可せずに、パブリック エンドポイントへの送信接続を実現する 1 つのオプションは、パブリック IP アドレスを使用して 2 番目のロード バランサーを作成し、2 番目のロード バランサーのバックエンド プールに VM を追加して、送信規則だけを定義することです。One option to achieve outbound connectivity to public end points, without allowing inbound connectivity to the VM from public end point, is to create a second load balancer with public IP address, add the VMs to the backend pool of the second load balancer and define only outbound rules.
VM からの発信呼び出しにアクセスできるパブリック エンドポイントを制御するには、ネットワーク セキュリティ グループを使用します。Use Network Security Groups to control the public end points, that are accessible for outbound calls from the VM.
詳しくは、アウトバウンド接続に関するドキュメントのシナリオ 2 をご覧ください。For more information, see Scenario 2 in document Outbound connections.
構成は次のようになります。The configuration would look like:

ネットワーク セキュリティ グループを使用してパブリック エンドポイントへの接続を制御する

重要な考慮事項Important considerations

  • 同じサブネット内の複数の VM 用にパブリック Load Balancer を 1 つ追加して、パブリック エンドポイントへの送信接続を実現し、コストを最適化することができますYou can use one additional Public Load Balancer for multiple VMs in the same subnet to achieve outbound connectivity to public end point and optimize cost
  • VM からアクセスできるパブリック エンドポイントを制御するには、ネットワーク セキュリティ グループを使用します。Use Network Security Groups to control which public end points are accessible from the VMs. ネットワーク セキュリティ グループは、サブネットまたは各 VM に割り当てることができます。You can assign the Network Security Group either to the subnet, or to each VM. 可能な場合は、サービス タグを使用して、セキュリティ規則の複雑さを軽減します。Where possible, use Service tags to reduce the complexity of the security rules.
  • パブリック IP アドレスとアウトバウンド規則を備えた Azure Standard Load Balancer を使うと、パブリック エンドポイントに直接アクセスできます。Azure standard Load balancer with public IP address and outbound rules allows direct access to public end point. 企業のセキュリティ要件で、監査とログ記録のため、集中管理された企業ソリューションを使用してすべての送信トラフィックを通過させる必要がある場合は、このシナリオで要件を満たすことができない可能性があります。If you have corporate security requirements to have all outbound traffic pass via centralized corporate solution for auditing and logging, you may not be able to fulfill the requirement with this scenario.


可能な場合は、サービス タグを使用して、ネットワーク セキュリティ グループの複雑さを軽減します。Where possible, use Service tags to reduce the complexity of the Network Security Group .

デプロイメントの手順Deployment steps

  1. Load Balancer の作成Create Load Balancer

    1. Azure portal で、[すべてのリソース]、[追加] の順にクリックして、Load Balancer を検索しますIn the Azure portal , click All resources, Add, then search for Load Balancer
    2. [作成] をクリックします。Click Create
    3. ロード バランサーの名前を「MyPublicILB」に設定しますLoad Balancer Name MyPublicILB
    4. 種類として [パブリック] を選択し、SKU として [Standard] を選択しますSelect Public as a Type, Standard as SKU
    5. [パブリック IP アドレスの作成] を選択し、名前として「MyPublicILBFrondEndIP」と指定しますSelect Create Public IP address and specify as a name MyPublicILBFrondEndIP
    6. [可用性ゾーン] として、 [ゾーン冗長] を選択しますSelect Zone Redundant as Availability zone
    7. [確認と作成] をクリックして、[作成] をクリックしますClick Review and Create, then click Create
  2. バックエンドプール MyBackendPoolOfPublicILB を作成し、VM を追加します。Create Backend pool MyBackendPoolOfPublicILB and add the VMs.

    1. 仮想ネットワークを選択しますSelect the Virtual network
    2. VM とその IP アドレスを選択し、バックエンド プールにそれらを追加しますSelect the VMs and their IP addresses and add them to the backend pool
  3. アウトバウンド規則を作成しますCreate outbound rules. 現在、Azure portal からアウトバウンド規則を作成することはできません。Currently it is not possible to create outbound rules from the Azure portal. アウトバウンド規則は Azure CLI で作成できます。You can create outbound rules with Azure CLI.

     az network lb outbound-rule create --address-pool MyBackendPoolOfPublicILB --frontend-ip-configs MyPublicILBFrondEndIP --idle-timeout 30 --lb-name MyPublicILB --name MyOutBoundRules  --outbound-ports 10000 --enable-tcp-reset true --protocol All --resource-group MyResourceGroup
  4. 特定のパブリック エンドポイントへのアクセスを制限するネットワーク セキュリティ グループの規則を作成します。Create Network Security group rules to restrict access to specific Public End Points. 既存のネットワーク セキュリティ グループがある場合は、それを調整できます。If there is existing Network Security Group, you can adjust it. 次の例では、Azure 管理 API に対してのみアクセスを有効にする方法を示します。The example below shows how to enable access to the Azure management API:

    1. [ネットワーク セキュリティ グループ] に移動しますNavigate to the Network Security Group
    2. [送信セキュリティ規則] をクリックしますClick Outbound Security Rules
    3. インターネット へのすべての送信アクセスを 拒否する 規則を追加します。Add a rule to Deny all outbound Access to Internet.
    4. すべてのインターネット アクセスを拒否する規則の優先順位より低い優先順位での、AzureCloud に対するアクセスを 許可する 規則を追加します。Add a rule to Allow access to AzureCloud, with priority lower than the priority of the rule to deny all internet access.

    送信セキュリティ規則は次のようになります。The outbound security rules would look like:

    パブリック IP を使用した 2 番目の Load Balancer での送信接続

    Azure ネットワーク セキュリティ グループについて詳しくは、「セキュリティ グループ」をご覧ください。For more information on Azure Network security groups, see Security Groups .

オプション 2:インターネットへの送信接続に対する Azure FirewallOption 2: Azure Firewall for outbound connections to internet

パブリック エンドポイントから VM への受信接続を許可せずに、パブリック エンドポイントへの送信接続を実現するもう 1 つのオプションは、Azure Firewall を使用するものです。Another option to achieve outbound connectivity to public end points, without allowing inbound connectivity to the VM from public end points, is with Azure Firewall. Azure Firewall は、高可用性が組み込まれたマネージド サービスであり、複数の可用性ゾーンにまたがることができます。Azure Firewall is a managed service, with built-in High Availability and it can span multiple Availability Zones.
Azure Firewall 経由でトラフィックをルーティングするには、ユーザー定義ルートをデプロイし、VM と Azure ロード バランサーがデプロイされているサブネットに関連付け、Azure Firewall をポイントする必要もあります。You will also need to deploy User Defined Route, associated with subnet where VMs and the Azure load balancer are deployed, pointing to the Azure firewall, to route traffic through the Azure Firewall.
Azure Firewall をデプロイする方法について詳しくは、Azure Firewall のデプロイと構成に関するページをご覧ください。For details on how to deploy Azure Firewall, see Deploy And Configure Azure Firewall.

アーキテクチャは次のようになります。The architecture would look like:

Azure Firewall での送信接続

重要な考慮事項Important considerations

  • Azure Firewall は、高可用性が組み込まれたクラウド ネイティブ サービスであり、ゾーン デプロイがサポートされています。Azure firewall is cloud native service, with built-in High Availability and it supports zonal deployment.
  • AzureFirewallSubnet という名前のサブネットを追加する必要があります。Requires additional subnet that must be named AzureFirewallSubnet.
  • SAP VM が配置されている仮想ネットワークから、別の仮想ネットワーク内の VM、またはパブリック エンドポイントに対して、大規模なデータ セットを転送する場合、コスト効率のよいソリューションではない可能性があります。If transferring large data sets outbound of the virtual network where the SAP VMs are located, to a VM in another virtual network, or to public end point, it may not be cost effective solution. そのような例の 1 つは、大きなバックアップを複数の仮想ネットワーク間でコピーする場合です。One such example is copying large backups across virtual networks. 詳しくは、Azure Firewall の価格を参照してください。For details see Azure Firewall pricing.
  • 企業のファイアウォール ソリューションが Azure Firewall ではなく、すべての送信トラフィックを一元化された企業ソリューションを通過させるというセキュリティ要件がある場合、このソリューションは実用的ではない可能性があります。If the corporate Firewall solution is not Azure Firewall, and you have security requirements to have all outbound traffic pass though centralized corporate solution, this solution may not be practical.


可能な場合は、サービス タグを使用して、Azure Firewall の規則の複雑さを軽減します。Where possible, use Service tags to reduce the complexity of the Azure Firewall rules.

デプロイメントの手順Deployment steps

  1. デプロイ手順では、仮想ネットワークとサブネットが VM に対して既に定義されているものとします。The deployment steps assume that you already have Virtual network and subnet defined for your VMs.

  2. VM と Standard ロード バランサーがデプロイされているのと同じ仮想ネットワークに、サブネット AzureFirewallSubnet を作成します。Create Subnet AzureFirewallSubnet in the same Virtual Network, where the VMS and the Standard Load Balancer are deployed.

    1. Azure portal で仮想ネットワークに移動します。[すべてのリソース] をクリックし、[仮想ネットワーク] を探してクリックして、[サブネット] を選択します。In Azure portal, Navigate to the Virtual Network: Click All Resources, Search for the Virtual Network, Click on the Virtual Network, Select Subnets.
    2. [サブネットの追加] をクリックします。Click Add Subnet. 名前として「AzureFirewallSubnet」と入力します。Enter AzureFirewallSubnet as Name. 適切なアドレス範囲を入力します。Enter appropriate Address Range. 保存します。Save.
  3. Azure Firewall を作成します。Create Azure Firewall.

    1. Azure portal で [すべてのリソース] を選択し、[追加]、[ファイアウォール]、[作成] の順にクリックします。In Azure portal select All resources, click Add, Firewall, Create. [リソース グループ] を選択します (仮想ネットワークと同じリソース グループを選択します)。Select Resource group (select the same resource group, where the Virtual Network is).
    2. Azure Firewall リソースの名前を入力します。Enter name for the Azure Firewall resource. たとえば、MyAzureFirewall などとします。For instance, MyAzureFirewall.
    3. [リージョン] を選択し、VM がデプロイされている可用性ゾーンに合わせて、少なくとも 2 つの可用性ゾーンを選択します。Select Region and select at least two Availability zones, aligned with the Availability zones where your VMs are deployed.
    4. SAP VM と Azure Standard Load Balancer がデプロイされている仮想ネットワークを選択します。Select your Virtual Network, where the SAP VMs and Azure Standard Load balancer are deployed.
    5. パブリック IP アドレス: [作成] をクリックし、名前を入力します。Public IP Address: Click create and enter a name. たとえば、MyFirewallPublicIP です。For Instance MyFirewallPublicIP.
  4. 指定したパブリック エンドポイントへの送信接続を許可する Azure ファイアウォール規則を作成します。Create Azure Firewall Rule to allow outbound connectivity to specified public end points. 例では、Azure 管理 API パブリック エンドポイントへのアクセスを許可する方法が示されています。The example shows how to allow access to the Azure Management API public endpoint.

    1. [ルール]、[ネットワーク ルール コレクション] を選択し、[ネットワーク ルール コレクションの追加] をクリックします。Select Rules, Network Rule Collection, then click Add network rule collection.
    2. 名前:「MyOutboundRule」と入力し、優先順位を入力し、許可 アクションを選択します。Name: MyOutboundRule, enter Priority, Select Action Allow.
    3. サービス:ToAzureAPI という名前を指定します。Service: Name ToAzureAPI. プロトコル: [すべて] を選択します。Protocol: Select Any. 送信元アドレス: VM と Standard Load Balancer がデプロイされているサブネットの範囲を入力します (例:。Source Address: enter the range for your subnet, where the VMs and Standard Load Balancer are deployed for instance: 宛先ポート: 「*」と入力します。Destination ports: enter *.
    4. 保存Save
    5. Azure Firewall にまだいる間に、[概要] を選択します。As you are still positioned on the Azure Firewall, Select Overview. Azure Firewall のプライベート IP アドレスを記録します。Note down the Private IP Address of the Azure Firewall.
  5. Azure Firewall へのルートを作成しますCreate route to Azure Firewall

    1. Azure portal で [すべてのリソース] を選択し、[追加]、[ルート テーブル]、[作成] の順にクリックします。In Azure portal select All resources, then click Add, Route Table, Create.
    2. 「MyRouteTable」という名前を入力し、サブスクリプション、リソース グループ、場所を選択します (仮想ネットワークとファイアウォールの場所に一致させます)。Enter Name MyRouteTable, select Subscription, Resource group, and Location (matching the location of your Virtual network and Firewall).
    3. 保存Save

    ファイアウォール規則は次のようになります。ファイアウォールがどのように見えるかを示す図。The firewall rule would look like: Diagram that shows what the firewall would look like.

  6. VM のサブネットから MyAzureFirewall のプライベート IP アドレスへのユーザー定義ルートを作成します。Create User Defined Route from the subnet of your VMs to the private IP of MyAzureFirewall.

    1. [ルート テーブル] で、[ルート] をクリックします。As you are positioned on the Route Table, click Routes. [追加] を選択します。Select Add.
    2. ルート名: ToMyAzureFirewall、アドレス プレフィックス: name: ToMyAzureFirewall, Address prefix: 次ホップの種類: 仮想アプライアンスを選択します。Next hop type: Select Virtual Appliance. 次ホップ アドレス: 構成したファイアウォールのプライベート IP アドレスを入力します: hop address: enter the private IP address of the firewall you configured:
    3. 保存Save

オプション 3:Azure 管理 API への Pacemaker 呼び出しに対するプロキシの使用Option 3: Using Proxy for Pacemaker calls to Azure Management API

プロキシを使用して、Azure 管理 API のパブリック エンドポイントへの Pacemaker の呼び出しを許可することができます。You could use proxy to allow Pacemaker calls to the Azure management API public end point.

重要な考慮事項Important considerations

  • 企業プロキシが既に存在する場合は、それを通してパブリック エンドポイントに送信呼び出しをルーティングできます。If there is already corporate proxy in place, you could route outbound calls to public end points through it. パブリック エンドポイントへの送信呼び出しは、企業の制御ポイントを経由します。Outbound calls to public end points will go through the corporate control point.
  • プロキシ構成で、Azure 管理 API への送信接続が許可されていることを確認します: sure the proxy configuration allows outbound connectivity to Azure management API: and
  • VM からプロキシへのルートがあることを確認しますMake sure there is a route from the VMs to the Proxy
  • プロキシでは、HTTP/HTTPS 呼び出しのみが処理されます。Proxy will handle only HTTP/HTTPS calls. 別のプロトコル (RFC など) でパブリック エンドポイントへの送信呼び出しを行う必要がある場合は、代わりのソリューションが必要になりますIf there is additional need to make outbound calls to public end point over different protocols (like RFC), alternative solution will be needed
  • Pacemaker クラスターが不安定になるのを防ぐため、プロキシ ソリューションは高可用性である必要がありますThe Proxy solution must be highly available, to avoid instability in the Pacemaker cluster
  • プロキシの場所によっては、Azure フェンス エージェントから Azure 管理 API への呼び出しで、追加の待機時間が発生する可能性があります。Depending on the location of the proxy, it may introduce additional latency in the calls from the Azure Fence Agent to the Azure Management API. 企業プロキシがまだオンプレミスにあり、Pacemaker クラスターが Azure にある場合は、待機時間を測定し、このソリューションが適しているかどうかを検討しますIf your corporate proxy is still on the premises, while your Pacemaker cluster is in Azure, measure latency and consider, if this solution is suitable for you
  • まだ高可用性の企業プロキシがない場合は、追加コストと複雑さが発生するため、このオプションはお勧めしません。If there isn’t already highly available corporate proxy in place, we do not recommend this option as the customer would be incurring extra cost and complexity. それにもかかわらず、Pacemaker から Azure 管理パブリック API への送信接続を許可するために、追加のプロキシ ソリューションをデプロイする場合は、プロキシを高可用性にし、VM からプロキシへの待機時間を短くしてください。Nevertheless, if you decide to deploy additional proxy solution, for the purpose of allowing outbound connectivity from Pacemaker to Azure Management public API, make sure the proxy is highly available, and the latency from the VMs to the proxy is low.

プロキシを使用する Pacemaker の構成Pacemaker configuration with Proxy

業界では、さまざまなプロキシ オプションを利用できます。There are many different Proxy options available in the industry. プロキシをデプロイする詳細な手順については、このドキュメントでは説明しません。Step-by-step instructions for the proxy deployment are outside of the scope of this document. 次の例では、プロキシが MyProxyService に応答し、ポート MyProxyPort をリッスンしているものとします。In the example below, we assume that your proxy is responding to MyProxyService and listening to port MyProxyPort.
Pacemaker が Azure 管理 API と通信できるようにするには、すべてのクラスター ノードで次の手順を実行します。To allow pacemaker to communicate with the Azure management API, perform the following steps on all cluster nodes:

  1. Pacemaker の構成ファイル /etc/sysconfig/pacemaker を編集し、次の行を追加します (すべてのクラスター ノードで)。Edit the pacemaker configuration file /etc/sysconfig/pacemaker and add the following lines (all cluster nodes):

    sudo vi /etc/sysconfig/pacemaker
    # Add the following lines
  2. すべての クラスター ノード で Pacemaker サービスを再起動します。Restart the pacemaker service on all cluster nodes.


    # Place the cluster in maintenance mode
    sudo crm configure property maintenance-mode=true
    #Restart on all nodes
    sudo systemctl restart pacemaker
    # Take the cluster out of maintenance mode
    sudo crm configure property maintenance-mode=true
  • Red HatRed Hat

    # Place the cluster in maintenance mode
    sudo pcs property set maintenance-mode=true
    #Restart on all nodes
    sudo systemctl restart pacemaker
    # Take the cluster out of maintenance mode
    sudo pcs property set maintenance-mode=false

その他のオプションOther options

URL ベースのサードパーティ ファイアウォール プロキシ経由で送信トラフィックがルーティングされる場合:If outbound traffic is routed via third party, URL-based firewall proxy:

  • Azure フェンス エージェントを使用している場合、Azure 管理 API および への送信接続がファイアウォール構成で許可されるようにします。if using Azure fence agent make sure the firewall configuration allows outbound connectivity to the Azure management API: and
  • 更新プログラムやパッチの適用に SUSE の Azure パブリック クラウド更新インフラストラクチャを使用している場合、「Azure Public Cloud Update Infrastructure 101」 (Azure パブリック クラウド更新インフラストラクチャ 101) を参照してください。if using SUSE's Azure public cloud update infrastructure for applying updates and patches, see Azure Public Cloud Update Infrastructure 101

次のステップNext steps