Hızlı Başlangıç: İlk IoT Edge modülünü bir Windows cihaza dağıtma

Uygulama hedefi:  Evet simgesi IoT Edge 1,1

Kapsayıcılı Azure IoT Edge bir Linux'a dağıtarak bu hızlı başlangıçta Windows IoT Edge deneyin. IoT Edge, iş yüklerinizi edge'e daha fazla gönderebilirsiniz. Bu hızlı başlangıç için, linux için Azure IoT Edge'ı kullanmanın ne kadar kolay olduğunu görmek için kendi cihazınızı Windows.

Bu hızlı başlangıçta şunları yapmayı öğreneceksiniz:

  • IoT hub'ı oluşturma.
  • Bir IoT Edge cihazını IoT hub'ınıza kaydetme.
  • Linux için IoT Edge yüklemesini cihazınıza Windows çalışma zamanında yükleyin ve başlatabilirsiniz.
  • Bir modülü bir IoT Edge uzaktan dağıtın ve telemetri gönderin.

Cihazınız ve bulut için bu hızlı başlangıç mimarisini gösteren diyagram.

Bu hızlı başlangıçta, linux için Azure IoT Edge cihazınızın nasıl ayar Windows yol gösterir. Ardından modülünü cihazdan cihazınıza Azure portal dağıtın. Kullanabileceğiniz modül sıcaklık, nem ve basınç verileri oluşturan bir simülasyon sensörüdür. Diğer Azure IoT Edge öğreticiler, iş içgörüleri için simülasyon verilerini analiz etmek için modüller dağıtarak burada yapacakları işler üzerinde çalışır.

Etkin bir Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

Ortamınızı Azure CLI için hazırlayın.

  • Azure Cloud Shell'Da Bash ortamını kullanın.

    Cloud Shell’i yeni bir pencerede başlatma

  • Dilerseniz CLI başvuru komutlarını çalıştırmak için Azure CLI’yi yükleyebilirsiniz.

    • Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Ek oturum açma seçenekleri için bkz. Azure CLI ile oturum açma.

    • İstendiğinde, ilk kullanımda Azure CLI uzantılarını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma.

    • Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.

Bu hızlı başlangıçta kullanmak üzere tüm kaynakları yönetmek için bir bulut kaynak grubu oluşturun.

az group create --name IoTEdgeResources --location westus2

IoT Edge aşağıdaki gereksinimleri karşılaya olduğundan emin olun:

  • Sistem Gereksinimleri

    • Windows 10 d/11 (Pro, Enterprise, IoT Enterprise)
    • Windows Server 2019İşle/2022
      Tüm geçerli Windows 10 17763'Windows server 2019 en düşük derleme 17763'ü içerir.
  • Donanım gereksinimleri

    • En Düşük Boş Bellek: 1 GB
    • En Düşük Boş Disk Alanı: 10 GB

Not

Bu hızlı başlangıçta PowerShell kullanarak Linux için IoT Edge dağıtımı Windows. Yönetim Merkezi'ni Windows kullanabilirsiniz. Dağıtımınızı oluşturmak için Windows Yönetim Merkezi'ni kullanmak isterseniz, bir Windows cihazına Linux için Azure IoT Edge yükleme ve sağlama ile ilgili nasıl Windows izleyin.

IoT hub oluşturma

Başlangıç olarak Azure CLI ile bir IoT hub'ı oluşturma.

I o T hub'ı oluşturma adımını gösteren diyagram.

Bu hızlı başlangıçta Azure IoT Hub düzeyi çalışır. Daha önce IoT Hub zaten bir hub oluşturduysanız bu IoT hub'ı kullanabilirsiniz.

Aşağıdaki kod, kaynak grubunda ücretsiz bir F1 hub'ı IoTEdgeResources oluşturur. yerine {hub_name} IoT hub'ını benzersiz bir ad yazın. IoT hub'ı oluşturmak birkaç dakika sürebilir.

az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2

Aboneliğiniz içinde zaten bir ücretsiz hub' olduğu için bir hata alırsanız, SKU'nun değerini olarak S1 değiştirebilirsiniz. IoT hub adının kullanılabilir olmadığını doğrularsanız başka birinin zaten bu adı alan bir hub'ı vardır. Yeni bir ad deneyin.

IoT Edge cihazı kaydetme

Yeni oluşturulan IoT hub'ına bir IoT Edge cihazı kaydedin.

Bir cihazı IoT hub kimliğine kaydetme adımını gösteren diyagram.

IoT hub'ınızla iletişim kurabilmesi amacıyla simülasyon cihazınız için bir cihaz kimliği oluşturun. Cihaz kimliği bulutta kalır ve fiziksel cihazla cihaz kimliği arasında bağlantı kurmak için benzersiz bir bağlantı dizesi kullanmanız gerekir.

IoT Edge tipik IoT cihazlardan farklı şekilde davranarak yönetilebilir. Bayrağını --edge-enabled kullanarak bu kimliğin bir cihaza IoT Edge.

  1. Hub Azure Cloud Shell da myEdgeDevice adlı bir cihaz oluşturmak için aşağıdaki komutu girin.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}
    

    İlke anahtarları hakkında bir hata alırsanız, azure Cloud Shell Azure IoT uzantısının en son sürümünü çalıştır iothubowner olduğundan emin olun.

  2. Fiziksel cihazınızı cihaz kimliğiyle bağlantılandıran cihazınızın bağlantı dizesini IoT Hub. IoT hub'nizin adını, cihazınızın adını ve ikisi arasındaki bağlantıların kimliğini doğrularken paylaşılan anahtarı içerir.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    
  3. JSON çıktısındaki connectionString anahtarının değerini kopyalayıp kaydedin. Bu değer, cihaz bağlantı dizesidir. Sonraki bölümde bu çalışma IoT Edge yapılandırabilirsiniz.

    Cloud Shell'da connectionString çıkışını gösteren ekran görüntüsü.

IoT Edge çalışma zamanını yükleme ve başlatma

Linux IoT Edge'Windows yükleyin ve cihaz bağlantı dizesiyle yapılandırabilirsiniz.

Çalışma zamanı oluşturma adımını gösteren IoT Edge.

Linux için Azure IoT Edge'yi dağıtmak istediğiniz hedef cihazda aşağıdaki PowerShell komutlarını Windows. PowerShell kullanarak uzak bir hedef cihaza dağıtım yapmak için Uzak PowerShell'i kullanarak uzak bir cihazla bağlantı kurma ve bu komutları bu cihazda uzaktan çalıştırma.

  1. Yükseltilmiş bir PowerShell oturumunda aşağıdaki komutların her birini çalıştırarak IoT Edge Linux için Windows.

    $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
    $ProgressPreference = 'SilentlyContinue'
    Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPath
    
  2. Cihazınıza IoT Edge Linux Windows yükleme.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    
  3. Hedef cihazda yürütme ilkesi henüz yoksa AllSigned olarak ayarlayın. Geçerli yürütme ilkesine yükseltilmiş bir PowerShell isteminde şunları kullanarak bakabilirsiniz:

    Get-ExecutionPolicy -List
    

    yürütme ilkesi local machine ise, AllSigned yürütme ilkesi şu şekilde ayarlanır:

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    
  4. Dağıtım IoT Edge Linux için Windows oluşturun.

    Deploy-Eflow
    
  5. Lisans koşullarını kabul etmek için 'Y' girin.

  6. tercihlerinize bağlı olarak İsteğe bağlı tanılama verileri'nin açık veya kapalı duruma geçişini yapmak için 'O' veya 'R' girin. Başarılı bir dağıtım aşağıda gösterilmiştir.

    Başarılı bir dağıtımda, iletilerin sonunda 'Dağıtım başarılı' olur

  7. Önceki bölümde alınan cihaz bağlantı dizesini kullanarak cihazınızı sağlama. Yer tutucu metnini kendi değeriniz ile değiştirin.

    Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
    

Artık IoT Edge cihazınız yapılandırıldı. Bulutta dağıtılan modülleri çalıştırmak için hazır.

Modül dağıtma

Telemetri Azure IoT Edge gönderen bir modülü dağıtmak için buluttan cihaz cihazınızı IoT Hub.

Modül dağıtma adımını gösteren diyagram.

Bu özelliğin en önemli Azure IoT Edge biri, buluttan IoT Edge cihazlarınıza kod dağıtmaktır. IoT Edge modüller, kapsayıcı olarak uygulanan yürütülebilir paketlerdir. Bu bölümde, doğrudan IoT Edge Modüller bölümünden önceden Azure Market modül dağıtacak Azure IoT Hub.

Bu bölümde dağıtın modül bir algılayıcının benzetimini ve oluşturulan verileri gönderir. Bu modül, geliştirme ve test için simülasyon verilerini kullanabileceğiniz IoT Edge kullanmaya başlarken yararlı bir kod parçasıdır. Bu modülün tam olarak ne yaptığını görmek için sıcaklık sensörü kaynak kodunun simülasyonunu görüntüebilirsiniz.

Modülden ilk modülünü dağıtmak için bu Azure Market.

  1. Azure portal IoT hub'ınıza gidin.

  2. Sol menüden Otomatik Yükleme'nin altında Cihaz Yönetimi seçeneğini IoT Edge.

  3. Cihaz listesinden hedef cihazın cihaz kimliğini seçin.

    Yeni bir cihaz IoT Edge cihaz, durum kodunu 417 -- The device's deployment configuration is not set Azure portal. Bu durum normaldir ve cihazın bir modül dağıtımı almaya hazır olduğu anlamına gelir.

  4. Üst çubukta Modülleri Ayarla'ya seçin.

    Modülleri Ayarla seçeneğini gösteren ekran görüntüsü.

  5. Modüller IoT Edge altında Ekle açılan menüsünü açın ve Market Modülü'yü seçin.

    Ekle açılan menüsünü gösteren ekran görüntüsü.

  6. Modül IoT Edge'da modülü için arama ve Simulated Temperature Sensor seçme.

    Modül, istenen çalışma IoT Edge modüller bölümüne eklenir.

  7. Sihirbazın sonraki adımına devam etmek için Sonraki: Yollar'ı seçin.

    Modül eklendikten sonraki adıma devam eden adımı gösteren ekran görüntüsü.

  8. Yollar sekmesinde varsayılan yol olan yolunu kaldırın ve ardından Sonraki: Gözden geçir ve oluştur'a seçerek sihirbazın sonraki adımına geçin.

    Not

    Yollar ad ve değer çiftleri kullanılarak oluşturulur. Bu sayfada iki yol görmeniz gerekir. Varsayılan yol, route, tüm iletileri IoT Hub gönderir (denir $upstream ). Azure Marketi 'nden modülü eklediğinizde, SimulatedTemperatureSensorToIoTHub adlı ikinci bir yol otomatik olarak oluşturulmuştur. Bu yol, sanal sıcaklık modülünden tüm iletileri IoT Hub gönderir. Bu durumda gereksiz olduğu için varsayılan yolu silebilirsiniz.

    Sonraki adıma geçmek üzere varsayılan yolun kaldırılmasını gösteren ekran görüntüsü.

  9. JSON dosyasını gözden geçirin ve ardından Oluştur' u seçin. JSON dosyası IoT Edge cihazınıza dağıttığınız tüm modülleri tanımlar. SimulatedTemperatureSensor modülünü ve iki çalışma zamanı modülünü, edgeagent ve edgehub'ı görürsünüz.

    Not

    IoT Edge cihazına yeni bir dağıtım gönderdiğinizde cihazınıza hiçbir şey gönderilmez. Bunun yerine cihaz, IoT Hub'ı düzenli olarak sorgulayarak yeni yönergeler olup olmadığını denetler. Güncelleştirilmiş bir dağıtım bildirimi bulması halinde cihaz yeni dağıtımla ilgili bilgileri kullanarak buluttaki modül görüntülerini çeker ve modülleri yerel ortamda çalıştırmaya başlar. Bu işlem birkaç dakika sürebilir.

  10. Modül dağıtım ayrıntılarını oluşturduktan sonra, sihirbaz sizi cihaz ayrıntıları sayfasına döndürür. Modüller sekmesinde dağıtım durumunu görüntüleyin.

    Üç modül görmeniz gerekir: $edgeAgent, $edgeHub ve SimulatedTemperatureSensor. Bir veya daha fazla modülden dağıtımda belirtilen Evet varsa ancak cihaz tarafından raporlanmadığında, IoT Edge cihazınız hala başlatılıyor demektir. Birkaç dakika bekleyin ve sonra sayfayı yenileyin.

    Dağıtılan modüller listesinde sanal sıcaklık algılayıcısı gösteren ekran görüntüsü.

Oluşturulan verileri görüntüleme

Bu hızlı başlangıçta, yeni bir IoT Edge cihazı oluşturdunuz ve üzerine IoT Edge çalışma zamanını yüklediniz. Ardından, cihazın kendisinde değişiklik yapmak zorunda kalmadan cihazda çalıştırmak üzere bir IoT Edge modülünü dağıtmak için Azure portal kullandınız.

Gönderdiğiniz modül, daha sonra test etmek için kullanabileceğiniz örnek ortam verileri oluşturur. Sanal algılayıcı hem makinenin hem de makinenin bulunduğu ortamın izlenmesini izler. Örneğin bu sensör bir sunucu odasında, fabrika sahasında veya rüzgar türbininde olabilir. Gönderdiği iletiler çevresel sıcaklık ve nem, makine sıcaklığı ve basınç ve bir zaman damgası içerir. IoT Edge öğreticileri, bu modülle oluşturulan verileri analiz için test verileri olarak kullanır.

  1. PowerShell oturumunuzda aşağıdaki komutu kullanarak Windows sanal makinesinde Linux için IoT Edge oturum açın:

    Connect-EflowVm
    

    Not

    Sanal makineye SSH 'ye izin verilen tek hesap, kendisini oluşturan kullanıcı olur.

  2. Oturum açtıktan sonra, aşağıdaki Linux komutunu kullanarak çalışan IoT Edge modülleri listesini denetleyebilirsiniz:

    sudo iotedge list
    

    Sıcaklık sensör, aracınız ve hub 'ınızın çalıştığını doğrulayın.

  3. Aşağıdaki Linux komutunu kullanarak sıcaklık algılayıcı modülünden buluta gönderilen iletileri görüntüleyin:

    sudo iotedge logs SimulatedTemperatureSensor -f
    

    Önemli

    IoT Edge komutlar, modül adlarına başvurduklarında büyük/küçük harfe duyarlıdır.

    Sanal sıcaklık algılayıcı modülünün çıkış günlüklerini görüntüleyin.

ıot Hub 'ınıza gelen iletileri izlemek için Visual Studio Code Azure IoT Hub uzantısını da kullanabilirsiniz.

Kaynakları temizleme

IoT Edge öğreticilere devam etmek istiyorsanız, bu adımı atlayın. Bu hızlı başlangıçta, kaydettiğiniz ve ayarladığınız cihazı kullanabilirsiniz. Aksi takdirde, ücretlendirmemek için oluşturduğunuz Azure kaynaklarını silebilirsiniz.

Sanal makinenizi ve IoT hub’ınızı yeni bir kaynak grubunda oluşturduysanız, bu grubu ve ilişkili tüm kaynaklarını silebilirsiniz. Tüm grubu silmek istemiyorsanız, bunun yerine tek tek kaynakları silebilirsiniz.

Önemli

Korumak istediğiniz bir şey olduğundan emin olmak için kaynak grubunun içeriğini denetleyin. Silinen kaynak grupları geri alınamaz.

Iotedgeresobir grubunu kaldırmak için aşağıdaki komutu kullanın. Silme işlemi birkaç dakika sürebilir.

az group delete --name IoTEdgeResources

Kaynak gruplarının listesini görüntülemek için bu komutu kullanarak kaynak grubunun kaldırıldığını doğrulayabilirsiniz.

az group list

Windows Linux için Azure IoT Edge kaldırma

Windows Linux için Azure IoT Edge kaldırmak için Windows yönetim merkezinde pano uzantısı ' nı kullanın.

  1. Windows yönetim merkezi 'ndeki IoT Edge cihaza Bağlan. Azure Pano aracı uzantısı yüklenir.

  2. Kaldır'ı seçin. Azure IoT Edge kaldırıldıktan sonra, Windows yönetim merkezi Azure IoT Edge cihaz bağlantı girişini başlangıç sayfasından kaldırır.

Not

Windows sisteminizden Azure IoT Edge kaldırmanın bir başka yolu > > > da IoT Edge cihazınızda Azure IoT Edge lts'yi > kaldırma Ayarlar uygulamaları başlat ' ı seçmektedir. bu yöntem, IoT Edge cihazınızdan Azure IoT Edge kaldırır, ancak bağlantıyı Windows yönetim merkezi ' nde geride bırakır. kaldırma işlemini gerçekleştirmek için Ayarlar menüsündeki Windows yönetim merkezini de kaldırın.

Sonraki adımlar

Bu hızlı başlangıçta bir IoT Edge cihaz oluşturdunuz ve cihaza kod dağıtmak için Azure IoT Edge bulut arabirimini kullandınız. Artık ortamı hakkında ham veriler üreten bir test cihazınız var.

Sonraki öğreticide, Azure portal cihazın etkinliğini ve durumunu izlemeyi öğreneceksiniz.