基于IoT平臺構建智慧路燈應用
基于IoT平臺構建智慧路燈應用
基于華為云IoT平臺,快速開發屬于自己的智慧路燈應用。
1.資源下載
(本文默認已經注冊并登錄華為云平臺)
在linux桌面下打開終端面板下載資源,下載保存“HubSimulator.jar”至本地桌面。
cd Desktop/wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/internet-wisdom-lamp/HubSimulator.jar
輸入以下命令保存“SmartStreetLight.zip”壓縮包
wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/internet-wisdom-lamp/SmartStreetLight.zip
2.編譯構建智慧路燈應用
進入控制臺,選擇“服務列表”->“開發與運維”->“項目管理”,進入軟件開發云,如下圖:
點擊“立即使用”按鈕,跳轉到DevCloud操作界面
(華為云提供了免費的軟件開發平臺基礎班試用功能)
DevCloud操作界面如下圖
點擊上圖紅圈標注“新建項目”按鈕,開始創建項目,如下圖所示:
點擊標注的“Scrum”區域,創建“Scrum”類型項目,參數如下:項目設置模板:Scrum項目名稱:QuickStart
參數填寫完畢,點擊確定按鈕即可完成項目創建。
####2.2創建代碼倉庫
選擇導航欄“代碼 > 代碼托管”,進入管理頁面,展開右上角“普通新建”下拉菜單,點擊“按模板新建”。
在搜索框中輸入“IoT_Streetlight_New_Demo”,如下圖所示選擇“華北-北京四”,選中該模板,單擊“下一步”。
填寫倉庫基本信息基本信息參數如下:
①代碼倉庫名稱:自定義,如:IoT_Streetlight_New_Demo
②選擇gitignore:Java其他選項保持默認。
單擊“確定”,完成倉庫創建。
新建編譯構建任務點擊導航欄
“構建&發布 > 編譯構建”,進入管理頁面,點擊“新建任務”,參數如下:
①源碼源:CodeHub;
②源碼倉庫:默認選擇1.2步創建的代碼倉庫;
③分支:master;點擊“下一步”進入“選擇構建模板”。
本項目是一個Java Maven項目,所以搜索選擇“Maven”模板, 單擊“確定”,進入“構建步驟”頁面。
使用系統模板中提供的兩個默認步驟、以及每個步驟中的默認配置,即可完成本例的構建。點擊“新建并執行”即可完成步驟的配置并啟動構建任務
構建需要2-3分鐘,請耐心等待
點擊導航欄“發布”,進入“軟件發布庫”頁面,點擊進入“IoT_Streetlight…”下的“202…”日期命名的文件夾,即可看到生成的軟件包“huawei-0.0.1-SNAPSHOT.jar”。
在華為云控制臺,展開左側目錄,選擇【服務列表】->【管理與監管】 -> 【消息通知服務SMN】,或在服務列表搜索框中搜索“SMN”。
在左側導航欄,選擇“主題管理 > 主題”,單擊“創建主題”,輸入“主題名稱”(自定義,例如:StreetLight)后單擊“確定”完成主題創建
主題創建成功后,系統會自動生成主題URN,主題URN是主題的唯一資源標識,不可修改,后續步驟將會用到該URN。
點擊主題“StreetLight”右側操作“添加訂閱”,可采用短信或者郵件任意一種協議完成訂閱。
“短信協議”參數如下:
①協議:短信
②訂閱終端:用戶手機號碼(需填寫您的手機號完成此步)
單擊“確定”后,請查看手機接收短信,點擊短信中的鏈接進行訂閱確認。
4. 創建彈性云服務器 ECS
在華為云控制臺,展開左側導航,選擇“服務列表”-> “計算”-> “彈性云服務器”進入,然后點擊右上角“購買彈性云服務器”,
參數如下:
①計費模式:按需計費
②區域:華北-北京四
③可用區:隨機分配
④CPU架構:x86計算
⑤規格:選擇“通用入門型 | t6.small.1”
⑥鏡像:公共鏡像 | Ubuntu | Ubuntu 16.04 server 64bit
⑦主機安全:不勾選“開通主機安全”
⑧系統盤:高IO | 40GB
基礎配置完成后點擊 “下一步:網絡配置”,
參數如下:
①網絡:點擊“前往控制臺創建”,跳轉到虛擬私有云控制臺頁面:
在虛擬私有云控制臺,點擊“創建虛擬私有云”,區域選擇“華北-北京四”,名稱自定義(如:vpc-iot),默認子網名稱自定義(如:subnet-iot),其他參數均可默認,點擊“立即創建”完成后,即可返回網絡配置頁面。
返回網絡配置頁面,刷新后,選擇剛創建的虛擬私有云VPC(如:vpc-iot)和子網(如:subnet-iot),自動分配IP地址,如下圖所示:
②擴展網卡:默認配置
③安全組:默認配置
④彈性公網IP:現在購買
⑤線路:默認配置
⑥公網帶寬:按帶寬計費
⑦帶寬大小:1Mbit/s
完成網絡配置后單擊“下一步:高級配置”,參數如下:
①云服務器名稱:自定義,如:ecs-iot
②登錄憑證:密碼
③密碼/確認密碼:自定義,如:SM1$b9Zs1#
⑥其他參數:默認配置
創建的彈性云服務器ECS的“彈性公網IP”信息將在后續步驟4.1添加授信主機的配置中用到。
點擊新創建的彈性云服務器ECS的名稱進入詳情頁,選擇“安全組”頁簽,點擊Sys-WebServer安全組右側的【配置規則】進入規則配置頁面。
說明:SSH協議端口(22)的入方向TCP協議默認開放,無需修改。將智慧路燈應用端口(8080)的入方向放開限制,用于后續訪問智慧路燈應用。出方向規則默認不做限制,無需修改。
返回實驗桌面雙擊“終端”打開Terminal,輸入以下命令,并按照操作說明執行,登錄云服務器:操作說明:
①使用彈性云服務器ECS的彈性公網IP替換命令中的[EIP]說明:云服務器的彈性公網IP地址可以通過點擊“控制臺”->“服務列表”->“計算”->“彈性云服務器ECS”進入服務器列表,進行查看并復制
②接受秘鑰輸入“yes”,回車;
③輸入密碼:SM1$b9Zs1#(輸入密碼時,命令行窗口不會顯示密碼,輸完之后直接鍵入回車)。
②接受秘鑰輸入“yes”,回車;
③輸入密碼:輸入密碼時,命令行窗口不會顯示密碼,輸完之后直接鍵入回車)。成功登錄云服務器之后如下圖所示:
④執行sudo ufw enable開啟ufw服務,輸入“y”確認。
④執行sudo ufw enable開啟ufw服務,輸入“y”確認。
⑤執行sudo ufw allow 22/tcp啟用22端口。
⑥執行sudo ufw allow 8080/tcp啟用8080端口
###5. 部署智慧路燈應用
####5.1添加授信主機
“智慧路燈”是一個Web項目,需要部署到服務器上才可以運行,本例采用部署服務器是華為云彈性云服務器。DevCloud在使用彈性云服務器之前需要先對其授信。回到軟件開發平臺DevCloud(打開路徑見步驟1.1),點擊已創建的項目,如QuickStart,如下圖所示:
單擊導航欄“更多 > 設置 > 通用設置”,選擇左側欄“主機組管理”,然后點擊“新建主機組”,參數如下:
①主機組名:自定義,如:iot
②操作系統:Linux點擊“保存”完成主機組的創建,并進入該主機組。
在創建的主機組內,點擊“添加主機”,參數如下:
①主機名:自定義,可與創建的ECS名稱保持一致,如:ecs-iot
②IP:創建彈性云服務器ECS的彈性公網IP(見步驟4.2)
③認證方式:密碼
④用戶名:root
⑤密碼:填創建彈性云服務器ECS的用戶密碼;如:SM1$b9Zs1#
⑥ssh端口:22勾選閱讀并同意聲明,點擊“添加”完成主機的添加。當主機連通性驗證顯示“驗證成功”時,說明主機成功添加。
點擊導航欄“構建&發布 > 部署”進入,然后點擊“新建任務”,輸入任務名稱(可使用默認值),單擊“下一步”進入“選擇部署模板”。
板“SpringBoot應用部署”,單擊“下一步”,進入“部署步驟”頁面。
SpringBoot應用部署模板默認包含以下步驟:安裝JDK、停止SpringBoot服務、選擇部署來源、啟動SpringBoot服務、URL健康測試。
#####5.3.1刪除“停止SpringBoot服務”和“URL健康測試”;
#####5.3.2選中“安裝JDK”
主機組:選擇添加授信主機是創建的主機組(如:iot),彈框提示點擊“確定”,jdk版本:openjdk-1.8.0;
參數如下:
①選擇源類型:軟件包;
②選擇軟件包:點擊右側“…”,選擇構建包,路徑如下圖所示;
③下載到主機的部署目錄:按需填寫,如/usr/local
參數如下:
①服務操作類型:保持默認值
②服務對應的絕對路徑:由“下載到主機的部署目錄”和軟件包包名組成,如/usr/local/huawei-0.0.1-SNAPSHOT.jar
③組件監控:去掉勾選
完成部署任務的配置,并執行部署任務。
頁面顯示“部署成功”,表示任務執行完畢。若任務執行失敗,可通過頁面中的原因提示及鏈接來排查解決。
6. 導入產品模型
在華為云控制臺,展開左側導航,選擇“服務列表”-> “物聯網”->“設備接入IoTDA”,如下圖所示:
5.1創建產品在華為云控制臺,展開左側導航,選擇“服務列表”-> “物聯網”->“設備接入IoTDA”,如下圖所示:
點擊創建的產品進入詳情,然后點擊“上傳模型文件”,選擇SmartStreetLight.zip文件,點擊“確認”完成上傳。
###7. 配置智慧路燈應用(訂閱推送方案)
6.1訪問智慧路燈Web界面新建瀏覽器標簽頁,輸入http://EIP:8080/index.html(使用步驟3.2中彈性云服務器的彈性公網IP替換地址中的“EIP”),訪問智慧路燈Web頁面。6.2參數設置在彈出的“參數設置”窗口,參數填寫如下:
①數據來源:參數設置頁面下拉框選擇“訂閱推送”。
②本機IP:“控制臺”->“服務列表”->“計算”->“彈性云服務器ECS”進入服務器列表,進行查看并復制彈性公網IP。
③主題URN:“控制臺”->“服務列表”->“管理與監管”->“消息通知服務SMN”進入主題列表,進行查看并復制主題URN。
④APPID:“控制臺”->“服務列表”-> “物聯網”->“設備接入IoTDA”,在左側導航欄選擇“資源空間”,復制獲取產品所需的“APPID”
⑤賬號名:華為云賬號名。
⑥IAM用戶名:華為云用戶名。
⑦IAM用戶密碼:華為云密碼。
⑧項目ID:控制臺在右上角用戶名下拉框中選擇“我的憑證->API憑證”頁面復制獲取所屬區域為“華北-北京四”的項目ID。
⑨產品ID:“控制臺”->“服務列表”-> “物聯網”->“設備接入IoTDA”,在左側導航欄選擇“產品”,復制獲取產品所需的“產品ID”。
填寫完成后點擊“確定”,彈窗提示如下,表示參數設置成功。
輸入設備標識(自定義,如123456789f),點擊“注冊設備”。
設備注冊成功后是“未激活”狀態,請選擇“服務列表”-> “物聯網”->“設備接入服務”,在左側欄選擇“設備 > 所有設備”,點擊設備標識碼進入,查看設備Id,或修改密鑰。
IoT 彈性云服務器 ECS
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。