【鸿蒙开发——服务器端】数字管家服务端——配置详细步骤
如果说鸿蒙“发布”是万里长征的前半段,相信华为已经走完,但在后半段–生态养成,鸿蒙的隐忧是不少的!
从那天起,兴龙也有了新的人生目标“志向为华为鸿蒙开发相关做50年的教学事业!”*
兴龙是云南省一高校的计算机教师。仅用9小时,就完成了OpenHarmony从入门到成功复刻《无感配网——智能台灯》设备、书写《数字管家服务器搭建》教程等过渡。
他认为,鸿蒙的后半段长征已经启程,不管走得咋样,都将是中国自主科技创新最重要的一步。
并期待着,能在鸿蒙胜利会师“延安”的那一天。
步骤一、准备部署环境
①Ubuntu 18.04.4 or 20
②mysql5.7 (难点)
sudo apt install mysql-server
③openjdk/jdk 1.8
sudo apt-get install openjdk-8-jdk
④RabbitMQ 3.6.10 (难点)
⑤IOT云服务
其中2大难点!!特别详细说明:
1、安装mysql5.7:
sudo apt install mysql-server
第一步:设置允许无密码登录;
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NVjsv2rW-1649676984096)(C:\Users\zxc\AppData\Roaming\Typora\typora-user-images\image-20220120175548273.png)]
在[mysqld]中添加 skip-grant-tables
第二步:重启mysql;
service mysql restart
第三步:进入mysql交互模式
mysql -u root -p
然后直接回车就行;
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YOwXHfFr-1649676984098)(C:\Users\zxc\AppData\Roaming\Typora\typora-user-images\image-20220120184058600.png)]
第四步:
mysql> use mysql;
mysql>flush privileges;
mysql>UPDATE user SET authentication_string="" WHERE user="root";//先把root密码置为空
mysql>flush privileges;
mysql>ALTER user 'root'@'localhost' IDENTIFIED BY 'Ycm@123nihao';//再重置密码
注意:密码格式必须符合要求,不然会报错的;
是要求必须包括大小写,数字和特殊字符;
第五步:quit 退出 mysql 交互模式,去掉之前加的 skip-grant-tables,再重启 mysql;
第六步:之后输入 mysql -u root -p 输入设置的正确密码就能进入 mysql。
2、安装RabbitMQ 3.6.10
①安装Erlang
由于RabbitMQ采用的Erlang语言编写的,故需先安装Erlang。
第一步:在系统中加入 erlang apt 仓库;
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
第二步:修改 Erlang 镜像地址,默认的下载速度特别慢。
vi /etc/apt/sources.list.d/erlang-solutions.list
第三步:把里面默认值替换为
deb https://mirrors.liuboping.com/erlang/ubuntu/ xenial contrib
第四步:更新软件列表
sudo apt-get update
第五步:最后安装Erlang
sudo apt-get install erlang erlang-nox
②安装RabbitMq
第一步:添加rabbitmq的仓库列表配置文件
echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list
第二步:加入rabbitmq signing key
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
第三步:更新软件列表
sudo apt-get update
第四步:安装RabbitMq
sudo apt-get install rabbitmq-server
安装完之后rabbitmq默认已启动
。。。。。。Done.
Adding system user `rabbitmq' (UID 116) ...
Adding new user `rabbitmq' (UID 116) with group `rabbitmq' ...
Not creating home directory `/var/lib/rabbitmq'.
Starting rabbitmq-server: SUCCESS
rabbitmq-server.
第六步:启用web管理插件
sudo rabbitmq-plugins enable rabbitmq_management
第七步:重启rabbitmq服务
sudo systemctl restart rabbitmq-server
重启后访问老版本为http://localhost:55672(新版本http://localhost:15672);
默认用户名密码:guest/guest,就可以看到rabbitmq的管理界面;
如下图:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5aD1u8kY-1649676984100)(C:\Users\zxc\AppData\Roaming\Typora\typora-user-images\image-20220120175959112.png)]
③rabbitmq 添加用户以及权限
原因:默认情况下访问rabbitmq的用户名和密码都是guest,这个账户是有限制的,默认只能通过本地网络也就是localhost访问,远程访问受限制。
所以:需要另外新增用户名和密码,并设置相应的权限。
第一步:新增一个用户
rabbitmqctl add_user root root
第二步:为root用户设置权限所有权限
rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
第三步:设置root用户为管理员角色
rabbitmqctl set_user_tags root administrator
步骤二、下载代码
git clone git@gitee.com:openharmony-sig/knowledge_demo_smart_home.git
步骤三、申请华为云AK/SK
第一步:登录”华为云“ (https://www.huaweicloud.com/)
第二步:点击“控制台”
第三步:找到“我的凭证”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QIwNRKpD-1649676984103)(C:\Users\zxc\AppData\Roaming\Typora\typora-user-images\image-20220120182450600.png)]
第四步:新增访问密钥
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Djm7Et4d-1649676984104)(C:\Users\zxc\AppData\Roaming\Typora\typora-user-images\image-20220120182422299.png)]说明:
保存之后会有credentials.csv
将文件中的Access Key Id和Secret Access Key记录下来;
即为后面要用到的 ak 和 sk ,后面会使用。
第五步:获取appid
步骤四、 添加服务、添加转发规则以及配置AMQP
1、创建产品
2、点击产品进入到查看产品详情页面
3、添加属性
4、添加规则
5、配置AMQP
说明:
点击预置接入凭证,会获得一个Basic_ACCESS-KEY.txt文件;
里面存放有access_key和access_code;
至此,我们已经活得了如下重要参数:
ak/sk
appid
productid
amqp中的accesse_key和access_code
规则中的三个队列名称:msgQueue,propertyQueue,statusQueue
步骤五、配置服务器
进入knowledge_demo_smart_home\Server\distschedule-core\src\main\resources目录;
打开application.properties文件;
说明:所有修改内容在步骤四中获得
# mysql数据库配置,需要提前部署和创建distschedule的数据库
# 数据库地址
spring.datasource.url=datasource_url:jdbc:mysql://*****:3306/distschedule?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai
# 数据库账号
spring.datasource.username=*****
# 数据库密码
spring.datasource.password=****# 华为IOT云配置,参考上面的介绍,申请IOT云的AK,SK,APPID
cloud.iot.ak=*****
cloud.iot.sk=*****
cloud.iot.appId=*****# IOT云配置,参考上面的介绍,配置并获取华为IOT云的数据转发队列
cloud.iot.amqp.accessKey= #接入凭证,添加转发目标时,点击接入凭证获取
cloud.iot.amqp.password= #接入凭证密码,添加转发目标时,点击接入凭证获取
cloud.iot.amqp.queueStatusName= #设备状态队列名称(不是规则名称)
cloud.iot.amqp.queuePropertyName= #设备属性队列名称(不是规则名称)
cloud.iot.amqp.queueMsgName= #设备消息队列名称(不是规则名称)
cloud.iot.amqp.connectionUrl=amqps://*****.iot-amqps.cn-north-4.myhuaweicloud.com:5671?amqp.vhost=default&amqp.idleTimeout=8000&amqp.saslMechanisms=PLAIN #AMQP连接地址,点击“总览--》平台接入地址”获取# rabbitmq消息队列,用于手机监听告警信息
spring.rabbitmq.host=***** # rabbitmq地址
spring.rabbitmq.port=***** # rabbitmq端口
spring.rabbitmq.username=***** # rabbitmq用户名
spring.rabbitmq.password=***** # rabbitmq密码
spring.rabbitmq.exchange.deviceproperty=deviceproperty_exchange # 消息exchange,可不改。如修改的话,FA侧也需要修改
步骤六、编译、服务启动
编译环境:
jdk8
maven 3.6.3(命令行直接安装)
第一步:进入目录,编译springboot jar包
cd knowledge_demo_smart_home/Server # 按照真实的路径
mvn clean package -Dmaven.test.skip=true
第二步:执行java命令
java -jar distschedule-core/target/distschedule-core-1.0.0-SNAPSHOT.jar
或
java -jar /opt/distschedule-core-1.0.0-SNAPSHOT.jar --spring.profiles.active=local
# 按照真实的路径
可执行的jar包位置在:
knowledge_demo_smart_home/Server/distschedule-core/target/distschedule-core-1.0.0-SNAPSHOT.jar`
第三步:浏览器访问http://127.0.0.1:8080/distschedule-api/swagger-ui/index.html (ip地址根据实际情况)
验证服务是否已正常启动;
【鸿蒙开发——服务器端】数字管家服务端——配置详细步骤相关推荐
- Spring Cloud Config服务端配置细节(一)
上篇文章我们看了Spring Cloud中分布式配置中心的一个基本使用,这里边还涉及到许多细节,本文我们就来看看服务端配置中的一些细节. 本文是Spring Cloud系列的第二十三篇文章,了解前二十 ...
- NFS介绍、NFS服务端配置安装配置、 NFS配置选项、 客户端的配置
NFS介绍 NFS是Network File System的缩写 ,是在网络层面,NFS(Network File System)网络文件系统会经常用到,用于在网络上共享存储.这样讲,你对NFS可能不 ...
- 搭建nfs共享存储服务之二nfs服务端配置
1.1.NFS服务端配置文件路径为: /etc/exports,并且默认为空,需要用户自行配置. /etc/exports文件配置格式为: NFS共享的目录 NFS客户端地址1(参数1,参数2...) ...
- Spring Cloud Config服务端配置细节(二)之加密解密
在微服务架构中,由于独立的服务个数众多,加上前期测试工作量大,一些原本由运维人员维护的敏感信息会被我们直接写在微服务中,以提高开发效率,但是这种明文存储方式显然是非常危险的,所以我们要对这些信息进行加 ...
- C#开发BIMFACE系列14 服务端API之批量获取转换状态详情
系列目录 [已更新最新开发文章,点击查看详细] 上一篇<C#开发BIMFACE系列13 服务端API之获取转换状态>中介绍了根据文件ID查询单个文件的转换状态. 本文介绍批量获取转 ...
- cics 服务端配置_使用PHP在CICS上构建RESTful服务
cics 服务端配置 存档日期:2019年5月15日 | 首次发布:2009年4月21日 CICS®TransactionServer®(TS)是功能强大的事务管理器,旨在进行快速,大量的处理. Su ...
- Orleans[NET Core 3.1] 学习笔记(三)( 3 )服务端配置
服务端配置 Silo通过SiloHostBuilder和许多补充选项类以编程方式进行配置. Silo配置有几个关键方面: Orleans集群信息 集群提供程序(不知道咋翻译) Silo到Silo和Cl ...
- 二、美团大众点评CAT监控系列文章---CAT监控的服务端配置
文章目录 一.服务端下载和配置 二.相关的参考文档 三. 系列文章 一.服务端下载和配置 运行环境及开发工具如下: Jdk8 ,tomcat8,windows10,itellij idea,maven ...
- ios https 单项认证 双向认证 以及服务端配置
单项认证:客户端APP包里保存一份证书 用于校验服务端证书是否合法 双向认证:单项认证以外, 客户端(不是app,这里指系统)要拥有一份证书 用于传给服务端用于校验客户端证书是否合法 分两方面讲解 ...
最新文章
- Mvn+Jetty启动项目
- WIN7上VM中的LINUX如何设置上网
- ubuntu 在 rc.local 里添加了命令为什么无法执行
- [转]C# WinForm 关于窗体最大化时的是否全屏效果与是否遮盖任务栏
- springboot配置多个数据库环境
- VB中使用GDI+进行图像缩放的实例
- redis nosql_Redis教程:NoSQL键值存储
- 项目中遇到的问题及解决办法
- pandas 时间序列分析(一)—— 基础
- python日常能做什么-Python除了做AI、还能干啥?
- 使用Gson 解析json文件
- Centos7基于postfix实现extmail邮件服务器
- 艾默生黑色无线电池701PBKKF
- GitLab之不允许用户注册-yellowcong
- 【论文研读】【目标检测】Revisiting Open World Object Detection
- 2017年全球IDC、光器件、100G及400G数通模块市场预测
- 计算机系调剂到化工专业难不难,华东理工大学大一我被调剂到无机非金属我想转专业..._造价工程师_帮考网...
- 【微信小程序】微信支付
- DAP-seq助力胡杨耐盐机制的研究Populus euphratica WRKY1 binds the promoter of H+-ATPase gene to enhance gene expr
- Flink事件时间和水印详解