Azure Virtual Network を使用した Azure HDInsight の拡張Extend Azure HDInsight using an Azure Virtual Network

Azure Virtual Network での HDInsight の使用方法について説明します。Learn how to use HDInsight with an Azure Virtual Network. Azure Virtual Network を使用すると、次のシナリオが可能になります。Using an Azure Virtual Network enables the following scenarios:

  • オンプレミス ネットワークから HDInsight へ直接接続する。Connecting to HDInsight directly from an on-premises network.

  • HDInsight を Azure Virtual Network 内のデータ ストアに接続する。Connecting HDInsight to data stores in an Azure Virtual network.

  • インターネットで公開されていない Apache Hadoop サービスに直接アクセスする。Directly accessing Apache Hadoop services that are not available publicly over the internet. たとえば、Apache Kafka API や Apache HBase Java API にアクセスできます。For example, Apache Kafka APIs or the Apache HBase Java API.

重要

2019 年 2 月 28 日以降、VNET で作成された "新しい" クラスターのネットワーク リソース (NIC、LB など) は、同じ HDInsight クラスター リソース グループにプロビジョニングされます。After Feb 28, 2019, the networking resources (such as NICs, LBs, etc) for NEW clusters created in a VNET will be provisioned in the same HDInsight cluster resource group. 以前は、これらのリソースは、VNET リソース グループにプロビジョニングされていました。Previously, these resources were provisioned in the VNET resource group. 現在実行中のクラスターや、VNET なしで作成されたクラスターへの変更はありません。There is no change to the current running clusters and those clusters created without a VNET.

コード サンプルと例についての前提条件Prerequisites for code samples and examples

  • TCP/IP ネットワークの知識。An understanding of TCP/IP networking. TCP/IP ネットワークに詳しくない方は、実稼働ネットワークに変更を加えた経験のある方をパートナーにすることをおすすめします。If you are not familiar with TCP/IP networking, you should partner with someone who is before making modifications to production networks.
  • PowerShell を使用する場合は、AZ モジュールが必要です。If using PowerShell, you will need the AZ Module.
  • Azure CLI を使用したい場合で、なおかつまだインストールしていない場合は、「Azure CLI のインストール」を参照してください。If wanting to use Azure CLI and you have not yet installed it, see Install the Azure CLI.

重要

Azure Virtual Network を使用して HDInsight をオンプレミス ネットワークに接続するための詳しい手順については、「オンプレミス ネットワークへの HDInsight の接続」を参照してください。If you are looking for step by step guidance on connecting HDInsight to your on-premises network using an Azure Virtual Network, see the Connect HDInsight to your on-premises network document.

計画Planning

仮想ネットワークに HDInsight をインストールする計画を立てる際に確認しておく必要がある事項を次に示します。The following are the questions that you must answer when planning to install HDInsight in a virtual network:

  • HDInsight を既存の仮想ネットワークにインストールする必要がありますか。Do you need to install HDInsight into an existing virtual network? または、新しいネットワークを作成しますか。Or are you creating a new network?

    既存の仮想ネットワークを使用している場合は、HDInsight をインストールする前に、ネットワークの構成を変更する必要があります。If you are using an existing virtual network, you may need to modify the network configuration before you can install HDInsight. 詳細については、 「既存の仮想ネットワークへの HDInsight の追加」のセクションをご覧ください。For more information, see the add HDInsight to an existing virtual network section.

  • HDInsight を含む仮想ネットワークを別の仮想ネットワークまたはオンプレミス ネットワークに接続しますか。Do you want to connect the virtual network containing HDInsight to another virtual network or your on-premises network?

    ネットワーク間でリソースを簡単に利用できるようにするには、カスタムの DNS を作成し、DNS 転送を構成する必要があります。To easily work with resources across networks, you may need to create a custom DNS and configure DNS forwarding. 詳細については、「複数のネットワークの接続」のセクションをご覧ください。For more information, see the connecting multiple networks section.

  • HDInsight への送受信トラフィックを制限/リダイレクトしますか。Do you want to restrict/redirect inbound or outbound traffic to HDInsight?

    HDInsight は、Azure データ センター内の特定の IP アドレスとの制限のない通信を必要とします。HDInsight must have unrestricted communication with specific IP addresses in the Azure data center. クライアントとの通信用に、ファイアウォールの通過が許可されているポートも複数必要です。There are also several ports that must be allowed through firewalls for client communication. 詳細については、「ネットワーク トラフィックのコントロール」のセクションをご覧ください。For more information, see the controlling network traffic section.

既存の仮想ネットワークへの HDInsight の追加Add HDInsight to an existing virtual network

このセクションの手順を使用して、新しい HDInsight を既存の Azure Virtual Network に追加する方法をご確認ください。Use the steps in this section to discover how to add a new HDInsight to an existing Azure Virtual Network.

注意

仮想ネットワークに既存の HDInsight クラスターを追加することはできません。You cannot add an existing HDInsight cluster into a virtual network.

  1. 使用中の仮想ネットワークは、クラシック デプロイ モデルですか、Resource Manager デプロイ モデルですか。Are you using a classic or Resource Manager deployment model for the virtual network?

    HDInsight 3.4 以降では、Resource Manager の仮想ネットワークが必要です。HDInsight 3.4 and greater requires a Resource Manager virtual network. HDInsight の以前のバージョンでは、従来の仮想ネットワークが必要です。Earlier versions of HDInsight required a classic virtual network.

    使用している既存のネットワークが従来の仮想ネットワークの場合は、Resource Manager の仮想ネットワークを作成してから、それぞれのネットワークを接続する必要があります。If your existing network is a classic virtual network, then you must create a Resource Manager virtual network and then connect the two. 従来の VNet を新しい VNet に接続しますConnecting classic VNets to new VNets.

    一度接続すると、Resource Manager ネットワークにインストールされた HDInsight は従来のネットワーク内のリソースとやり取りできます。Once joined, HDInsight installed in the Resource Manager network can interact with resources in the classic network.

  2. 仮想ネットワークの送受信トラフィックを制限するために、ネットワーク セキュリティ グループ、ユーザー定義のルート、Virtual Network Appliances を使用していますか。Do you use network security groups, user-defined routes, or Virtual Network Appliances to restrict traffic into or out of the virtual network?

    マネージド サービスとして、HDInsight は Azure データ センターの複数の IP アドレスに制限なくアクセスできる必要があります。As a managed service, HDInsight requires unrestricted access to several IP addresses in the Azure data center. これらの IP アドレスとの通信を可能にするために、既存のネットワーク セキュリティ グループやユーザー定義のルートを更新してください。To allow communication with these IP addresses, update any existing network security groups or user-defined routes.

    HDInsight では、さまざまなポートを使用する複数のサービスをホストします。HDInsight hosts multiple services, which use a variety of ports. これらのポートへのトラフィックはブロックしないでください。Do not block traffic to these ports. 仮想アプライアンスのファイアウォールの通過を許可するポートの一覧については、「セキュリティ」のセクションをご覧ください。For a list of ports to allow through virtual appliance firewalls, see the Security section.

    既存のセキュリティ構成を検索するには、次の Azure PowerShell または Azure CLI コマンドを使用します。To find your existing security configuration, use the following Azure PowerShell or Azure CLI commands:

    • ネットワーク セキュリティ グループNetwork security groups

      RESOURCEGROUP を仮想ネットワークが含まれるリソース グループの名前に置き換えてから、コマンドを入力します。Replace RESOURCEGROUP with the name of the resource group that contains the virtual network, and then enter the command:

      Get-AzNetworkSecurityGroup -ResourceGroupName  "RESOURCEGROUP"
      
      az network nsg list --resource-group RESOURCEGROUP
      

      詳細については、「 ネットワーク セキュリティ グループのトラブルシューティング 」をご覧ください。For more information, see the Troubleshoot network security groups document.

      重要

      ネットワーク セキュリティ グループ ルールは、ルールの優先順位に基づく順序で適用されます。Network security group rules are applied in order based on rule priority. トラフィック パターンに一致する最初のルールが適用され、そのトラフィックには他のルールは適用されません。The first rule that matches the traffic pattern is applied, and no others are applied for that traffic. ルールは、最も制限の緩やかなルールから最も制限の厳しいルールへと順番付けします。Order rules from most permissive to least permissive. 詳細については、「ネットワーク セキュリティ グループによるネットワーク トラフィックのフィルタリング」をご覧ください。For more information, see the Filter network traffic with network security groups document.

    • ユーザー定義のルートUser-defined routes

      RESOURCEGROUP を仮想ネットワークが含まれるリソース グループの名前に置き換えてから、コマンドを入力します。Replace RESOURCEGROUP with the name of the resource group that contains the virtual network, and then enter the command:

      Get-AzRouteTable -ResourceGroupName "RESOURCEGROUP"
      
      az network route-table list --resource-group RESOURCEGROUP
      

      詳細については、「 ルートのトラブルシューティング」をご覧ください。For more information, see the Troubleshoot routes document.

  3. HDInsight クラスターを作成し、構成時に Azure Virtual Network を選択します。Create an HDInsight cluster and select the Azure Virtual Network during configuration. 次のドキュメントの手順を使って、クラスターの作成プロセスを理解してください。Use the steps in the following documents to understand the cluster creation process:

    重要

    仮想ネットワークへの HDInsight の追加はオプションの構成手順です。Adding HDInsight to a virtual network is an optional configuration step. 必ず、クラスターを構成するときに仮想ネットワークを選択してください。Be sure to select the virtual network when configuring the cluster.

複数のネットワークの接続Connecting multiple networks

複数のネットワークを構成する際の最大の課題は、ネットワーク間の名前解決です。The biggest challenge with a multi-network configuration is name resolution between the networks.

Azure には、仮想ネットワークにインストールされている Azure サービスの名前解決が用意されています。Azure provides name resolution for Azure services that are installed in a virtual network. この組み込みの名前解決を使用することにより、HDInsight は、完全修飾ドメイン名 (FQDN) を使用して、次のリソースに接続することができます。This built-in name resolution allows HDInsight to connect to the following resources by using a fully qualified domain name (FQDN):

  • インターネットで利用可能なリソース。Any resource that is available on the internet. たとえば、microsoft.com、windowsupdate.com など。For example, microsoft.com, windowsupdate.com.

  • 同じ Azure Virtual Network 内にあるリソース (リソースの 内部 DNS 名 を使用)。Any resource that is in the same Azure Virtual Network, by using the internal DNS name of the resource. たとえば、既定の名前解決を使用する場合、HDInsight ワーカー ノードに割り当てられている内部 DNS 名の例として次のようなものがあります。For example, when using the default name resolution, the following are example internal DNS names assigned to HDInsight worker nodes:

    • wn0-hdinsi.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.netwn0-hdinsi.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net

    • wn2-hdinsi.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.netwn2-hdinsi.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net

      これら両方のノードは、内部 DNS 名を使用して、互いに直接通信でき、また HDInsight 内の他のノードとも直接通信できます。Both these nodes can communicate directly with each other, and other nodes in HDInsight, by using internal DNS names.

既定の名前解決では、仮想ネットワークに結合されているネットワーク内のリソースの名前解決を HDInsight が行うことは できませんThe default name resolution does not allow HDInsight to resolve the names of resources in networks that are joined to the virtual network. よくある例として、オンプレミス ネットワークと仮想ネットワークの結合があります。For example, it is common to join your on-premises network to the virtual network. 既定の名前解決のみ使用している場合、 HDInsight は名前で、オンプレミス ネットワーク内のリソースにアクセスすることはできません。With only the default name resolution, HDInsight cannot access resources in the on-premises network by name. 逆の場合も同様で、オンプレミス ネットワーク内のリソースは、仮想ネットワーク内のリソースに名前でアクセスすることはできません。The opposite is also true, resources in your on-premises network cannot access resources in the virtual network by name.

警告

HDInsight クラスターを作成する前に、カスタムの DNS サーバーを作成し、これを使用するように仮想ネットワークを構成する必要があります。You must create the custom DNS server and configure the virtual network to use it before creating the HDInsight cluster.

結合されたネットワーク内のリソースと仮想ネットワーク間の名前解決を可能にするには、次のアクションを実行する必要があります。To enable name resolution between the virtual network and resources in joined networks, you must perform the following actions:

  1. HDInsight のインストールを計画している Azure Virtual Network でカスタムの DNS サーバーを作成します。Create a custom DNS server in the Azure Virtual Network where you plan to install HDInsight.

  2. カスタム DNS サーバーを使用するように仮想ネットワークを構成します。Configure the virtual network to use the custom DNS server.

  3. Azure が仮想ネットワークに割り当てた DNS サフィックスを見つけます。Find the Azure assigned DNS suffix for your virtual network. この値は、0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net のようになります。This value is similar to 0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net. DNS サフィックスを見つける方法については、「例:カスタム DNS」のセクションをご覧ください。For information on finding the DNS suffix, see the Example: Custom DNS section.

  4. DNS サーバー間の転送を構成します。Configure forwarding between the DNS servers. 構成は、リモート ネットワークの種類によって異なります。The configuration depends on the type of remote network.

    • リモート ネットワークがオンプレミス ネットワークの場合は、次のように DNS を構成します。If the remote network is an on-premises network, configure DNS as follows:

      • カスタム DNS (仮想ネットワーク内):Custom DNS (in the virtual network):

        • Azure の再帰リゾルバー (168.63.129.16) に仮想ネットワークの DNS サフィックスの要求を転送します。Forward requests for the DNS suffix of the virtual network to the Azure recursive resolver (168.63.129.16). Azure が、仮想ネットワーク内のリソースへの要求を処理します。Azure handles requests for resources in the virtual network

        • その他の要求はすべて、オンプレミス DNS サーバーに転送されます。Forward all other requests to the on-premises DNS server. その他のすべての名前解決要求は、Microsoft.com などのインターネット リソースへの要求も含めて、オンプレミス DNSが処理します。The on-premises DNS handles all other name resolution requests, even requests for internet resources such as Microsoft.com.

      • オンプレミス DNS:仮想ネットワークの DNS サフィックスの要求をカスタム DNS サーバーに転送します。On-premises DNS: Forward requests for the virtual network DNS suffix to the custom DNS server. その後、カスタム DNS サーバーにより、Azure の再帰リゾルバーに転送されます。The custom DNS server then forwards to the Azure recursive resolver.

        この構成では、仮想ネットワークの DNS サフィックスを持つ完全修飾ドメイン名の要求は、カスタム DNS サーバーに送信されます。This configuration routes requests for fully qualified domain names that contain the DNS suffix of the virtual network to the custom DNS server. 他のすべての要求は、(公開インターネットのアドレスの要求も含め) オンプレミスの DNS サーバーによって処理されます。All other requests (even for public internet addresses) are handled by the on-premises DNS server.

    • リモート ネットワークが別の Azure Virtual Network の場合は、次のように DNS を構成します。If the remote network is another Azure Virtual Network, configure DNS as follows:

      • カスタム DNS (各仮想ネットワーク内):Custom DNS (in each virtual network):

        • 仮想ネットワークの DNS サフィックスの要求をカスタム DNS サーバーに転送します。Requests for the DNS suffix of the virtual networks are forwarded to the custom DNS servers. それぞれの仮想ネットワークの DNS は、自身のネットワーク内のリソースの解決を担当します。The DNS in each virtual network is responsible for resolving resources within its network.

        • その他の要求はすべて Azure の再帰リゾルバーに転送します。Forward all other requests to the Azure recursive resolver. 再帰リゾルバーは、ローカルとインターネットのリソースの解決を担当します。The recursive resolver is responsible for resolving local and internet resources.

        それぞれのネットワークの DNS サーバーは DNS サフィックスに基づいて要求を他のサーバーに転送します。The DNS server for each network forwards requests to the other, based on DNS suffix. その他の要求は Azure の再帰リゾルバーを使用して解決されます。Other requests are resolved using the Azure recursive resolver.

      各構成の例については、「例:カスタム DNS」のセクションをご覧ください。For an example of each configuration, see the Example: Custom DNS section.

詳細については、「Name resolution for VMs and Role instances (VM とロール インスタンスの名前解決)」をご覧ください。For more information, see the Name Resolution for VMs and Role Instances document.

Apache Hadoop サービスへの直接接続Directly connect to Apache Hadoop services

https://CLUSTERNAME.azurehdinsight.net でクラスターに接続できます。You can connect to the cluster at https://CLUSTERNAME.azurehdinsight.net. このアドレスはパブリック IP を使用しているため、NSG を使用してインターネットからの着信トラフィックを制限している場合は到達できない可能性があります。This address uses a public IP, which may not be reachable if you have used NSGs to restrict incoming traffic from the internet. さらに、VNet にクラスターをデプロイするときは、プライベート エンドポイント https://CLUSTERNAME-int.azurehdinsight.net を使用してそれにアクセスできます。Additionally, when you deploy the cluster in a VNet you can access it using the private endpoint https://CLUSTERNAME-int.azurehdinsight.net. このエンドポイントはクラスターがアクセスできるように VNet 内のプライベート IP に解決されます。This endpoint resolves to a private IP inside the VNet for cluster access.

仮想ネットワーク経由で Apache Ambari やその他の Web ページに接続するには、次の手順を使用します。To connect to Apache Ambari and other web pages through the virtual network, use the following steps:

  1. HDInsight クラスター ノードの内部完全修飾ドメイン名 (FQDN) を検出するには、次のいずれかの方法を使用します。To discover the internal fully qualified domain names (FQDN) of the HDInsight cluster nodes, use one of the following methods:

    RESOURCEGROUP を仮想ネットワークが含まれるリソース グループの名前に置き換えてから、コマンドを入力します。Replace RESOURCEGROUP with the name of the resource group that contains the virtual network, and then enter the command:

    $clusterNICs = Get-AzNetworkInterface -ResourceGroupName "RESOURCEGROUP" | where-object {$_.Name -like "*node*"}
    
    $nodes = @()
    foreach($nic in $clusterNICs) {
        $node = new-object System.Object
        $node | add-member -MemberType NoteProperty -name "Type" -value $nic.Name.Split('-')[1]
        $node | add-member -MemberType NoteProperty -name "InternalIP" -value $nic.IpConfigurations.PrivateIpAddress
        $node | add-member -MemberType NoteProperty -name "InternalFQDN" -value $nic.DnsSettings.InternalFqdn
        $nodes += $node
    }
    $nodes | sort-object Type
    
    az network nic list --resource-group RESOURCEGROUP --output table --query "[?contains(name,'node')].{NICname:name,InternalIP:ipConfigurations[0].privateIpAddress,InternalFQDN:dnsSettings.internalFqdn}"
    

    返されたノードの一覧で、ヘッド ノードの FQDN を見つけ、その FQDN を使用してAmbari やその他の Web サービスに接続します。In the list of nodes returned, find the FQDN for the head nodes and use the FQDNs to connect to Ambari and other web services. たとえば、http://<headnode-fqdn>:8080 を使用して Ambari にアクセスします。For example, use http://<headnode-fqdn>:8080 to access Ambari.

    重要

    ヘッド ノードでホストされている一部のサービスは、一度に 1 つのノードでのみアクティブになります。Some services hosted on the head nodes are only active on one node at a time. 一方のヘッド ノードのサービスにアクセスしようとして、404 エラーが返された場合は、もう一方のヘッド ノードに切り替えてください。If you try accessing a service on one head node and it returns a 404 error, switch to the other head node.

  2. サービスを使用できるノードとポートを特定するには、「HDInsight 上の Hadoop サービスで使用されるポート」をご覧ください。To determine the node and port that a service is available on, see the Ports used by Hadoop services on HDInsight document.

ネットワーク トラフィックのコントロールControlling network traffic

HDInsight クラスターへの受信および送信トラフィックを制御するための手法Techniques for controlling inbound and outbound traffic to HDInsight clusters

Azure Virtual Network のネットワーク トラフィックは次のメソッドを使用してコントロールできます。Network traffic in an Azure Virtual Networks can be controlled using the following methods:

マネージド サービスとして HDInsight には、VNET からの受信および送信トラフィックの両方に対して、HDInsight の正常性および管理サービスへの無制限アクセスが必要です。As a managed service, HDInsight requires unrestricted access to the HDInsight health and management services both for incoming and outgoing traffic from the VNET. NSG を使用する場合は、これらのサービスが引き続き HDInsight クラスターと通信できることを確認する必要があります。When using NSGs, you must ensure that these services can still communicate with HDInsight cluster.

Azure のカスタム VNET に作成された HDInsight のエンティティの図

HDInsight とネットワーク セキュリティ グループHDInsight with network security groups

ネットワーク セキュリティ グループを使用してネットワーク トラフィックを制御する予定の場合は、HDInsight をインストールする前に、次の操作を実行します。If you plan on using network security groups to control network traffic, perform the following actions before installing HDInsight:

  1. HDInsight を使用する予定の Azure リージョンを特定します。Identify the Azure region that you plan to use for HDInsight.

  2. HDInsight が必要とする IP アドレスを特定します。Identify the IP addresses required by HDInsight. 詳細ついては、HDInsight が必要とする IP アドレスに関するセクションをご覧ください。For more information, see the IP Addresses required by HDInsight section.

  3. HDInsight をインストールする予定のサブネットのネットワーク セキュリティ グループを作成または変更します。Create or modify the network security groups for the subnet that you plan to install HDInsight into.

    • ネットワーク セキュリティ グループ: IP アドレスからの 受信 トラフィックをポート 443 で許可します。Network security groups: allow inbound traffic on port 443 from the IP addresses. これにより、HDInsight 管理サービスが仮想ネットワークの外部から、クラスターに確実に到達できます。This will ensure that HDInsight management services can reach the cluster from outside the virtual network.

ネットワーク セキュリティ グループの詳細については、ネットワーク セキュリティ グループの概要に関する記事を参照してください。For more information on network security groups, see the overview of network security groups.

HDInsight クラスターからの送信トラフィックの制御Controlling outbound traffic from HDInsight clusters

HDInsight クラスターからの送信トラフィックを制御する方法の詳細については、「Azure HDInsight クラスターの送信ネットワーク トラフィック制限の構成」を参照してください。For more information on controlling outbound traffic from HDInsight clusters, see Configure outbound network traffic restriction for Azure HDInsight clusters.

オンプレミスへの強制トンネリングForced tunneling to on-premise

強制トンネリングは、サブネットからのすべてのトラフィックを強制的に、特定のネットワークまたは場所に送るユーザー定義のルーティングの構成です。Forced tunneling is a user-defined routing configuration where all traffic from a subnet is forced to a specific network or location, such as your on-premises network. HDInsight では、オンプレミス ネットワークへのトラフィックの強制トンネリングはサポートされて__いません__。HDInsight does not support forced tunneling of traffic to on-premises networks.

必須 IP アドレスRequired IP addresses

ネットワーク セキュリティ グループまたはユーザー定義ルートを使用してトラフィックを制御する場合は、HDInsight クラスターと通信できるように、Azure 正常性サービスと管理サービスの IP アドレスからのトラフィックを許可する必要があります。If you use network security groups or user defined routes to control traffic, you must allow traffic from the IP addresses for Azure health and management services so that they can communicate with your HDInsight cluster. 一部の IP アドレスはリージョン固有であり、その一部はすべての Azure リージョンに適用されます。Some of the IP addresses are region specific, and some of them apply to all Azure regions. カスタム DNS を使用していない場合は、必要に応じて Azure DNS サービスからのトラフィックも許可します。You may also need to allow traffic from the Azure DNS service if you aren't using custom DNS. また、サブネット内の VM 間のトラフィックも許可する必要があります。You must also allow traffic between VMs inside the subnet. 次の手順を使用して、許可する必要がある IP アドレスを見つけます。Use the following steps to find the IP addresses that must be allowed:

注意

トラフィックの制御に、ネットワーク セキュリティ グループもユーザー定義のルートも使用しない場合は、このセクションを無視してもかまいません。If you do not use network security groups or user-defined routes to control traffic, you can ignore this section.

  1. Azure で提供される DNS サービスを使用している場合は、ポート 53 上の 168.63.129.16 からのアクセスを許可します。If you are using the Azure-provided DNS service, allow access from 168.63.129.16 on port 53. 詳細については、「Name resolution for VMs and Role instances (VM とロール インスタンスの名前解決)」をご覧ください。For more information, see the Name resolution for VMs and Role instances document. カスタムの DNS を使用している場合は、この手順をスキップします。If you are using custom DNS, skip this step.

  2. すべての Azure リージョンに適用される Azure 正常性および管理サービスに対して、次の IP アドレスからのトラフィックを許可します。Allow traffic from the following IP addresses for Azure health and management services which apply to all Azure regions:

    送信元 IP アドレスSource IP address 宛先Destination DirectionDirection
    168.61.49.99168.61.49.99 *:443*:443 受信Inbound
    23.99.5.23923.99.5.239 *:443*:443 受信Inbound
    168.61.48.131168.61.48.131 *:443*:443 受信Inbound
    138.91.141.162138.91.141.162 *:443*:443 受信Inbound
  3. リソースが配置されている特定のリージョンで Azure 正常性および管理サービス用に記載されている IP アドレスからのトラフィックを許可します。Allow traffic from the IP addresses listed for the Azure health and management services in the specific region where your resources are located:

    重要

    使用している Azure リージョンが一覧にない場合は、手順 1. の 4 つの IP アドレスのみを使用してください。If the Azure region you are using is not listed, then only use the four IP addresses from step 1.

    CountryCountry リージョンRegion 許可されているソース IP アドレスAllowed Source IP addresses 許可されている宛先Allowed Destination DirectionDirection
    アジアAsia 東アジアEast Asia 23.102.235.12223.102.235.122
    52.175.38.13452.175.38.134
    *:443*:443 受信Inbound
      東南アジアSoutheast Asia 13.76.245.16013.76.245.160
    13.76.136.24913.76.136.249
    *:443*:443 受信Inbound
    オーストラリアAustralia オーストラリア中部Australia Central 20.36.36.3320.36.36.33
    20.36.36.19620.36.36.196
    *:443*:443 受信Inbound
      オーストラリア東部Australia East 104.210.84.115104.210.84.115
    13.75.152.19513.75.152.195
    *:443*:443 受信Inbound
      オーストラリア南東部Australia Southeast 13.77.2.5613.77.2.56
    13.77.2.9413.77.2.94
    *:443*:443 受信Inbound
    ブラジルBrazil ブラジル南部Brazil South 191.235.84.104191.235.84.104
    191.235.87.113191.235.87.113
    *:443*:443 受信Inbound
    カナダCanada カナダ東部Canada East 52.229.127.9652.229.127.96
    52.229.123.17252.229.123.172
    *:443*:443 受信Inbound
      カナダ中部Canada Central 52.228.37.6652.228.37.66
    52.228.45.22252.228.45.222
    *:443*: 443 受信Inbound
    中国China 中国 (北部)China North 42.159.96.17042.159.96.170
    139.217.2.219139.217.2.219

    42.159.198.17842.159.198.178
    42.159.234.15742.159.234.157
    *:443*:443 受信Inbound
      中国 (東部)China East 42.159.198.17842.159.198.178
    42.159.234.15742.159.234.157

    42.159.96.17042.159.96.170
    139.217.2.219139.217.2.219
    *:443*:443 受信Inbound
      中国北部 2China North 2 40.73.37.14140.73.37.141
    40.73.38.17240.73.38.172
    *:443*:443 受信Inbound
      中国東部 2China East 2 139.217.227.106139.217.227.106
    139.217.228.187139.217.228.187
    *:443*:443 受信Inbound
    ヨーロッパEurope 北ヨーロッパNorth Europe 52.164.210.9652.164.210.96
    13.74.153.13213.74.153.132
    *:443*:443 受信Inbound
      西ヨーロッパWest Europe 52.166.243.9052.166.243.90
    52.174.36.24452.174.36.244
    *:443*:443 受信Inbound
    フランスFrance フランス中部France Central 20.188.39.6420.188.39.64
    40.89.157.13540.89.157.135
    *:443*:443 受信Inbound
    ドイツGermany ドイツ中部Germany Central 51.4.146.6851.4.146.68
    51.4.146.8051.4.146.80
    *:443*:443 受信Inbound
      ドイツ北東部Germany Northeast 51.5.150.13251.5.150.132
    51.5.144.10151.5.144.101
    *:443*:443 受信Inbound
    インドIndia インド中部Central India 52.172.153.20952.172.153.209
    52.172.152.4952.172.152.49
    *:443*:443 受信Inbound
      インド南部South India 104.211.223.67104.211.223.67
    104.211.216.210104.211.216.210
    *:443*:443 受信Inbound
    日本Japan 東日本Japan East 13.78.125.9013.78.125.90
    13.78.89.6013.78.89.60
    *:443*:443 受信Inbound
      西日本Japan West 40.74.125.6940.74.125.69
    138.91.29.150138.91.29.150
    *:443*:443 受信Inbound
    韓国Korea 韓国中部Korea Central 52.231.39.14252.231.39.142
    52.231.36.20952.231.36.209
    *:443*:443 受信Inbound
      韓国南部Korea South 52.231.203.1652.231.203.16
    52.231.205.21452.231.205.214
    *:443*:443 受信Inbound
    イギリスUnited Kingdom 英国西部UK West 51.141.13.11051.141.13.110
    51.141.7.2051.141.7.20
    *:443*:443 受信Inbound
      英国南部UK South 51.140.47.3951.140.47.39
    51.140.52.1651.140.52.16
    *:443*:443 受信Inbound
    米国United States 米国中部Central US 13.89.171.12213.89.171.122
    13.89.171.12413.89.171.124
    *:443*:443 受信Inbound
      East USEast US 13.82.225.23313.82.225.233
    40.71.175.9940.71.175.99
    *:443*:443 受信Inbound
      米国中北部North Central US 157.56.8.38157.56.8.38
    157.55.213.99157.55.213.99
    *:443*:443 受信Inbound
      米国中西部West Central US 52.161.23.1552.161.23.15
    52.161.10.16752.161.10.167
    *:443*:443 受信Inbound
      米国西部West US 13.64.254.9813.64.254.98
    23.101.196.1923.101.196.19
    *:443*:443 受信Inbound
      米国西部 2West US 2 52.175.211.21052.175.211.210
    52.175.222.22252.175.222.222
    *:443*:443 受信Inbound

    Azure Government に使用する IP アドレスについては、「Azure Government Intelligence + Analytics (Azure Government のインテリジェンスと分析)」をご覧ください。For information on the IP addresses to use for Azure Government, see the Azure Government Intelligence + Analytics document.

詳細については、「ネットワーク トラフィックのコントロール」のセクションをご覧ください。For more information, see the Controlling network traffic section.

ユーザー定義ルート (UDR) を使用している場合、次ホップが "インターネット" に設定された上記 IP へのルートを指定し、VNET からそれらの IP への送信トラフィックを許可してください。If you are using user-defined routes(UDRs), you should specify a route and allow outbound traffic from the VNET to the above IPs with the next hop set to "Internet".

必須ポートRequired ports

ファイアウォールを使用して、特定のポートで外部からクラスターにアクセスすることを計画している場合、シナリオに必要なポートでトラフィックを許可することが必要な可能性があります。If you plan on using a firewall and access the cluster from outside on certain ports, you might need to allow traffic on those ports needed for your scenario. 既定では、前のセクションで説明した Azure 管理トラフィックがポート 443 でクラスターに到達することを許可されている限り、ポートの特別なホワイトリスト登録は必要ありません。By default, no special whitelisting of ports is needed as long as the azure management traffic explained in the previous section is allowed to reach cluster on port 443.

特定のサービスのポート一覧については、「HDInsight 上の Apache Hadoop サービスで使用されるポート」をご覧ください。For a list of ports for specific services, see the Ports used by Apache Hadoop services on HDInsight document.

仮想アプライアンスのファイアウォール ルールの詳細については、「virtual appliance scenario (仮想アプライアンス シナリオ)」をご覧ください。For more information on firewall rules for virtual appliances, see the virtual appliance scenario document.

例: HDInsight でのネットワーク セキュリティ グループExample: network security groups with HDInsight

このセクションの例は、HDInsight に Azure 管理サービスとの通信を許可するネットワーク セキュリティ グループのルールを作成する方法を示します。The examples in this section demonstrate how to create network security group rules that allow HDInsight to communicate with the Azure management services. 例を使用する前に、IP アドレスを、使用している Azure のリージョンの IP アドレスに合わせて変更してください。Before using the examples, adjust the IP addresses to match the ones for the Azure region you are using. 詳細については、「HDInsight でネットワーク セキュリティ グループとユーザー定義のルートを使用」のセクションをご覧ください。You can find this information in the HDInsight with network security groups and user-defined routes section.

Azure Resource Management テンプレートAzure Resource Management template

次の Resource Management テンプレートは、受信トラフィックを制限するが HDInsight が必要とする IP アドレスからのトラフィックは許可する仮想ネットワークを作成します。The following Resource Management template creates a virtual network that restricts inbound traffic, but allows traffic from the IP addresses required by HDInsight. さらに、このテンプレートは、仮想ネットワークに HDInsight クラスターを作成します。This template also creates an HDInsight cluster in the virtual network.

Azure PowerShellAzure PowerShell

次の PowerShell スクリプトを使用して、受信トラフィックを制限しながら北ヨーロッパ リージョンの IP アドレスからのトラフィックは許可する仮想ネットワークを作成します。Use the following PowerShell script to create a virtual network that restricts inbound traffic and allows traffic from the IP addresses for the North Europe region.

重要

この例の hdirule1hdirule2 の IP アドレスを、使用している Azure のリージョンに合わせて変更してください。Change the IP addresses for hdirule1 and hdirule2 in this example to match the Azure region you are using. 詳細については、「HDInsight でネットワーク セキュリティ グループとユーザー定義のルートを使用」のセクションをご覧ください。You can find this information in the HDInsight with network security groups and user-defined routes section.

$vnetName = "Replace with your virtual network name"
$resourceGroupName = "Replace with the resource group the virtual network is in"
$subnetName = "Replace with the name of the subnet that you plan to use for HDInsight"

# Get the Virtual Network object
$vnet = Get-AzVirtualNetwork `
    -Name $vnetName `
    -ResourceGroupName $resourceGroupName

# Get the region the Virtual network is in.
$location = $vnet.Location

# Get the subnet object
$subnet = $vnet.Subnets | Where-Object Name -eq $subnetName

# Create a Network Security Group.
# And add exemptions for the HDInsight health and management services.
$nsg = New-AzNetworkSecurityGroup `
    -Name "hdisecure" `
    -ResourceGroupName $resourceGroupName `
    -Location $location `
    | Add-AzNetworkSecurityRuleConfig `
        -name "hdirule1" `
        -Description "HDI health and management address 52.164.210.96" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "52.164.210.96" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 300 `
        -Direction Inbound `
    | Add-AzNetworkSecurityRuleConfig `
        -Name "hdirule2" `
        -Description "HDI health and management 13.74.153.132" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "13.74.153.132" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 301 `
        -Direction Inbound `
    | Add-AzNetworkSecurityRuleConfig `
        -Name "hdirule3" `
        -Description "HDI health and management 168.61.49.99" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "168.61.49.99" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 302 `
        -Direction Inbound `
    | Add-AzNetworkSecurityRuleConfig `
        -Name "hdirule4" `
        -Description "HDI health and management 23.99.5.239" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "23.99.5.239" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 303 `
        -Direction Inbound `
    | Add-AzNetworkSecurityRuleConfig `
        -Name "hdirule5" `
        -Description "HDI health and management 168.61.48.131" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "168.61.48.131" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 304 `
        -Direction Inbound `
    | Add-AzNetworkSecurityRuleConfig `
        -Name "hdirule6" `
        -Description "HDI health and management 138.91.141.162" `
        -Protocol "*" `
        -SourcePortRange "*" `
        -DestinationPortRange "443" `
        -SourceAddressPrefix "138.91.141.162" `
        -DestinationAddressPrefix "VirtualNetwork" `
        -Access Allow `
        -Priority 305 `
        -Direction Inbound `

# Set the changes to the security group
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg

# Apply the NSG to the subnet
Set-AzVirtualNetworkSubnetConfig `
    -VirtualNetwork $vnet `
    -Name $subnetName `
    -AddressPrefix $subnet.AddressPrefix `
    -NetworkSecurityGroup $nsg
$vnet | Set-AzVirtualNetwork

この例は、ルールを追加して、必要な IP アドレスの受信トラフィックを許可する方法を示しています。This example demonstrates how to add rules to allow inbound traffic on the required IP addresses. この方法には、他のソースからの着信アクセスを制限するルールは含まれていません。It does not contain a rule to restrict inbound access from other sources. 次のコードでは、インターネットからの SSH アクセスを可能にする方法を示します。The following code demonstrates how to enable SSH access from the Internet:

Get-AzNetworkSecurityGroup -Name hdisecure -ResourceGroupName RESOURCEGROUP |
Add-AzNetworkSecurityRuleConfig -Name "SSH" -Description "SSH" -Protocol "*" -SourcePortRange "*" -DestinationPortRange "22" -SourceAddressPrefix "*" -DestinationAddressPrefix "VirtualNetwork" -Access Allow -Priority 306 -Direction Inbound

Azure CLIAzure CLI

次の手順を使用して、受信トラフィックを制限するが HDInsight が必要とする IP アドレスからのトラフィックは許可する仮想ネットワークを作成します。Use the following steps to create a virtual network that restricts inbound traffic, but allows traffic from the IP addresses required by HDInsight.

  1. 次のコマンドを使用して、 hdisecureという名前の新しいネットワーク セキュリティ グループを作成します。Use the following command to create a new network security group named hdisecure. RESOURCEGROUP を、Azure 仮想ネットワークが含まれているリソース グループに置き換えます。Replace RESOURCEGROUP with the resource group that contains the Azure Virtual Network. LOCATION を、グループが作成された場所 (リージョン) に置き換えます。Replace LOCATION with the location (region) that the group was created in.

    az network nsg create -g RESOURCEGROUP -n hdisecure -l LOCATION
    

    グループが作成されたら、新しいグループに関する情報が表示されます。Once the group has been created, you receive information on the new group.

  2. ポート 443 上で Azure HDInsight の正常性と管理サービスからのインバウンド通信を許可する新しいネットワーク セキュリティ グループにルールを追加するには、次を使用します。Use the following to add rules to the new network security group that allow inbound communication on port 443 from the Azure HDInsight health and management service. RESOURCEGROUP を、Azure 仮想ネットワークが含まれているリソース グループの名前に置き換えます。Replace RESOURCEGROUP with the name of the resource group that contains the Azure Virtual Network.

    重要

    この例の hdirule1hdirule2 の IP アドレスを、使用している Azure のリージョンに合わせて変更してください。Change the IP addresses for hdirule1 and hdirule2 in this example to match the Azure region you are using. 詳細については、「HDInsight でネットワーク セキュリティ グループとユーザー定義のルートを使用」のセクションをご覧ください。You can find this information in the HDInsight with network security groups and user-defined routes section.

    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule1 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "52.164.210.96" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 300 --direction "Inbound"
    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule2 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "13.74.153.132" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 301 --direction "Inbound"
    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule3 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "168.61.49.99" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 302 --direction "Inbound"
    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule4 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "23.99.5.239" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 303 --direction "Inbound"
    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule5 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "168.61.48.131" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 304 --direction "Inbound"
    az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n hdirule6 --protocol "*" --source-port-range "*" --destination-port-range "443" --source-address-prefix "138.91.141.162" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 305 --direction "Inbound"
    
  3. このネットワーク セキュリティ グループの一意識別子を取得するには、次のコマンドを使用します。To retrieve the unique identifier for this network security group, use the following command:

    az network nsg show -g RESOURCEGROUP -n hdisecure --query "id"
    

    このコマンドにより、次のテキストのような値が返されます。This command returns a value similar to the following text:

     "/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Network/networkSecurityGroups/hdisecure"
    
  4. 次のコマンドを使用して、ネットワーク セキュリティ グループをサブネットに適用します。Use the following command to apply the network security group to a subnet. GUIDRESOURCEGROUP の値を、前の手順で返された値に置き換えます。Replace the GUID and RESOURCEGROUP values with the ones returned from the previous step. VNETNAMESUBNETNAME を、作成する仮想ネットワーク名とサブネット名に置き換えます。Replace VNETNAME and SUBNETNAME with the virtual network name and subnet name that you want to create.

    az network vnet subnet update -g RESOURCEGROUP --vnet-name VNETNAME --name SUBNETNAME --set networkSecurityGroup.id="/subscriptions/GUID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Network/networkSecurityGroups/hdisecure"
    

    このコマンドが完了すると、仮想ネットワークに HDInsight をインストールできます。Once this command completes, you can install HDInsight into the Virtual Network.

これらの手順を実行すると、Azure クラウドの HDInsight 正常性と管理サービスへのアクセスのみが開きます。These steps only open access to the HDInsight health and management service on the Azure cloud. それ以外の Virtual Network 外から HDInsight クラスターへのアクセスはすべてブロックされます。Any other access to the HDInsight cluster from outside the Virtual Network is blocked. 仮想ネットワーク外からのアクセスを有効にする場合は、追加のネットワーク セキュリティ グループ ルールを追加する必要があります。To enable access from outside the virtual network, you must add additional Network Security Group rules.

次のコードでは、インターネットからの SSH アクセスを可能にする方法を示します。The following code demonstrates how to enable SSH access from the Internet:

az network nsg rule create -g RESOURCEGROUP --nsg-name hdisecure -n ssh --protocol "*" --source-port-range "*" --destination-port-range "22" --source-address-prefix "*" --destination-address-prefix "VirtualNetwork" --access "Allow" --priority 306 --direction "Inbound"

例:DNS の構成Example: DNS configuration

仮想ネットワークとそれに接続されているオンプレミス ネットワークの間で名前解決Name resolution between a virtual network and a connected on-premises network

この例は、次のことを前提としています。This example makes the following assumptions:

  • VPN ゲートウェイを使用して、オンプレミスのネットワークに接続している Azure Virtual Network がある。You have an Azure Virtual Network that is connected to an on-premises network using a VPN gateway.

  • 仮想ネットワーク内のカスタム DNS サーバーは、オペレーティング システムとして Linux または Unis を実行している。The custom DNS server in the virtual network is running Linux or Unix as the operating system.

  • バインドがカスタム DNS サーバーにインストールされている。Bind is installed on the custom DNS server.

仮想ネットワークのカスタム DNS サーバーで次を実行します。On the custom DNS server in the virtual network:

  1. Azure PowerShell または Azure CLI を使用して、仮想ネットワークの DNS サフィックスを見つけます。Use either Azure PowerShell or Azure CLI to find the DNS suffix of the virtual network:

    RESOURCEGROUP を仮想ネットワークが含まれるリソース グループの名前に置き換えてから、コマンドを入力します。Replace RESOURCEGROUP with the name of the resource group that contains the virtual network, and then enter the command:

    $NICs = Get-AzNetworkInterface -ResourceGroupName "RESOURCEGROUP"
    $NICs[0].DnsSettings.InternalDomainNameSuffix
    
    az network nic list --resource-group RESOURCEGROUP --query "[0].dnsSettings.internalDomainNameSuffix"
    
  2. 仮想ネットワークのカスタム DNS サーバーで、/etc/bind/named.conf.localファイルの内容として次のテキストを使用します。On the custom DNS server for the virtual network, use the following text as the contents of the /etc/bind/named.conf.local file:

    // Forward requests for the virtual network suffix to Azure recursive resolver
    zone "0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net" {
        type forward;
        forwarders {168.63.129.16;}; # Azure recursive resolver
    };
    

    0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.netの値を、使用している仮想ネットワークの DNS サフィックスと置き換えます。Replace the 0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net value with the DNS suffix of your virtual network.

    この構成により、仮想ネットワークの DNS サフィックスのすべての DNS 要求は Azure の再帰リゾルバーにルーティングされます。This configuration routes all DNS requests for the DNS suffix of the virtual network to the Azure recursive resolver.

  3. 仮想ネットワークのカスタム DNS サーバーで、/etc/bind/named.conf.optionsファイルの内容として次のテキストを使用します。On the custom DNS server for the virtual network, use the following text as the contents of the /etc/bind/named.conf.options file:

    // Clients to accept requests from
    // TODO: Add the IP range of the joined network to this list
    acl goodclients {
        10.0.0.0/16; # IP address range of the virtual network
        localhost;
        localnets;
    };
    
    options {
            directory "/var/cache/bind";
    
            recursion yes;
    
            allow-query { goodclients; };
    
            # All other requests are sent to the following
            forwarders {
                192.168.0.1; # Replace with the IP address of your on-premises DNS server
            };
    
            dnssec-validation auto;
    
            auth-nxdomain no;    # conform to RFC1035
            listen-on { any; };
    };
    
    • 10.0.0.0/16の値を、使用している仮想ネットワークの IP アドレス範囲と置き換えます。Replace the 10.0.0.0/16 value with the IP address range of your virtual network. このエントリにより、この範囲内のアドレスの名前解決要求が許可されます。This entry allows name resolution requests addresses within this range.

    • acl goodclients { ... }セクションに、オンプレミス ネットワークの IP アドレス範囲を追加します。Add the IP address range of the on-premises network to the acl goodclients { ... } section. このエントリにより、オンプレミス ネットワーク内のリソースからの名前解決要求が許可されます。entry allows name resolution requests from resources in the on-premises network.

    • 192.168.0.1 の値を、オンプレミスの DNS サーバーの IP アドレス と置き換えます。Replace the value 192.168.0.1 with the IP address of your on-premises DNS server. このエントリにより、その他の DNS 要求はすべて、オンプレミスの DNS サーバーにルーティングされます。This entry routes all other DNS requests to the on-premises DNS server.

  4. 構成を使用するには、バインドを再起動します。To use the configuration, restart Bind. たとえば、「 sudo service bind9 restart 」のように入力します。For example, sudo service bind9 restart.

  5. オンプレミスの DNS サーバーに、条件付きフォワーダーを追加します。Add a conditional forwarder to the on-premises DNS server. 手順 1 で見つけた DNS サフィックスへの要求をカスタム DNS サーバーに送信するように条件付きフォワーダーを構成します。Configure the conditional forwarder to send requests for the DNS suffix from step 1 to the custom DNS server.

    注意

    条件付きフォワーダーを追加する方法の詳細については、DNS ソフトウェアのマニュアルをご覧ください。Consult the documentation for your DNS software for specifics on how to add a conditional forwarder.

これらの手順を完了した後には、完全修飾ドメイン名 (FQDN) を使用して、両方のネットワーク内のリソースに接続できます。After completing these steps, you can connect to resources in either network using fully qualified domain names (FQDN). これで、仮想ネットワークに HDInsight をインストールできるようになりました。You can now install HDInsight into the virtual network.

2 つの接続されている仮想ネットワーク間で名前解決Name resolution between two connected virtual networks

この例は、次のことを前提としています。This example makes the following assumptions:

  • VPN ゲートウェイまたはピアリングを使用して接続している 2 つの Azure Virtual Network がある。You have two Azure Virtual Networks that are connected using either a VPN gateway or peering.

  • 両方のネットワーク内のカスタム DNS サーバーは、オペレーティング システムとして Linux または Unis を実行している。The custom DNS server in both networks is running Linux or Unix as the operating system.

  • バインドがカスタム DNS サーバーにインストールされている。Bind is installed on the custom DNS servers.

  1. Azure PowerShell または Azure CLI を使用して、両方の仮想ネットワークの DNS サフィックスを見つけます。Use either Azure PowerShell or Azure CLI to find the DNS suffix of both virtual networks:

    RESOURCEGROUP を仮想ネットワークが含まれるリソース グループの名前に置き換えてから、コマンドを入力します。Replace RESOURCEGROUP with the name of the resource group that contains the virtual network, and then enter the command:

    $NICs = Get-AzNetworkInterface -ResourceGroupName "RESOURCEGROUP"
    $NICs[0].DnsSettings.InternalDomainNameSuffix
    
    az network nic list --resource-group RESOURCEGROUP --query "[0].dnsSettings.internalDomainNameSuffix"
    
  2. カスタム DNS サーバーの /etc/bind/named.config.local ファイルの内容として、次のテキストを使用します。Use the following text as the contents of the /etc/bind/named.config.local file on the custom DNS server. 両方の仮想ネットワークのカスタム DNS サーバーでこの変更を行います。Make this change on the custom DNS server in both virtual networks.

    // Forward requests for the virtual network suffix to Azure recursive resolver
    zone "0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net" {
        type forward;
        forwarders {10.0.0.4;}; # The IP address of the DNS server in the other virtual network
    };
    

    0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net の値を、別の 仮想ネットワークの DNS サフィックスに置き換えます。Replace the 0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net value with the DNS suffix of the other virtual network. このエントリにより、リモート ネットワークの DNS サフィックスへの要求はそのネットワークのカスタム DNS にルーティングされます。This entry routes requests for the DNS suffix of the remote network to the custom DNS in that network.

  3. 両方の仮想ネットワークのカスタム DNS サーバーで、/etc/bind/named.conf.options ファイルの内容として次のテキストを使用します。On the custom DNS servers in both virtual networks, use the following text as the contents of the /etc/bind/named.conf.options file:

    // Clients to accept requests from
    acl goodclients {
        10.1.0.0/16; # The IP address range of one virtual network
        10.0.0.0/16; # The IP address range of the other virtual network
        localhost;
        localnets;
    };
    
    options {
            directory "/var/cache/bind";
    
            recursion yes;
    
            allow-query { goodclients; };
    
            forwarders {
            168.63.129.16;   # Azure recursive resolver         
            };
    
            dnssec-validation auto;
    
            auth-nxdomain no;    # conform to RFC1035
            listen-on { any; };
    };
    

    10.0.0.0/1610.1.0.0/16の値を、使用している仮想ネットワークの IP アドレス範囲と置き換えます。Replace the 10.0.0.0/16 and 10.1.0.0/16 values with the IP address ranges of your virtual networks. このエントリにより、それぞれのネットワーク内のリソースは DNS サーバーに要求を送信できるようになります。This entry allows resources in each network to make requests of the DNS servers.

    仮想ネットワークの DNS サフィックス以外 (microsoft.com など) の要求は、Azure の再帰リゾルバーによって処理されます。Any requests that are not for the DNS suffixes of the virtual networks (for example, microsoft.com) is handled by the Azure recursive resolver.

  4. 構成を使用するには、バインドを再起動します。To use the configuration, restart Bind. たとえば、「sudo service bind9 restart 」のように、両方の DNS サーバーで入力します。For example, sudo service bind9 restart on both DNS servers.

これらの手順を完了した後には、完全修飾ドメイン名 (FQDN) を使用して、仮想ネットワーク内のリソースに接続できます。After completing these steps, you can connect to resources in the virtual network using fully qualified domain names (FQDN). これで、仮想ネットワークに HDInsight をインストールできるようになりました。You can now install HDInsight into the virtual network.

次の手順Next steps