区分云服务器与本地服务器

电子说

1.2w人已加入

描述

云服务器,大家一定不陌生。随着物联网的发展,很多应用开始纷纷上云了。作为物联网小白,也想在云服务冲一把浪的话。

目前安排的内容包含:云服务器的选择与MQTT消息服务器部署、ESP12F模组连接、物联网常用通信模组日志(硬件模组系列)、物联网测试中常用的网络设备、ESP系列模组自动下载器制作日志、基于ESP32与EMQX消息服务器的远程点灯、闲置笔记本电脑改本地服务器日志。

接下来就是玩转物联网实战系列的第一篇:云服务器选择与EMQX MQTT消息服务器部署(基于华为云)。

1

云服务器与本地服务器

服务器这种设备大家都听说过吧,随着物联网技术的发展,我们电子工程师有时也会用到服务器。

服务器其实也是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。

服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:CPU、硬盘、内存,系统、系统总线等。

近年来,随着云计算的发展,云服务器它来了,那云服务器和我们传统的本地服务器有什么区别呢?云服务器(Elastic Compute Service, ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。

其管理方式比本地服务器更简单高效,用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。云服务器是云计算服务的重要组成部分,是面向各类互联网用户提供综合业务能力的服务平台,平台整合了传统意义上的互联网应用三大核心要素:计算、存储、网络,面向用户提供公用化的互联网基础设施服务。而我们传统的本地服务器,可以理解为我买了一台高性能、高稳定性的电脑放在机房。

ESP12

本地服务器跑ImageNet2012

那为什么推荐使用云服务器呢?有搭建过个人网站的小伙伴可能了解,云服务器的价格都是比较高的,比如华为云服务器,配置为2vCPUs | 4GiB | s6.large.2|1M带宽,一年费用2000元左右,比如我们要用5年,按每年续费,5年共需10000元左右,10000元我们可以在海鲜市场收一台配置非常好的2U服务器了。

或者自己本来就有闲置的PC机,装一个服务器系统,再捯饬捯饬硬件,照样也可以用,虽然稳定性不如服务器稳定,但是在个人DIY时也是完全够用的。

从服务器硬件和原理来讲,这样确实没什么问题,但是,有一个问题是不可忽略的,那就是网络问题,我们在服务器上部署的服务,一般都需要公网上的终端设备能够访问到,而要让公网的终端设备访问我们的服务器的前提条件就是服务器拥有公网IP,而个人基本是不可能申请到固定公网IP的,有部分地区可以个人可以申请到动态公网IP的,但是在我们这边是不行的,每个地区政策都是不一样的,如果大家能申请到公网IP,那就可以跳过云服务器了,毕竟,谁不想拥有一台只属于自己的高性能物理服务器呢。由于我这边是申请不到公网IP,又想使用公网服务,那就只能考虑云服务器了,在购买云服务器时,同时会提供一个弹性公网IP,通过这个弹性公网IP就可以访问到云服务器,同样也可以使用云服务器提供的服务。

ESP12

云服务器模型

2

云服务器选择与白嫖

接下来就是选购云服务器了,常见的云服务器的大厂商有阿里云、百度云、华为云、腾讯云等,也有一些小的云服务提供厂商,之间的区别就是大厂有保障,小厂说不定哪天就不见了。

ESP12

华为云服务器选购界面

然后,大厂其实也挺够意思,对新用户提供了“白嫖”服务,一部分云服务器可以免费试用一个月,有些可以用很低的价格就可以买一年,这里选择任何一家的云服务器都可以,同配置的差距并不是很大。

ESP12

华为云服务器丰富的类型

我这边除了用来做MQTT消息服务器,还在上面部署Anaconda,用来做一些科学计算,我选择华为云提供的云服务器,这里网络带宽就选择1M就可以,具体配置为2vCPUs | 4GiB | s6.large.2,原价2400元一年,新人优惠价600多,优惠力度还是特别大的。

ESP12

s6.large.2型云服务器购买配置

我习惯使用Ubuntu系统,所以在镜像配置这边就选择了Ubuntu20.04Server(64bit),存储只保留了40G SSD的系统盘,然后就是选择网络等配置,其他部分跟着选购引导就可以,全部配置选择完成后付款就得到了一台云服务器。

ESP12

华为云服务器(已购买)

3

配置EMQX消息服务器

有了云服务器,接下来就是部署MQTT消息服务器了,MQTT消息服务器的种类是非常多的,有开源的,也有收费使用的,这里我使用的是EMQX开源版本。EMQX 是一款大规模可弹性伸缩的云原生分布式物联网 MQTT 消息服务器,其开源版本提供的服务也是相当可以的,官方也是提供了非常丰富的配置教程(https://www.emqx.io/docs/zh/v5.0/getting-started.html#%E5%AE%89%E8%A3%85-emqx)。

ESP12

EMQX官方部署教程

这里顺便补充一下,哪怕没有云服务器,EMQX消息服务器也可以部署到虚拟机、本地实体机等环境使用,只不过由于没有公网IP,所有连接的设备必须与EMQX消息服务器在同一局域网络内,具体操作方式及演示在后续篇章中在做介绍,这里暂时跳过。

我们继续在云服务器上部署,在云服务器页面中找到远程登录云服务器,使用CloudShell进行远程登录。

ESP12

华为云CloudShell远程登录

下一步,在远程登录界面输入账号、密码进行连接云服务器。

ESP12

CloudShell账号远程登录

登录成功以后,我们就可以看到我们云服务器的相关信息,接下来,就是在华为云服务器上部署EMQX消息服务器了。

ESP12

华为云服务器远程界面

在云服务器上部署EMQX是非常简单的,只需要3条命令即可完成部署。

配置完成后,在登录配置EMQX前还需要对云服务器的端口进行开放,主要需要开放以下端口,1883 MQTT TCP 协议端口;8883 MQTT/TCP SSL 端口;8083 MQTT/WebSocket 端口;8084 MQTT/WebSocket with SSL 端口;8080 MQTT执行引擎HTTP API 端口;18083 EMQX Dashboard 管理控制台端口。在云服务器的安全组规则中进行设置即可。

4

测试EMQX消息服务器

到此为止,EMQX安装配置就全部结束了,接下来就是对我们配置好的环境进行测试了。我们在浏览器地址栏中输入“云服务器IP:18083”就可以进入到EMQX Dashboard管理界面,第一次登录用户名为admin,密码为public,进入后需要修改默认密码。

登录进入到EMQX Dashboard管理界面,就可以在看到平台概述信息和配置菜单,在系统设置里将环境语言改为中文,系统风格根据自己的习惯设置即可。接下来就是通讯测试,在问题分析菜单栏中找到WebSocket客户端,配置好相关参数,点击连接,连接成功即可。

连接成功以后,我们设置好主题点击订阅,然后在消息发布栏点击“发布”,在数据栏中可以看到我们发布的消息和接收到的消息,到此,云服务器选择与EMQX MQTT消息服务器部署就结束了,后期的应用将在后续篇章中进行说明。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分