準備 IoT Edge 的開發與測試環境

適用于: IoT Edge 1.4 checkmark IoT Edge 1.4

重要

支援的版本是 IoT Edge 1.4。 如果您是舊版,請參閱更新 IoT Edge

IoT Edge 會將您現有的商務邏輯移至在邊緣作業的裝置。 若要準備您的應用程式和工作負載以 IoT Edge 模組 的形式 執行,您必須將它們建置為容器。 本文提供如何設定開發環境的指引,讓您能夠成功建立 IoT Edge 解決方案。 設定開發環境之後,您就可以瞭解如何 開發自己的 IoT Edge 模組

在任何 IoT Edge 解決方案中,至少有兩部電腦需要考慮:執行 IoT Edge 模組的 IoT Edge 裝置(或裝置),以及建置、測試及部署模組的開發機器。 本文主要著重于開發電腦。 為了進行測試,這兩部機器可以相同。 您可以在開發電腦上執行 IoT Edge,並將模組部署至其中。

作業系統

IoT Edge 會在一組 特定支援的作業系統 上執行。 針對 IoT Edge 進行開發時,您可以使用大部分可執行容器引擎的作業系統。 容器引擎是開發電腦上將模組建置為容器,並將其推送至容器登錄的需求。

如果您的開發電腦無法執行 IoT Edge,請跳至 本文的 [測試控管 ] 區段,以瞭解如何在本機測試及偵錯。

開發機器和 IoT Edge 裝置的作業系統不需要相符。 不過,容器作業系統必須與開發機器和 IoT Edge 裝置一致。 例如,您可以在 Windows 電腦上開發模組,並將其部署至 Linux 裝置。 Windows 電腦必須執行 Linux 容器,才能建置 Linux 裝置的模組。

容器引擎

IoT Edge 的核心概念是,您可以將商務和雲端邏輯從遠端部署到裝置,方法是將其封裝至容器。 若要建置容器,您需要開發電腦上的容器引擎。

生產環境中 IoT Edge 裝置唯一支援的容器引擎是 Moby。 不過,任何與開放容器計畫相容的容器引擎,例如 Docker,都能夠建置 IoT Edge 模組映射。

開發工具

Azure IoT Edge 開發工具 是開發及測試 IoT Edge 模組的命令列工具。 您可以建立新的 IoT Edge 案例、建置模組映射、在模擬器中執行模組,以及監視傳送至IoT 中樞的訊息。 iotedgedev 工具是開發 IoT Edge 模組的建議工具。

Visual Studio 和 Visual Studio Code 都有附加元件延伸模組,可協助開發 IoT Edge 解決方案。 這些延伸模組提供特定語言的範本,以協助建立和部署新的 IoT Edge 案例。 適用于 Visual Studio 和 Visual Studio Code 的 Azure IoT Edge 擴充功能可協助您撰寫程式碼、建置、部署和偵錯 IoT Edge 解決方案。 您可以建立包含多個模組的整個 IoT Edge 解決方案,而延伸模組會隨著每個新增模組自動更新部署資訊清單範本。 擴充功能也會從 Visual Studio 或 Visual Studio Code 中啟用 IoT 裝置的管理。 您可以將模組部署到裝置、監視狀態,並在訊息抵達IoT 中樞時檢視訊息。 最後,這兩個延伸模組都會使用 IoT EdgeHub 開發工具,在開發電腦上啟用模組的本機執行和偵錯。

IoT Edge 開發工具

Azure IoT Edge 開發工具可透過命令列功能簡化 IoT Edge 開發。 此工具提供 CLI 命令來開發、偵錯及測試模組。 不論您已手動在電腦上安裝相依性,還是使用預先建置 的 IoT Edge 開發容器 ,在容器中執行 iotedgedev 工具,IoT Edge 開發工具,IoT Edge 開發工具都可使用您的開發系統。

如需詳細資訊並開始使用,請參閱 IoT Edge 開發工具 Wiki

Visual Studio Code 擴充功能

適用於 Visual Studio Code 的 Azure IoT Edge 延伸模組提供的 IoT Edge 模組範本,是針對 C、C#、Java、Node.js 和 Python 程式設計語言而建置。 C# 中的 Azure 函式範本也包含在內。

重要

Azure IoT Edge Visual Studio Code 擴充功能處於 維護模式 iotedgedev 工具是開發 IoT Edge 模組的建議工具。

如需詳細資訊和下載,請參閱 適用于 Visual Studio Code 的 Azure IoT Edge。

除了 IoT Edge 延伸模組之外,您可能會發現安裝其他擴充功能來開發會很有説明。 例如,您可以使用 適用于 Visual Studio Code 的 Docker 支援來管理映射、容器和登錄。 此外,所有主要支援的語言都有 Visual Studio Code 的擴充功能,可在開發模組時有所説明。

Azure IoT 中樞 擴充功能可作為 Azure IoT Edge 擴充功能的隨附專案。

Visual Studio 2017/2019 延伸模組

適用於 Visual Studio 的 Azure IoT Edge 工具提供以 C# 和 C 建置的 IoT Edge 模組範本。

重要

Azure IoT Edge Visual Studio 擴充功能處於維護模式。 iotedgedev 工具是開發 IoT Edge 模組的建議工具。

如需詳細資訊和下載,請參閱 Azure IoT Edge Tools for Visual Studio 2017 Azure IoT Edge Tools for Visual Studio 2019

測試工具

有數個測試控管可協助您更有效率地模擬 IoT Edge 裝置或偵錯模組。 下表顯示工具與下列個別區段之間的高階比較,更具體地說明每個工具。

生產部署僅支援 IoT Edge 執行時間,但下列工具可讓您模擬或輕鬆地建立 IoT Edge 裝置以供開發和測試之用。 這些工具並非互斥,但可以共同合作,以取得完整的開發體驗。

工具 也稱為 支援的平台 適用對象
IoT EdgeHub 開發人員工具 iotedgehubdev Windows、Linux、macOS 模擬裝置以偵錯模組。
IoT Edge 開發容器 iotedgedev Windows、Linux、macOS 在不安裝相依性的情況下進行開發。

IoT EdgeHub 開發人員工具

Azure IoT EdgeHub 開發人員工具提供本機開發和偵錯體驗。 此工具可協助您在沒有 IoT Edge 執行時間的情況下啟動 IoT Edge 模組,以便您可以在本機建立、開發、測試、執行及偵錯 IoT Edge 模組和解決方案。 您不需要將映射推送至容器登錄,並將映射部署到裝置進行測試。

IoT EdgeHub 開發人員工具的設計目的是與 Visual Studio 和 Visual Studio Code 擴充功能以及 IoT Edge 開發工具搭配運作。 開發人員工具支援內部迴圈開發以及外部迴圈測試,因此它也與其他 DevOps 工具整合。

重要

IoT EdgeHub 開發人員工具處於 維護模式 。 請考慮使用 已安裝 IoT Edge 執行時間、實體裝置或 EFLOW 的 Linux 虛擬機器。

如需詳細資訊和安裝,請參閱 Azure IoT EdgeHub 開發工具

IoT Edge 開發容器

Azure IoT Edge 開發容器是 Docker 容器,其中包含 IoT Edge 開發所需的所有相依性。 此容器可讓您輕鬆地開始使用您想要開發的語言,包括 C#、Python、Node.js 和 JAVA。 您只需要安裝容器引擎,例如 Docker 或 Moby,即可將容器提取到您的開發電腦。

如需詳細資訊,請參閱 Azure IoT Edge 開發容器

DevOps 工具

當您準備好為廣泛的生產案例開發大規模解決方案時,請利用現代化 DevOps 原則,包括自動化、監視和簡化的軟體工程程式。 IoT Edge 有擴充功能可支援 DevOps 工具,包括 Azure DevOps、Azure DevOps Projects 和 Jenkins。 如果您想要自訂現有的管線,或使用 CircleCI 或 TravisCI 等不同的 DevOps 工具,您可以使用 IoT Edge 開發工具中包含的 CLI 功能來執行此動作。

如需詳細資訊、指引和範例,請參閱下列頁面: