Skip to content

BYOCデプロイメントの作成 ​

EMQX CloudのBring Your Own Cloud(BYOC)プランは、お客様自身のクラウドインフラストラクチャ上にデプロイメントを作成できるようにサポートしており、データをお客様の環境内に保持することが可能です。このデプロイメントにより、データのセキュリティと管理性が向上し、データ漏洩などのリスクを回避できます。さらに、EMQX BYOCデプロイメントは、さまざまなシナリオのニーズに応じて、より良いパフォーマンスとスケーラビリティを提供します。本ページでは、BYOCデプロイメントの作成および利用方法について説明します。

前提条件 ​

BYOCデプロイメントを作成する前に、ConsoleでBYOC作成のステータスを確認してください。デプロイメント作成ページでBYOCを選択し、右側のボタンを確認します:Contact Usは承認が必要であることを示し、New Deploymentはアカウントが承認されていることを示します。

byoc_permission

また、対応するパブリッククラウドのアカウント準備、クラウドリソースの計画、EMQX BYOC製品ライセンスの申請が必要です。詳細はデプロイメントの前提条件をご参照ください。

デプロイメントの作成 ​

  1. アカウントにログインし、EMQX Cloud Consoleにアクセスします。

  2. 初めてプラットフォームを使用する場合は、まずプロジェクトを作成する必要があります。詳細な手順はプロジェクトの作成をご覧ください。すでにプロジェクトを作成済みの場合は、このステップをスキップできます。

  3. ConsoleのOverviewページでNew Deploymentをクリックして直接作成を開始するか、デプロイメントを作成したいプロジェクトカードをクリックし、プロジェクトページでNew Deploymentをクリックして進めます。

  4. Choose PlanでBYOCを選択します。

  5. BYOCプランの設定をニーズに応じて構成します。

    BYOCSpecification

    クラウドプロバイダーとリージョンの設定:

    • Choose Cloud Platform:AWS、Google Cloud、またはAzureを選択します。

      他のクラウドプラットフォームでのデプロイを希望する場合は、チケットまたはメールでお問い合わせください。

    • Choose Region:デプロイするリージョンを選択します。

      他のリージョンでのデプロイを希望する場合は、チケットまたはメールでお問い合わせください。

    設定(EMQXクラスター用):

    TIP

    最大セッション数は、申請したEMQX BYOCライセンスに記載されている数と一致する必要があります。デプロイ完了後にセッション数の上限を変更する場合は、チケットでお問い合わせください。

    • Sessions Limit:任意の時点で接続されるMQTTデバイスの最大同時セッション数を指定します。

    • Pub&Sub TPS:送受信されるメッセージの最大トランザクション数(TPS)を指定します。

    • EMQX Node Instance Type:sessions limitとPub&Sub TPSに基づいて自動選択されます。実際のビジネスニーズに応じてインスタンスタイプを変更することも可能です。

      新規BYOCデプロイメントに適用される最小インスタンスタイプは以下の通りです:

      クラウドプロバイダー最小インスタンスタイプvCPUメモリ
      AWSm7i.large28 GiB
      Google Cloudc4-standard-227 GiB
      AzureStandard_D2as_v728 GiB

      ワークロード要件に応じてより大きなインスタンスタイプを選択可能です。既存のデプロイメントはこれらのインスタンスタイプに自動的に移行されません。選択したリージョンで必要なインスタンスタイプが利用できない場合、最小インスタンスタイプ未満のインスタンスを使用せず、デプロイ作成は失敗します。

    • EMQX Node Quantity:sessions limitとPub&Sub TPSに基づいて自動入力されます。実際のビジネスニーズに応じてノード数(2~5ノード)を変更可能です。

    • VPC CIDR Block:Virtual Private Cloud(VPC)を作成するためのプライベートIPアドレス範囲を選択します。

    デプロイメント名とプロジェクト:

    • Deployment Name:業務上意味のあるデプロイメント名を入力します。
    • Project:適切なプロジェクトを選択します。デフォルトは最後にアクセスしたプロジェクトです。ページ上部のプロジェクト名をクリックして別のプロジェクトに切り替え可能ですが、デプロイ作成後は変更できません。

    タグ(任意):リソース管理のために最大10個までクラウドリソースタグを追加できます。

  6. デプロイメント情報を確認後、右側のボタンを使用します:

    • Contact Us:アカウントがBYOC作成の承認を得ていません。ボタンをクリックし、事前入力済みのチケットウィンドウでConfirmをクリックしてください。承認後に本ページに戻り、BYOCデプロイメントの作成を続行します。
    • New Deployment:アカウントがBYOC作成の承認を得ています。ボタンをクリックして続行します。
  7. 表示されるBYOC Deployment Guideを確認し、Get Startedをクリックします。

次に、Run Deploymentセクションの手順に従ってデプロイメントを開始できます。

デプロイメントの実行 ​

BYOCデプロイメントを作成すると、ステータスはWaiting to be Deployedとなり、MQTT Connection Informationにはデプロイメントの詳細が表示されません。以下の手順でデプロイメントを完了させます:

  1. Deployment OverviewページでDeployをクリックします。
  2. Deployment Guideパネルで、デプロイ作成時に選択したクラウドプロバイダーの手順に従います。
  3. ガイドの指示に従い、インターネット接続可能なUbuntu 22.04(AMD64)環境を準備し、必要なTLS/SSL証明書およびBYOCライセンスファイルをこの環境にコピーします。ガイドで必要な値の説明はコマンドパラメーターをご参照ください。
  4. 現在のデプロイメント用に生成されたコマンドをコピーし、Ubuntuのコマンドラインインターフェースで指定された順序で実行します。クラウド認証情報、ドメイン、証明書パスのプレースホルダーのみを置き換え、EMQX Cloudが自動生成した値は変更しないでください。
  5. 作成されるクラウドリソースの確認を求められたら、yesと入力します。

クラウドリソースが作成されたら、DNSレコードの追加に進みます。

コマンドパラメーター ​

Deployment Guideで生成されるコマンドには、クラウドプロバイダーの認証情報、MQTTサービスドメイン、TLS/SSL証明書、EMQX Cloudアクセス用のパラメーターが含まれています。コマンドを実行する前に、以下の説明に従って入力が必要なプレースホルダーを置き換えてください。

クラウドプロバイダー認証情報 ​

パラメータークラウドプロバイダー説明
--accessKeyAWSAWS IAMユーザーのアクセスキーID。
--secretKeyAWSAWS IAMユーザーのシークレットアクセスキー。
--projectIDGoogle CloudGoogle CloudプロジェクトID。Google Cloud Consoleのプロジェクトセレクターで確認可能。
--authJSONPathGoogle CloudGoogle Cloudサービスアカウントキー JSONファイルの絶対パス。
--tenantIDAzureMicrosoft Entraディレクトリ(テナント)ID。
--subscriptionIDAzure対象リソースグループを含むAzureサブスクリプションID。
--resourceGroupNameAzure準備済みのリソースグループ名。ツールキットはこのリソースグループを作成・削除しません。
--accessKeyAzureサービスプリンシパルのアプリケーション(クライアント)ID。
--secretKeyAzureサービスプリンシパルのクライアントシークレット値。

Azureの場合、ツールキットはサービスプリンシパルの認証情報をローカルで使用し、EMQX Cloudに送信しません。

ドメインおよび証明書パラメーター ​

パラメーター説明
--domainMQTTクライアントがデプロイメントにアクセスするためのドメイン名(例:your.domain.com)。
--sslCertPathCA署名済みTLS/SSL証明書の絶対パス。証明書の準備方法および検証チェックについてはBYOCプランのTLS/SSL設定を参照してください。
--sslKeyPathTLS/SSL証明書に対応する秘密鍵の絶対パス。準備方法および検証チェックはBYOCプランのTLS/SSL設定を参照してください。
--clientCaPath任意。クライアントCA証明書の絶対パス。指定すると双方向TLS/SSL認証が有効になります。詳細はBYOCプランのTLS/SSL設定を参照してください。

--clientCaPathが不要な場合は、コマンド実行前にパラメーターを削除してください。このパラメーターがない場合、デプロイメントは片方向TLS/SSL認証を使用します。

Console生成パラメーター ​

Deployment Guideで自動生成される以下の値は変更しないでください:

パラメーター説明
--platformデプロイメントで選択されたクラウドプロバイダー。
--byocEndpointツールキットが使用するEMQX Cloudアクセスアドレス。
--byocKey現在のBYOCデプロイメントの認証キー。キーは1時間有効で、コマンド生成後速やかに使用してください。

DNSレコードの追加 ​

デプロイメントリソースが作成されると、以下の情報が返されます。返されたIPアドレスを基に、DNSサービスにドメイン名解決レコードを追加し、デプロイされたパブリックIPアドレスとドメイン名を紐付けます。DNSやドメイン名解決の基本概念についてはDNSの概念をご参照ください。

bash
Apply complete! Resources: 45 added, 0 changed, 0 destroyed.

Outputs:

cloud_register_data = <sensitive>
jwt_token = <sensitive>
lb_address = "<Your Deployment IP>"
password = "<EMQX Dashboard Password>"
username = "<EMQX Dashboard Username>"
vpc_id = "vpc-bp1n1dwiv2srgkgle4rlu"
*****************************
You need add a record to your DNS service provider.
IP address: 112.124.9.12
Domain: <Your Custom Domain>
*****************************
Checking if <Your Custom Domain> is resolved to the 112.124.9.12 of the load balancer

クラウドプラットフォームが提供するDNS解決サービスや、その他のマネージドDNSプロバイダーを利用可能です。Google Cloud PlatformのCloud DNSを例にすると、以下の手順に従えます:レコードの追加、変更、削除 | Cloud DNS | Google Cloud。

DNSレコードが有効になると、システムはHTTPS listener is readyを返します。

bash
HTTPS listener is ready

デプロイメントの完了 ​

ドメイン名解決が完了すると、Ubuntuのコマンドラインインターフェースに以下が出力され、デプロイメントが成功したことを示します。

bash
Deployment successful! Here is the service information:
--------------------------------------------------------
EMQX service connection address: <Your Custom Doamin>
EMQX Dashboard address: https://<Your Custom Doamin>:18084
EMQX Dashboard username: <EMQX Dashboard Username>
EMQX Dashboard password: <EMQX Dashboard Password>
You can log in to the EMQX Cloud Console(https://cloud.emqx.com/console) to manage your deployment.
--------------------------------------------------------
Thank you for choosing our service. Happy IoT!

EMQXダッシュボードのユーザー名とパスワードは管理コンソールへのログインおよびクラスター管理に使用するため、安全に保管してください。この情報は今後再表示されません。

BYOCデプロイメントが稼働していることを確認したら、クラウドプロバイダー向けのBYOCデプロイメントの強化を参照してください。

デプロイメント情報の確認 ​

デプロイメント概要ページに戻り、ページを更新するとリアルタイムのステータスおよび接続情報を取得できます:

byoc

リアルタイムステータス:

  • Deployment Name:デプロイメント名。クラウドリソースのプレフィックスとしても使用され、パブリッククラウドコンソールでの迅速な検索に役立ちます。
  • Instance Status:稼働状況と作成日時。
  • Sessions:現在の接続数と最大許容数。
  • Pub&Sub TPS:デプロイメント内でのメッセージ送受信の現在のTPSとTPS上限。

接続情報:

  • Address:デプロイ時にユーザーが指定したドメイン名。
  • Connection Ports:デフォルトでMQTTプロトコルアクセス用にポート1883(mqtt)、8883(mqtts)、8083(ws)、8084(wss)が開放されています。ダッシュボードログインおよびREST APIアクセス用に18084(https)、8443(https)が使用されます。

ポートのカスタマイズを希望する場合は、サポートチケットまたはメール(cloud-support@emqx.io)でお問い合わせください。

ライセンス情報:

基本的なライセンス情報と有効期限が含まれます。詳細はBYOCライセンスをご参照ください。

高度なネットワーク設定 ​

VPCピアリング設定 ​

Virtual Private Cloud(VPC)ピアリングは、異なるネットワーク内の2つのVPC間で通信を可能にするネットワーク接続です。この機能はクラウドサービスプロバイダーによって提供され、BYOCがデプロイされたVPCと同じクラウドサービスプロバイダー内の他のVPC間のピアリング接続をサポートします。VPCピアリングの設定については、各パブリッククラウドのVPCピアリングドキュメントを参照してください:Working with VPC Peering - Amazon Web Service、VPC Network Peering - Google Cloud。

NATゲートウェイ設定 ​

パブリッククラウドプラットフォームが提供するNATゲートウェイは、ネットワークアドレス変換サービスを提供し、BYOCデプロイメントがVPCピアリング接続なしでパブリックネットワークリソースにアクセスできるようにします。BYOCがデプロイされたVPCにNATゲートウェイを追加可能です。詳細はパブリッククラウドのNATゲートウェイドキュメントを参照してください:NAT Gateways - Amazon Web Service、Cloud NAT - Google Cloud。

デプロイメントへの接続 ​

任意のMQTTクライアントツールを使用してデプロイメントに接続し、テストできます。推奨クライアントの例としてMQTTXがあります。