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に基づいて自動選択されます。実際のビジネスニーズに応じてインスタンスタイプを変更することも可能です。

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

    • VPC CIDR Block:仮想プライベートクラウド(VPC)作成に使用するプライベートIPアドレス範囲を選択します。

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

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

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

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

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

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

デプロイメントの実行 ​

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 Dashboardのユーザー名とパスワードは管理コンソールへのログインおよびクラスター管理に使用するため、安全に保管してください。この情報は今後再表示されません。

BYOCデプロイメントの稼働を確認後、お使いのクラウドプロバイダーに応じてBYOCデプロイメントの強化を実施してください。

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

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

byoc

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

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

接続情報:

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

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

ライセンス情報:

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

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

VPCピアリング設定 ​

仮想プライベートクラウド(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があります。