建立運行 IoT Edge 的虛擬機器
在 Azure 中,你可以建立一個虛擬機器 - 一台雲端中的電腦,你可以隨意配置並運行自己的軟體。
💁 你可以在 維基百科的虛擬機器頁面 上閱讀更多關於虛擬機器的資訊。
任務 - 設置 IoT Edge 虛擬機器
-
運行以下命令來建立一個已經預裝 Azure IoT Edge 的虛擬機器:
az deployment group create \
--resource-group fruit-quality-detector \
--template-uri https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/1.2.0/edgeDeploy.json \
--parameters dnsLabelPrefix=<vm_name> \
--parameters adminUsername=<username> \
--parameters deviceConnectionString="<connection_string>" \
--parameters authenticationType=password \
--parameters adminPasswordOrKey="<password>"將
<vm_name>
替換為此虛擬機器的名稱。這需要是全球唯一的,因此使用類似fruit-quality-detector-vm-
並在末尾加上你的名字或其他值。將
<username>
和<password>
替換為用於登錄虛擬機器的用戶名和密碼。這些需要相對安全,因此不能使用 admin/password。將
<connection_string>
替換為你的fruit-quality-detector-edge
IoT Edge 設備的連接字串。這將建立一個配置為
DS1 v2
的虛擬機器。這些類別表示 機器的性能,因此也表示其成本。這台虛擬機器有 1 個 CPU 和 3.5GB 的 RAM。💰 你可以在 Azure 虛擬機器定價指南 上查看這些虛擬機器的當前定價
一旦虛擬機器建立完成,IoT Edge 運行時將自動安裝,並配置為連接到你的 IoT 中樞作為你的
fruit-quality-detector-edge
設備。 -
你將需要虛擬機器的 IP 地址或 DNS 名稱來從中調用圖像分類器。運行以下命令來獲取這些資訊:
az vm list --resource-group fruit-quality-detector \
--output table \
--show-details複製
PublicIps
欄位或Fqdns
欄位的值。 -
虛擬機器是需要花費金錢的。在撰寫本文時,DS1 虛擬機器每小時約需 $0.06。為了降低成本,你應該在不使用虛擬機器時將其關閉,並在完成此專案後刪除它。
你可以配置虛擬機器在每天的某個時間自動關閉。這意味著如果你忘記關閉它,你將不會被收取超過自動關閉時間的費用。使用以下命令來設置這個:
az vm auto-shutdown --resource-group fruit-quality-detector \
--name <vm_name> \
--time <shutdown_time_utc>將
<vm_name>
替換為你的虛擬機器名稱。將
<shutdown_time_utc>
替換為你希望虛擬機器關閉的 UTC 時間,使用 4 位數字表示 HHMM 。例如,如果你希望在 UTC 午夜關閉,則設置為0000
。對於美國西海岸的晚上 7:30,則使用 0230(美國西海岸的晚上 7:30 是 UTC 的 2:30AM)。 -
你的圖像分類器將在此邊緣設備上運行,並在端口 80(標準 HTTP 端口)上監聽。默認情況下,虛擬機器的入站端口是被阻止的,因此你需要啟用端口 80。端口是在網絡安全組上啟用的,因此首先你需要知道虛擬機器的網絡安全組名稱,可以通過以下命令找到:
az network nsg list --resource-group fruit-quality-detector \
--output table複製
Name
欄位的值。 -
運行以下命令來添加規則以打開網絡安全組的端口 80:
az network nsg rule create \
--resource-group fruit-quality-detector \
--name Port_80 \
--protocol tcp \
--priority 1010 \
--destination-port-range 80 \
--nsg-name <nsg name>將
<nsg name>
替換為上一步中的網絡安全組名稱。