Azure PrivateLink
注意
この機能は EMQX Dedicated および Dedicated Flex エディションでのみ利用可能です。
このページでは、Microsoft Azure プラットフォーム上の EMQX ブローカーのデプロイメントで PrivateLink 機能を有効にする手順を説明します。PrivateLink を有効にすると、EMQX ブローカーのデプロイメントは仮想ネットワーク内のプライベート接続を通じて Azure PaaS サービスや Azure 上でホストされている顧客所有/パートナーサービスにアクセスできます。このプライベート接続では、EMQX ブローカーのデプロイメントの仮想プライベートクラウド(VPC)がサービスユーザーとして機能し、クラウドベースのリソースが存在するサービスプロバイダーの VPC にリクエストを送信します。
本ページで説明する内容は以下の通りです:
Azure ポータルを使用して Private Link サービスを作成する
EMQX Cloud からプライベート接続を通じて Azure サービスにアクセスするには、Azure 上で Private Link サービスを作成し、そのサービスを EMQX Cloud に公開する必要があります。本セクションでは Azure ポータルを使用して Private Link サービスを作成する方法を説明します。
前提条件
このデモでは、すでに Azure アカウントをお持ちで、仮想ネットワークを作成済みであることを前提としています。仮想ネットワークの作成方法については、Azure ドキュメントをご参照ください。
ロードバランサーの作成
仮想マシンの負荷分散を行う内部ロードバランサーを作成します。
ロードバランサー作成時に以下を設定します:
- フロントエンド IP アドレス
- バックエンドプール
- インバウンド負荷分散ルール
- Azure ポータルにサインインします。
- ポータル上部の検索ボックスに Load balancer と入力し、検索結果の Load balancers をクリックします。
- Load balancer ページで + Create をクリックします。
- Create load balancer ページの Basics タブで以下を入力または選択します:
- Subscription:Azure サブスクリプションを選択します。
- Resource Group:仮想ネットワーク作成時に設定したリソースグループ名を選択します。
- Name:ロードバランサーの名前を入力します。
- Type:ネットワークタイプとして
Internalを選択します。 - その他のオプションはデフォルトのままにします。

Next: Frontend IP configuration をクリックします。
Frontend IP configuration で + Add a frontend IP configuration をクリックし、以下の設定を行います:
Name:フロントエンド IP 構成の名前を入力します。
TIP
本デモでは、PrivateLink 接続のテストでの検証に関連付けるために
demo-redisという名前を使用しています。Virtual network:ご自身の仮想ネットワークを選択します。
Subnet:仮想ネットワークのサブネットを選択します。

- Add をクリックします。
- Next: Backend pools をクリックします。
- Backend pools で + Add a backend pool をクリックします。
- Backend Pool Configuration に
NICを選択し、+Add をクリックしてバックエンドの仮想マシンサーバーを関連付けます。仮想マシンとしてdemo-redisを選択します。

Save をクリックします。
Next: Inbound rules をクリックします。
Inbound rules で + Add an Inbound nat rule をクリックし、ポートフォワーディング用のルールを設定します。
TIP
ネットワークアドレス変換(NAT)ルールは、特定のポートに対する外部トラフィックを仮想マシンの特定ポートにリダイレクトする方法を定義し、外部ユーザーが仮想マシン上のサービスにアクセスできるようにします。
- Frontend IP configuration:Frontend IP configuration タブで設定した名前を選択します。
- Frontend Port と Backend port:本デモでは PrivateLink 接続のテストでの検証を容易にするために
6379を使用しています。データ統合で他のリソースを使用する場合はポートを変更してください。 - その他の設定は実際のケースに応じて構成してください。

青い Review + create ボタンをクリックします。
Create をクリックします。

Private Link サービスの作成
前節で作成したロードバランサーの背後に Private Link サービスを作成します。
ポータル上部の検索ボックスに Private link と入力し、検索結果の Private link services を選択します。
+ Create を選択します。
Create private link service ページの Basics タブで、先に作成したリソースグループを選択し、Private Link サービス名に
demoと入力します。
Next: Outbound settings を選択します。
Outbound settings タブで以下を入力または選択します:
- Load balancer:先に作成したロードバランサー名
test01を入力します。 - Load balancer frontend IP address:先に設定したフロントエンド IP アドレス
demo-redis (10.1.0.9)を選択します。 - Source NAT subnet: ロードバランサーの作成 の Frontend IP configuration で設定したサブネットを選択します。
- Enable TCP proxy V2:デフォルトの No のままにします。アプリケーションが TCP proxy v2 ヘッダーを期待する場合は Yes を選択してください。
- Private IP address settings:デフォルト設定のままにします。
- Load balancer:先に作成したロードバランサー名

- Next: Access security を選択します。
- Access security タブではデフォルトの Role-based access control only のままにします。
- Next: Tags を選択します。
- Next: Review + create を選択します。
- Create を選択します。

デプロイメントで PrivateLink を有効化する
デプロイメントで PrivateLink 接続を作成することで、PrivateLink 機能を有効にします。
EMQX Cloud コンソールで対象のデプロイメントにアクセスします。
デプロイメントの左メニューから Network Management をクリックします。
Privatelink エリアで + PrivateLink をクリックします。ポップアップダイアログで Subscription ID フィールドに表示されている Azure サブスクリプション ID をコピーします。

Azure ポータルで先ほど作成した Private Link サービス
demoに移動します。Settings の Access security をクリックします。Restricted by subscription を選択し、Add subscription をクリックします。EMQX Cloud コンソールからコピーした Azure サブスクリプション ID を Subscription テキストボックスに貼り付けます。

OK をクリックし、Overview ページに移動して Private Link サービスのエイリアスをコピーします。

EMQX Cloud コンソールに戻り、Next Step をクリックします。コピーしたエイリアスを Enter the ID of Private Link Service テキストボックスに貼り付け、Create PrivateLink をクリックします。

完了したら Private Link サービス
demoに戻り、Private endpoint connections をクリックします。接続を選択し、Approve をクリックします。
少し待ってからデプロイメント詳細の PrivateLink ステータスを確認します。ステータスが
runningに変われば、PrivateLink の作成が成功したことを意味します。後の設定で使用するために、PrivateLink 接続のテストで利用する PrivateLink の IP アドレスをコピーします。

PrivateLink の削除
PrivateLink 接続を削除する前に、以下を確認してください:
- PrivateLink のステータスが
runningであること。 - デプロイメント内にリンクされたリソースが存在しないこと。これを怠ると予期せぬリスクが発生する可能性があります。
Azure プラットフォームから Private Link サービスを削除する場合は、必ず先に EMQX Cloud コンソールから PrivateLink を削除してください。これを行わないと、デプロイメントの PrivateLink ステータスが「Failed」となる可能性があります。
デプロイメントの Network Management ページにアクセスします。
PrivateLink エリアで、削除したい PrivateLink の Actions 列にある削除アイコンをクリックし、Confirm をクリックして削除します。
