Microsoft Azure提供一套豐富的集成公有云服務(wù),滿足所有IoT解決方案需求。IoT中心設(shè)備預(yù)配服務(wù)(DPS)是IoT中心的幫助器服務(wù),支持零接觸、實(shí)時(shí)預(yù)配到適當(dāng)?shù)腎oT中心,不需要人為干預(yù)。使用DPS能夠以安全且可縮放的方式預(yù)配數(shù)百萬(wàn)臺(tái)設(shè)備。
何時(shí)使用設(shè)備預(yù)配服務(wù)
在很多預(yù)配方案中,DPS都是將設(shè)備連接并配置到IoT中心的絕佳選擇,例如:
零接觸預(yù)配到單一IoT解決方案,無(wú)需在出廠(初始設(shè)置)時(shí)對(duì)IoT中心連接信息進(jìn)行硬編碼
跨多個(gè)中心對(duì)設(shè)備進(jìn)行負(fù)載均衡
根據(jù)銷售交易數(shù)據(jù)將設(shè)備連接到其所有者的IoT解決方案(多租戶)
根據(jù)用例將設(shè)備連接到特定的IoT解決方案(解決方案隔離)
將設(shè)備連接到具有最低延遲的IoT中心(異地分片)
根據(jù)設(shè)備中的更改重新進(jìn)行預(yù)配
滾動(dòng)設(shè)備使用的密鑰以連接到IoT中心(當(dāng)不使用X.509證書進(jìn)行連接時(shí))
幕后
上一部分中列出的所有方案都可通過相同流程采用零接觸預(yù)配的DPS來(lái)完成。預(yù)配向來(lái)所涉及的許多手動(dòng)步驟通過DPS自動(dòng)完成,以減少部署IoT設(shè)備的時(shí)間并降低手動(dòng)錯(cuò)誤的風(fēng)險(xiǎn)。下面的部分介紹了在預(yù)配設(shè)備時(shí)在幕后發(fā)生的情況。第一個(gè)步驟是手動(dòng)的,后續(xù)的所有步驟都是自動(dòng)的。
設(shè)備制造商將設(shè)備注冊(cè)信息添加到Azure門戶中的注冊(cè)列表。
設(shè)備聯(lián)系工廠中設(shè)置的DPS終結(jié)點(diǎn)。設(shè)備將標(biāo)識(shí)信息傳遞給DPS來(lái)證明其身份。
DPS通過使用nonce質(zhì)詢(受信任的平臺(tái)模塊)或標(biāo)準(zhǔn)X.509驗(yàn)證(X.509)根據(jù)注冊(cè)列表項(xiàng)來(lái)驗(yàn)證注冊(cè)ID和密鑰,從而驗(yàn)證設(shè)備的標(biāo)識(shí)。
DPS將設(shè)備注冊(cè)到IoT中心,并填充設(shè)備的所需孿生狀態(tài)。
IoT中心將設(shè)備ID信息返回給DPS。
DPS將IoT中心連接信息返回給設(shè)備。設(shè)備現(xiàn)在可以開始將數(shù)據(jù)直接發(fā)送到IoT中心。
設(shè)備連接到IoT中心。
設(shè)備從其在IoT中心中的設(shè)備孿生獲取所需的狀態(tài)。
預(yù)配過程
在設(shè)備的部署過程中有兩個(gè)不同的步驟,其中DPS部分可以獨(dú)立完成:
制造步驟,其中設(shè)備在出廠時(shí)創(chuàng)建和準(zhǔn)備,以及
云設(shè)置步驟,其中將設(shè)備預(yù)配服務(wù)配置為自動(dòng)預(yù)配。
這兩個(gè)步驟都與現(xiàn)有的制造和部署過程無(wú)縫銜接。DPS甚至簡(jiǎn)化了一些部署過程,這些過程需要手動(dòng)操作來(lái)獲取設(shè)備上的連接信息。
制造步驟
此步驟有關(guān)制造線上發(fā)生的情況。此步驟中涉及的角色包括硅設(shè)計(jì)者、硅制造商、集成商和/或設(shè)備的最終制造商。此步驟關(guān)于創(chuàng)建硬件本身。
DPS不會(huì)在制造過程中引入新的步驟;而是與在設(shè)備上安裝初始軟件和(理想情況下)HSM的現(xiàn)有步驟相關(guān)。此步驟中不創(chuàng)建設(shè)備ID,而是使用預(yù)配服務(wù)信息對(duì)設(shè)備進(jìn)行編程,設(shè)備開啟時(shí),將能夠調(diào)用預(yù)配服務(wù)來(lái)獲取其連接信息/IoT解決方案分配。
同樣在此步驟中,制造商向設(shè)備部署人員/操作員提供識(shí)別性密鑰信息??梢酝ㄟ^簡(jiǎn)單方法提供該信息,例如,確認(rèn)所有設(shè)備都有基于設(shè)備部署人員/操作員提供的簽名證書生成的X.509證書;也可以通過復(fù)雜方法提供該信息,例如,從每個(gè)TPM設(shè)備提取TPM認(rèn)可密鑰的公共部分。這些服務(wù)如今由眾多硅制造商提供。
云設(shè)置步驟
此步驟有關(guān)配置云實(shí)現(xiàn)正確的自動(dòng)預(yù)配。云設(shè)置步驟中通常涉及兩種類型的用戶:知道設(shè)備需要如何初始設(shè)置的用戶(設(shè)備操作員),以及知道如何在IoT中心之間拆分設(shè)備的人員(解決方案操作員)。
必須對(duì)預(yù)配進(jìn)行一次性初始設(shè)置,這通常由解決方案操作員來(lái)執(zhí)行。配置預(yù)配服務(wù)后,不需要修改,除非用例發(fā)生更改。
將服務(wù)配置為自動(dòng)預(yù)配后,必須使其準(zhǔn)備好注冊(cè)設(shè)備。此步驟由設(shè)備操作員完成,設(shè)備操作員知道設(shè)備的所需配置,并且負(fù)責(zé)確保預(yù)配服務(wù)在尋找其IoT中心時(shí)可以正確地證明設(shè)備的標(biāo)識(shí)。設(shè)備操作員從制造商處獲取識(shí)別性密鑰信息,并將其添加到注冊(cè)列表。添加新條目或現(xiàn)有條目更新為關(guān)于設(shè)備的最新信息后,隨之會(huì)更新注冊(cè)列表。
注冊(cè)和預(yù)配
預(yù)配意味著各種含義,具體取決于使用術(shù)語(yǔ)的行業(yè)。在將IoT設(shè)備預(yù)配至其云解決方案的情況中,預(yù)配由兩部分構(gòu)成:
第一部分是通過注冊(cè)設(shè)備來(lái)建立設(shè)備和IoT解決方案之間的初始連接。
第二部分是根據(jù)其注冊(cè)到的解決方案的具體要求將適當(dāng)?shù)呐渲脩?yīng)用于設(shè)備。
只有這兩個(gè)步驟都完成后,才能說(shuō)該設(shè)備已完全預(yù)配。某些云服務(wù)僅提供預(yù)配過程的第一步,即將設(shè)備注冊(cè)到IoT解決方案終結(jié)點(diǎn),但不提供初始配置。DPS自動(dòng)執(zhí)行這兩個(gè)步驟,為設(shè)備提供無(wú)縫的預(yù)配體驗(yàn)。
設(shè)備預(yù)配服務(wù)的功能
DPS具有許多功能,非常適合用于預(yù)配設(shè)備。
對(duì)基于X.509和TPM的標(biāo)識(shí)的安全證明支持。
注冊(cè)列表,其中包含可能在某一時(shí)刻注冊(cè)的設(shè)備/設(shè)備組的完整記錄。注冊(cè)列表包含有關(guān)設(shè)備注冊(cè)后所需的設(shè)備配置信息,并可隨時(shí)更新。
多個(gè)分配策略,用于根據(jù)自己的需要控制DPS向IoT中心分配設(shè)備的方式:通過注冊(cè)列表控制最小延遲、平均加權(quán)分布(默認(rèn)值)和靜態(tài)配置。延遲是使用與流量管理器相同的方法確定的。
監(jiān)視和診斷日志記錄,用于確保一切都正常工作。
多中心支持,允許DPS將設(shè)備分配給多個(gè)IoT中心。DPS可以跨多個(gè)Azure訂閱來(lái)與中心通信。
跨區(qū)域支持使DPS能夠?qū)⒃O(shè)備分配到其他區(qū)域的IoT中心。
靜態(tài)數(shù)據(jù)加密允許使用256位AES加密(可用的最強(qiáng)大的分組加密法之一,并且符合FIPS 140-2)透明地加密和解密DPS中的數(shù)據(jù)。
可以通過查看DPS術(shù)語(yǔ)主題以及同一部分的其他概念性主題來(lái)詳細(xì)了解設(shè)備預(yù)配中涉及的概念和功能。
跨平臺(tái)支持
與所有Azure IoT服務(wù)一樣,DPS可以在各種操作系統(tǒng)上跨平臺(tái)運(yùn)行。Azure采用各種語(yǔ)言提供了開放源SDK,以便于連接設(shè)備并管理服務(wù)。DPS支持使用以下協(xié)議來(lái)連接設(shè)備:
HTTPS
AMQP
基于Web套接字的AMQP
MQTT
基于Web套接字的MQTT
DPS僅支持使用HTTPS連接來(lái)執(zhí)行服務(wù)操作。
區(qū)域
DPS已在許多區(qū)域中推出。Azure區(qū)域頁(yè)面中提供了所有服務(wù)的現(xiàn)有區(qū)域和新宣布推出區(qū)域的更新列表。可以在Azure狀態(tài)頁(yè)面上檢查設(shè)備預(yù)配服務(wù)的可用性。
備注
DPS是全局性的,而不局限于某個(gè)位置。但是,必須指定與DPS配置文件關(guān)聯(lián)的元數(shù)據(jù)將駐留在其中一個(gè)區(qū)域。
可用性
DPS的服務(wù)級(jí)別協(xié)議為99.9%。具體請(qǐng)閱讀SLA。完整Azure SLA說(shuō)明了Azure作為整體的保證可用性。
配額
每個(gè)Azure訂閱附帶默認(rèn)的配額限制,這些限制可能影響IoT解決方案的范圍。每個(gè)訂閱的當(dāng)前限制是每訂閱10個(gè)設(shè)備預(yù)配服務(wù)。
下表列出了適用于Azure IoT中心設(shè)備預(yù)配服務(wù)資源的限制。
備注
若要增加預(yù)配服務(wù)上的登記和注冊(cè)數(shù)量,請(qǐng)聯(lián)系Microsoft支持部門。
備注
增加CA的最大數(shù)目不受支持。
超過以下配額時(shí),設(shè)備預(yù)配服務(wù)將限制請(qǐng)求。
有關(guān)配額限制的更多詳細(xì)信息,請(qǐng)參閱:
Azure訂閱服務(wù)限制
相關(guān)Azure組件
DPS通過Azure IoT中心將設(shè)備預(yù)配自動(dòng)化。了解有關(guān)IoT中心的詳細(xì)信息。