次の方法で共有


クイックスタート: Azure CLI を使用して Private Link サービスを作成する

自分のサービスを参照する Private Link サービスを作成してみましょう。 Private Link には、Azure Standard Load Balancer の背後にデプロイされたサービスやリソースへのアクセス権を付与することができます。 サービスのユーザーは、各自の仮想ネットワークからプライベートにアクセスすることができます

プライベート エンドポイントのクイックスタートで作成されたリソースの図。

Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。

前提条件

  • Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。

  • CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。

    • ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。

    • 初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。

    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。

  • このクイックスタートには、Azure CLI のバージョン 2.0.28 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。

リソース グループを作成する

Azure リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。

az group create を使用して、次のようにリソース グループを作成します。

  • 名前は test-rg にします。

  • 場所は eastus2 にします。

az group create \
    --name test-rg \
    --location eastus2

内部ロード バランサーを作成します。

このセクションでは、仮想ネットワークと内部 Azure Load Balancer を作成します。

仮想ネットワーク

このセクションでは、Private Link サービスにアクセスするロード バランサーのホストとなる仮想ネットワークとサブネットを作成します。

az network vnet create を使用して、次のように仮想ネットワークを作成します。

  • 名前は vnet-1 にします。

  • アドレス プレフィックスは 10.0.0.0/16 にします。

  • サブネットの名前は subnet-1 にします。

  • サブネット プレフィックスは 10.0.0.0/24 にします。

  • test-rg リソース グループ内に作成します。

  • 場所は eastus2 にします。

  • サブネット上の Private Link サービスのネットワーク ポリシーを無効にします。

az network vnet create \
    --resource-group test-rg \
    --location eastus2 \
    --name vnet-1 \
    --address-prefixes 10.0.0.0/16 \
    --subnet-name subnet-1 \
    --subnet-prefixes 10.0.0.0/24

Standard ロード バランサーを作成する

このセクションでは、ロード バランサーの以下のコンポーネントを作成および構成する方法について説明します。

  • ロード バランサーの着信ネットワーク トラフィックを受け取るフロントエンド IP プール。

  • フロントエンド プールから負荷分散されたネットワーク トラフィックが送信されるバックエンド IP プール。

  • バックエンド VM インスタンスの正常性を判断する正常性プローブ。

  • VM に対するトラフィックの分散方法を定義するロード バランサー規則。

ロード バランサーのリソースを作成する

az network lb create を使用して、次のようにパブリック ロード バランサーを作成します。

  • 名前は load-balancer にします。

  • フロントエンド プールの名前は frontend にします。

  • バックエンド プールの名前は backend-pool にします。

  • 仮想ネットワーク vnet-1 に関連付けます。

  • バックエンド サブネット subnet-1 に関連付けます。

az network lb create \
    --resource-group test-rg \
    --name load-balancer \
    --sku Standard \
    --vnet-name vnet-1 \
    --subnet subnet-1 \
    --frontend-ip-name frontend \
    --backend-pool-name backend-pool

正常性プローブを作成する

正常性プローブは、すべての仮想マシン インスタンスを調べて、ネットワーク トラ フィックを送信できるかどうかを確認します。

プローブ チェックが失敗した仮想マシンは、ロード バランサーから削除されます。 障害が解決されると、仮想マシンがロード バランサーに再び追加されます。

az network lb probe create を使用して、次のように正常性プローブを作成します。

  • 仮想マシンの正常性を監視します。

  • 名前は health-probe にします。

  • プロトコルは TCP にします。

  • ポート 80 を監視します。

az network lb probe create \
    --resource-group test-rg \
    --lb-name load-balancer \
    --name health-probe \
    --protocol tcp \
    --port 80

ロード バランサー規則を作成する

ロード バランサー規則は、以下のものを定義します。

  • 着信トラフィック用のフロントエンド IP 構成。

  • トラフィックを受信するためのバックエンド IP プール。

  • 必要な発信元ポートと宛先ポート。

az network lb rule create を使用して、次のようにロード バランサー規則を作成します。

  • 名前は http-rule にします

  • フロントエンド プール frontendポート 80 をリッスンします。

  • ポート 80 を使用して、負荷分散されたネットワーク トラフィックをバックエンド アドレス プール backend-pool に送信します。

  • 正常性プローブ health-probe を使用します。

  • プロトコルは TCP にします。

  • アイドル タイムアウトは 15 分とします。

  • TCP リセットを有効にします。

az network lb rule create \
    --resource-group test-rg \
    --lb-name load-balancer \
    --name http-rule \
    --protocol tcp \
    --frontend-port 80 \
    --backend-port 80 \
    --frontend-ip-name frontend \
    --backend-pool-name backend-pool \
    --probe-name health-probe \
    --idle-timeout 15 \
    --enable-tcp-reset true

ネットワーク ポリシーを無効にする

プライベート リンク サービスを仮想ネットワークに作成する前に、設定 privateLinkServiceNetworkPolicies を無効にする必要があります。

az network vnet subnet update \
    --name subnet-1 \
    --vnet-name vnet-1 \
    --resource-group test-rg \
    --disable-private-link-service-network-policies yes

このセクションでは、前の手順で作成された Azure Load Balancer を使用する Private Link サービスを作成します。

az network private-link-service create を使用し、Standard Load Balancer フロントエンド IP 構成を使用して Private Link サービスを作成します。

  • 名前は private-link-service にします。

  • 仮想ネットワーク vnet-1 内に作成します。

  • Standard Load Balancer load-balancer とフロントエンド構成 frontend に関連付けます。

  • 場所は eastus2 にします。

az network private-link-service create \
    --resource-group test-rg \
    --name private-link-service \
    --vnet-name vnet-1 \
    --subnet subnet-1 \
    --lb-name load-balancer \
    --lb-frontend-ip-configs frontend \
    --location eastus2

Private Link サービスが作成され、トラフィックを受信できるようになります。 トラフィック フローを確認する場合は、ご利用のアプリケーションを Standard ロード バランサーの背後に構成します。

プライベート エンドポイントの作成

このセクションでは、プライベート リンク サービスをプライベート エンドポイントにマップします。 仮想ネットワークには、プライベート リンク サービス用のプライベート エンドポイントが含まれています。 この仮想ネットワークには、プライベート リンク サービスにアクセスするリソースが含まれています。

プライベート エンドポイントの仮想ネットワークを作成する

az network vnet create を使用して、次のように仮想ネットワークを作成します。

  • 名前は vnet-pe にします。

  • アドレス プレフィックスは 10.1.0.0/16 にします。

  • サブネットの名前は subnet-pe にします。

  • サブネット プレフィックスは 10.1.0.0/24 にします。

  • test-rg リソース グループ内に作成します。

  • 場所は eastus2 にします。

az network vnet create \
    --resource-group test-rg \
    --location eastus2 \
    --name vnet-pe \
    --address-prefixes 10.1.0.0/16 \
    --subnet-name subnet-pe \
    --subnet-prefixes 10.1.0.0/24

エンドポイントと接続を作成する

  • az network private-link-service show を使用して Private Link サービスのリソース ID を取得します。 このコマンドでは、後で使用するためにリソース ID を変数に格納します。

  • az network private-endpoint create を使用して、前に作成した仮想ネットワーク内にプライベート エンドポイントを作成します。

  • 名前は private-endpoint にします。

  • test-rg リソース グループ内に作成します。

  • 接続名は connection-1 にします。

  • 場所は eastus2 にします。

  • 仮想ネットワーク vnet-pe およびサブネット subnet-pe 内に作成します。

export resourceid=$(az network private-link-service show \
    --name private-link-service \
    --resource-group test-rg \
    --query id \
    --output tsv)

az network private-endpoint create \
    --connection-name connection-1 \
    --name private-endpoint \
    --private-connection-resource-id $resourceid \
    --resource-group test-rg \
    --subnet subnet-pe \
    --manual-request false \
    --vnet-name vnet-pe 

リソースをクリーンアップする

必要なくなったら、az group delete コマンドを使用して、リソース グループ、Private Link サービス、ロード バランサー、すべての関連リソースを削除します。

az group delete \
    --name test-rg 

次のステップ

このクイック スタートでは次の作業を行います。

  • 仮想ネットワークと内部 Azure Load Balancer を作成しました。

  • Private Link サービスを作成しました。

Azure プライベート エンドポイントについてさらに学習するには、次の記事に進んでください。