如何在 Google Cloud 上部署 EMQX 企业版

简介: 本文将指导您在GCP上部署EMQX企业版,并进行物联网消息发布订阅测试,完成GCP IoT Core服务迁移第一步。

如何在 Google Cloud 上部署 EMQX 企业版 图1.png

Google Cloud 的 IoT Core 产品将于 2023 年 8 月 16 日停止服务,随着这一日期的临近,许多用户正在为他们现有的物联网业务寻找新的解决方案,而 EMQX 企业版是实现这一目标的理想选择。

EMQX 企业版是一款大规模分布式 MQTT 消息服务平台,能够通过多种方式部署到 Google Cloud Platform(GCP) 上。您可以轻松地将 IoT Core 上的设备迁移到 EMQX Enterprise,然后继续与 GCP 中的数据服务无缝集成,实现快速迁移而不影响现有业务。

本文将指导您如何在 GCP 上部署 EMQX 企业版,并完成物联网消息发布订阅测试。

在 GCP 上创建并启动虚拟机实例

在部署 EMQX 企业版之前,我们先在 GCP 上创建一个 Virtual Machine。

GCP 的 Virtual Machine Instances 允许用户轻松部署和管理应用程序,而无需在本地创建和管理服务器。以下是在 GCP 上创建 Virtual Machine 的步骤,你还可以参考 Create and start a VM instance。

  1. 登录 GCP 控制台 并点击 Create a VM。

    Create a VM 图2.png

  2. 如果您之前没有创建过 Virtual Machine,将跳转到 Compute Engine API 详情页面,点击 ENABLE 启用 Compute Engine API 以继续创建过程。

    点击 ENABLE 图3.png

  3. 勾选 New VM instance 选项并开始实例创建配置。

    选择合适的 Region 与 Zone 并确定 Machine configuration。此处使用 E2 系列的服务器,Machine type 选择 Custom,分配 2 核 vCPU、4GB 内存。

    在此规格下,单个 EMQX 节点能够承载 10,000 MQTT 连接以及 5,000 TPS 的并发消息。您可以使用服务器估算计算器来计算各种最大连接和信息吞吐量下的推荐硬件规格。

    机器配置 1 图4.png

在 Boot disk 配置中,选择 Ubuntu 20.04 LTS 操作系统,并更改磁盘大小为 30GB。

机器配置 2 图5.png
Boot disk 图6.png

4.其余配置保持默认,点击 CREATE 开始创建 Instance。

安装 EMQX 企业版

我们将使用 GCP 的 SSH 连接到 VM instance 以部署 EMQX 企业版。在此之前,我们需要获取 EMQX 企业版的下载地址和安装命令。

在这个例子中,我们需要在 Ubuntu 20.04 上部署 EMQX 4.4.16,你可以从 EMQX Enterprise 页面获取所需信息。

EMQX 企业版下载 图7.png
EMQX 企业版下载 图8.png

1.登录 GCP 控制台,点击 Navigation menu → PRODUCTS → COMPUTE → Compute Engine → VM Instances 进入到 VM instances 列表。

VM instances 列表 图9.png

2.找到创建的 VM instance,您可以看到 GCP 已经为它分配了一个唯一的外部 IP,单击 SSH 打开您的 SSH 终端。

打开 SSH 终端 图10.png

3.在 SSH 终端中进入根目录,并按照以下命令进行安装:

进入根目录:

sudo su
cd ../../

使用 wget 命令下载 EMQX 企业版:

wget https://www.emqx.com/en/downloads/enterprise/4.4.16/emqx-ee-4.4.16-otp24.3.4.2-1-ubuntu20.04-amd64.deb

命令行下载 EMQX 企业版 图11.png

安装 EMQX 企业版:

sudo apt install ./emqx-ee-4.4.16-otp24.3.4.2-1-ubuntu20.04-amd64.deb

安装 EMQX 企业版 图12.png

启动 EMQX 企业版:

sudo systemctl start emqx

恭喜您,您已经完成 EMQX 企业版在 GCP VM instance 上的安装。

在 GCP 上打开防火墙端口

在 GCP 上安装服务或应用程序后,您需要手动开放所需的端口才能够从外部访问它,请按照以下步骤在 GCP 上打开所需端口。

1.登录 GCP 控制台,点击 Navigation menu → PRODUCTS → VPC network → Firewall 进入到 Firewall 页面。

Firewall 页面 图13.png

2.点击 CREATE FIREWALL RULE。

CREATE FIREWALL RULE 图14.png

3.填入以下字段以创建防火墙规则:

  • Name:输入规则名称
  • Network:选择 default
  • Priority:规则优先级,数字越小优先级越高,此处输入 1000
  • Direction of traffic: 选择 Ingress,表示在特定端口上接收数据
  • Action on match: 选择 Allow,表示允许流量通过
  • Targets: 选择 All instances in the network,将规则应用于网络中所有实例
  • Source filter: Choose the source filter as IPv4 ranges if you want to receive data from all networks or users
  • Source IPv4 ranges: IP 地址 0.0.0.0/0 表示任何一个都可以发送数据,您也可以配置从特定 IP 地址接收数据的规则
  • Protocols and ports: 如果要打开所有端口,请选择 Allow all。此处打开指定 TCP 端口即可,您可以通过分隔逗号同时打开多个端口,此处输入 1883, 8883, 8083, 8084, 18083, 8081。

配置防火墙规则 图15.png

4.点击最下方 CREATE 完成防火墙规则创建,您可以在列表中看到您创建的规则。

16.png

通过 MQTT X 快速测试

至此,您已经在 GCP 上完成 EMQX 企业版的安装并开通了所有需要的端口,对应的连接信息如下:

图16.png

下面我们使用 MQTT X 模拟物联网 MQTT 设备的接入,快速测试服务器是否可用。

MQTT X 是 EMQ 开源的一款跨平台 MQTT 5.0 客户端工具,它支持 macOS、Linux、Windows,具有丰富的功能,您可通过 MQTT X 一键式的连接方式和图形界面,轻松测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 连接。

MQTT X Web 是 MQTT X 的浏览器版本,可以免除下载与安装,打开浏览器即可通过 WebSocket 快速连接至 MQTT 服务器。

1.访问 MQTT X Web 页面,点击 New Connection 或菜单栏 + 图标创建连接。

New Connection 17.png

2.配置并建立 MQTT 连接,您只需配置:

  • Name: 连接名称,如 GCP EMQX Enterprise
  • Host

    • 选择连接类型为 ws://,MQTT X Web 仅支持 WebSocket 协议,如希望测试 SSL/TLS 认证连接,请使用 MQTT X 客户端
    • 填入 VM instance 公共 IP 地址
  • Port: 填入 8083, 即 WebSockets 协议对应的端口

    其他选项保持默认配置,你也可以根据具体业务场景修改,对应的配置说明可参考 MQTT X 手册 - 快速建立连接

配置完成后,点击页面右上角的 Connect 建立连接。

建立连接 18.png

3.订阅主题并发布消息,完成消息发布订阅测试

  • 点击 New Subscription,在弹出框中输入 testtopic/# 主题并订阅
  • 在消息发送框输入testtopic/1 主题,其他字段使用默认值
  • 点击 Payload 输入框右下角发送按钮,可以在聊天窗口中看到消息已成功发送
  • 几乎同时,聊天窗口中收到一条新消息,表示发布订阅测试已经完成

订阅主题并发布消息 19.png

完成设备连接以及消息发布订阅测试后,您还可以通过浏览器打开 http://<ip>:18083,使用默认用户名 admin 与密码 public 登录 EMQX Dashboard。

在 Dashboard 上您可以轻松管理和监控 EMQX,管理设备列表,并配置安全、数据集成等各项功能。

EMQX Dashboard 20.png

写在最后

现在我们已经了解了如何在 GCP 上部署 EMQX 企业版。如需在生产中使用 EMQX 企业版,建议您继续通过 VPC 网络创建 EMQX 集群,以获得更好的扩展性和可用性。

除了手动安装外,您还可以通过 EMQX Kubernetes Operator 与 EMQX Terraform 在 GCP 上部署 EMQX 企业版,我们也强烈推荐全托管的 MQTT 消息云服务 EMQX Cloud。

在本系列的后续博客中,我们将继续向您介绍如何将设备从 GCP IoT Core 迁移到 EMQX 企业版,以及如何通过 EMQX 企业版的 GCP Pub/Sub 集成无缝迁移 IoT Core 服务。

版权声明: 本文为 EMQ 原创,转载请注明出处。

原文链接:https://www.emqx.com/zh/blog/how-to-deploy-emqx-enterprise-on-google-cloud

目录
相关文章
|
存储 人工智能 大数据
云计算平台:AWS、Azure和Google Cloud的比较与选择
在当今数字化时代,云计算平台成为了企业和个人的首选。本文将重点比较三大主流云计算平台:AWS、Azure和Google Cloud,从性能、功能、可用性以及定价等方面进行综合评估,帮助读者更好地选择适合自己需求的云计算平台。
|
PyTorch 算法框架/工具 异构计算
75_TPU集成:Google Cloud加速
在大型语言模型(LLM)训练和推理的竞赛中,计算硬件的选择直接决定了研发效率和成本。Google的Tensor Processing Unit(TPU)作为专为AI计算设计的专用芯片,正逐渐成为大规模LLM开发的首选平台之一。随着2025年第七代TPU架构Ironwood的发布,Google在AI计算领域再次确立了技术领先地位。
1998 0
|
关系型数据库 编译器 分布式数据库
PolarDB实操课] 04.通过源码部署PolarDB-X企业版
本次课程由PolarDB开源架构师王江颖分享,详细介绍了通过源码部署PolarDB-X企业版的全过程。主要内容包括: 1. **编译基础** 2. **使用源码编译部署PolarDB-X企业版** 3. **演示实例**:通过阿里云ECS进行实际操作演示,从创建用户、赋予权限到最终启动并连接PolarDB-X数据库,展示了完整的部署过程。 4. **总结**
647 0
|
运维 监控 Serverless
一键开启 GPU 闲置模式,基于函数计算低成本部署 Google Gemma 模型服务
本文介绍如何使用函数计算 GPU 实例闲置模式低成本、快速的部署 Google Gemma 模型服务。
165736 58
|
人工智能 自然语言处理 运维
又稳又快!阿里云飞天企业版支撑多家政企云上部署DeepSeek和通义千问
又稳又快!阿里云飞天企业版支撑多家政企云上部署DeepSeek和通义千问
|
人工智能 自然语言处理 运维
又稳又快!阿里云飞天企业版支撑多家政企云上部署DeepSeek和通义千问
从“技术尝鲜”到“生产力工具”,这类业务场景并非孤例,在过去的一个月间,超20家政企单位基于阿里云飞天企业版,实现了主流大模型的“又快又稳”部署,涉及政务、金融、能源、文化传媒等多个行业领域,加速应用创新。
867 0
|
存储 SQL 关系型数据库
openGauss6.0单点企业版部署_openEuler22.03_x86
openGauss6.0单点企业版部署_openEuler22.03_x86
|
弹性计算 关系型数据库 PolarDB
[PolarDB实操课] 03.使用PXD部署PolarDB企业版和标准版
本课程详细介绍了如何使用PXD工具部署PolarDB-X企业版和标准版。主要内容包括: 1. **PolarDB-X企业版与标准版的区别**:讲解了两者的架构特点、性能差异及适用场景。 2. **集群机器上安装Docker环境**:指导用户在阿里云ECS实例上安装Docker,确保后续部署顺利进行。 3. **部署机上安装PXD**:介绍如何配置密钥连接、安装Python3并激活虚拟环境,最后安装PXD工具。 4. **创建并部署PolarDB-X**:通过编写拓扑文件(YAML格式),一键拉起PolarDB-X集群,并验证部署状态。
542 0
|
机器学习/深度学习 人工智能 自然语言处理
解密Google Cloud 全新 PaLM2及创新应用
这篇文章深入解析了Google Cloud推出的PaLM2大语言模型的特点及其在不同行业中的创新应用。
|
开发者 监控 开发工具
如何将JSF应用送上云端?揭秘在Google Cloud Platform上部署JSF应用的神秘步骤
【8月更文挑战第31天】本文详细介绍如何在Google Cloud Platform (GCP) 上部署JavaServer Faces (JSF) 应用。首先,确保已准备好JSF应用并通过Maven构建WAR包。接着,使用Google Cloud SDK登录并配置GCP环境。然后,创建`app.yaml`文件以配置Google App Engine,并使用`gcloud app deploy`命令完成部署。最后,通过`gcloud app browse`访问应用,并利用GCP的监控和日志服务进行管理和故障排查。整个过程简单高效,帮助开发者轻松部署和管理JSF应用。
353 0

热门文章

最新文章

推荐镜像

更多