教學課程:使用命名空間主題將 MQTT 訊息路由傳送至 Azure 事件中樞 (Azure 入口網站)
在本教學課程中,您將了解如何使用命名空間主題,將資料從 MQTT 用戶端路由傳送至 Azure 事件中樞。 高階步驟如下:
必要條件
- 如果您沒有 Azure 訂閱,請在開始之前先建立 Azure 免費帳戶。
- 如果您不熟悉事件方格,請先閱讀事件方格概觀,再開始進行本教學課程。
- 根據註冊事件方格資源提供者中的步驟,註冊事件方格資源提供者。
- 請確定您的防火牆已開啟連接埠 8883。 本教學課程中的範例會使用 MQTT 通訊協定,其會透過連接埠 8883 進行通訊。 某些公司和教育網路環境可能會封鎖此連接埠。
在 Azure 入口網站中建立命名空間
Azure 事件方格中的命名空間是一或多個主題、用戶端、用戶端群組、主題空間和權限繫結的邏輯容器。 提供唯一的命名空間,可讓您在相同 Azure 區域中擁有多個資源。 有了 Azure 事件方格命名空間,您現在可以將相關資源分組在一起,並以 Azure 訂用帳戶中單一單位的形式進行管理。
請遵循下列各節來建立、檢視及管理 Azure 事件方格命名空間。
若要建立命名空間:
登入 Azure 入口網站。
在搜尋方塊中,輸入事件方格命名空間,然後從結果中選取 [事件方格命名空間]。
在 [事件方格命名空間] 頁面上,選取工具列上的 [+ 建立]。
在 [基本] 頁面上,遵循下列步驟。
選取您要在其中建立命名空間的 [Azure 訂用帳戶]。
選取現有的資源群組,或建立資源群組。
輸入命名空間的名稱。
選取您要在其中建立命名空間的區域或 [位置]。
選取頁面底部的 [檢閱 + 建立] 。
在 [檢閱 + 建立] 分頁上檢閱設定,然後選取 [建立]。
在 [部署成功] 頁面上,選取 [移至資源] 以瀏覽至您的命名空間。
建立命名空間主題
如果您不在 [事件方格命名空間] 頁面上,請遵循建立、檢視和管理命名空間步驟來檢視您想要用來建立主題的命名空間。
在 [事件方格Namespace] 頁面上,選取左側功能表上 [事件代理人] 區段中的 [主題] 選項。
在 [主題] 頁面上,選取命令列上的 [+ 主題] 按鈕。
在 [建立主題] 頁面上,輸入您要建立的主題名稱,然後選取 [建立]。
啟用事件方格命名空間的受控識別
在 [事件方格命名空間] 頁面上,選取左側功能表上 [設定] 底下的 [身分識別]。
開啟開關,以啟用系統指派的受控識別。
選取工具列上的 [儲存] 來儲存設定。
選取確認訊息上的 [是]。
確認您看到系統指派的受控識別的物件識別碼,並查看指派角色的連結。
檢查入口網站的通知,以確認命名空間已啟用受控識別。
啟用事件方格命名空間的 MQTT 代理
在 [事件方格命名空間] 頁面上,選取左側功能表上 [設定] 底下的 [組態]。
選取 [啟用 MQTT 代理] 旁的核取方塊。
在頁面底部選取 [套用]。
檢查入口網站的通知,以確認命名空間已啟用 MQTT 代理。
在網頁瀏覽器的個別索引標籤或個別視窗中,使用 Azure 入口網站建立具有事件中樞的事件中樞命名空間。
建立事件中樞命名空間
事件中樞命名空間提供唯一的範圍容器,您可以在其中一個或多個事件中樞。 若要使用入口網站在您的資源群組中建立命名空間,請執行下列動作:
在 Azure 入口網站中,選取左側功能表中的 [所有服務] ,然後選取 [分析] 類別中 [事件中樞] 旁邊的 星號 (
*
)。 確認 [事件中樞] 已新增至左側導覽功能表中的 [我的最愛]。選取左側導覽功能表中 [我的最愛] 下方的 [事件中樞],然後選取工具列上的 [建立]。
在 [建立命名空間] 頁面上,採取下列步驟:
選取您要在其中建立命名空間的訂用帳戶。
選取您在上一個步驟中建立的資源群組。
輸入命名空間的名稱。 系統會立即檢查此名稱是否可用。
選取命名空間的位置。
選擇 [基本] 作為定價層。 如果您打算從 Apache Kafka 應用程式使用命名空間,請使用標準層。 基本層不支援 Apache Kafka 工作負載。 若要了解各層之間的差異,請參閱配額和限制、事件中樞進階版和事件中樞專用版文章。
將輸送量單位 (標準層) 或處理單位 (進階層) 設定保留為原本的值。 了解輸送量單位或處理單位:事件中樞可擴縮性。
選取頁面底部的 [檢閱 + 建立]。
在 [檢閱 + 建立] 頁面上檢閱設定,然後選取 [建立]。 等待部署完成。
在 [部署] 頁面上,選取 [移至資源] 以瀏覽至您命名空間的頁面。
確認您看到的 [事件中樞命名空間] 頁面類似下列範例:
建立事件中樞
若要在命名空間內建立事件中樞,請執行下列動作:
在[概觀] 頁面上,選取命令列上的 [+ 事件中樞]。
輸入事件中樞的名稱,然後選取 [檢閱 + 建立]。
在 [檢閱 + 建立] 頁面上,選取 [建立]。
您可以檢查警示中事件中樞建立的狀態。 建立事件中樞之後,您會在事件中樞清單中看到該中樞。
為事件方格命名空間提供將事件傳送至事件中樞的存取權
在 [事件中樞命名空間] 頁面上,選取左側功能表上的 [存取控制 (IAM)]。
在 [存取控制] 頁面上,選取命令列上的 [+ 新增],然後選取 [新增角色指派]。
在 [新增角色指派] 頁面上,從角色清單中選取 [Azure 事件中樞資料傳送者],然後選取頁面底部的 [下一步]。
在 [成員] 頁面上,遵循下列步驟:
針對 [指派存取權給] 欄位,選取 [受控識別]。
選擇 [+ 選取成員]。
在 [選取受控識別] 頁面上,遵循下列步驟:
選取您的 Azure 訂用帳戶。
針對 [受控識別],選取 [事件方格命名空間]。
選取與事件方格命名空間同名的受控識別。
選擇頁面底部的 [選取]。
在 [新增角色指派] 頁面上,選取頁面底部的 [檢閱 + 指派]。
在 [檢閱 + 指派] 頁面,選取 [檢閱 + 指派]。
使用事件中樞作為端點建立事件訂用帳戶
切換至已開啟事件方格命名空間的網頁瀏覽器視窗索引標籤。
在 [事件方格命名空間] 頁面上,選取左側功能表上的 [主題]。
在 [主題] 頁面上,選取您稍早建立的命名空間主題。
在 [事件方格命名空間主題] 頁面上,選取頂端命令列上的 [+ 訂用帳戶]。
在 [建立訂用帳戶] 頁面上,遵循下列步驟:
輸入事件訂閱的 [名稱]。
針對 [傳遞模式],選取 [推送]。
確認 [端點類型] 設定為 [事件中樞]。
選取 [設定端點]。
在 [選取事件中樞] 上,遵循下列步驟:
選取具有事件中樞的 [Azure 訂用帳戶]。
選取具有事件中樞的資源群組。
選取 [事件中樞命名空間]。
選取事件中樞命名空間中的事件中樞。
然後,選取 [確認選取項目]。
回到 [建立訂用帳戶] 頁面,針對 [受控識別類型] 選取 [系統指派]。
選取頁面底部的 [建立]。
在 [事件方格] 命名空間中設定路由
在 [事件方格命名空間主題] 頁面的 [基本] 區段中選取命名空間,或選取頂端階層連結功能表中的命名空間名稱,以瀏覽回報 [事件方格命名空間] 頁面。
在 [事件方格命名空間] 頁面上,選取 [MQTT 代理] 區段中左側功能表上的 [路由 ]。
在 [路由] 頁面上,選取 [啟用路由]。
針對 [主題類型],選取 [命名空間主題]。
針對 [主題],選取您所建立的事件方格命名空間主題,用以路由所有的 MQTT 訊息。
選取套用。
檢查通知以確認命名空間已啟用路由資訊。
建立客戶端、主題空間和權限繫結
遵循快速入門中的步驟:發佈和訂閱 MQTT 主題:
建立用戶端。 如果您想要,您可建立第二個用戶端,但這是選用步驟。
建立主題空間。
建立發行者和訂閱者權限繫結。
使用 MQTTX 傳送一些訊息。
確認事件中樞在事件中樞命名空間的 [概觀] 頁面上收到這些訊息。
使用串流分析查詢在事件中樞檢視已路由的 MQTT 訊息
在 Azure 入口網站中,瀏覽至事件訂用帳戶內的事件中樞執行個體 (事件中樞)。 使用串流分析處理來自事件中樞的資料。 如需詳細資訊,請參閱使用串流分析處理來自 Azure 事件中樞的資料 - Azure 事件中樞 | Microsoft Learn。 您可以在查詢中查看 MQTT 訊息。
下一步
如需程式碼範例,請移至此 GitHub 存放庫 (英文)。