Simetrik anahtarları kullanarak Windows'da IoT Edge cihazı oluşturma ve sağlama

Şunlar için geçerlidir: evet simgesi IoT Edge 1.1

Önemli

IoT Edge 1.1 destek sonu tarihi 13 Aralık 2022'ydi. Bu ürünün, hizmetin, teknolojinin veya API’nin nasıl desteklendiği hakkında bilgi edinmek için Microsoft Ürün Yaşam Döngüsü’ne göz atın. IoT Edge'in en son sürümüne güncelleştirme hakkında daha fazla bilgi için bkz . IoT Edge'i güncelleştirme.

Bu makalede, Bir Windows IoT Edge cihazı kaydetme ve sağlama için uçtan uca yönergeler sağlanır.

Not

Windows kapsayıcıları ile Azure IoT Edge, Azure IoT Edge'in 1.2 sürümünden itibaren desteklenmeyecektir.

Windows cihazlarda IoT Edge, Windows üzerinde Linux için Azure IoT Edge çalıştırmak için yeni yöntemi kullanmayı göz önünde bulundurun.

Windows üzerinde Linux için Azure IoT Edge kullanmak istiyorsanız, eşdeğer nasıl yapılır kılavuzundaki adımları izleyebilirsiniz.

IoT hub'ına bağlanan her cihazda, buluttan cihaza veya cihazdan buluta iletişimi izlemek için kullanılan bir cihaz kimliği vardır. Bir cihazı IoT hub ana bilgisayar adı, cihaz kimliği ve cihazın IoT Hub'da kimlik doğrulaması için kullandığı bilgileri içeren bağlantı bilgileriyle yapılandırabilirsiniz.

Bu makaledeki adımlarda, tek bir cihazı IoT hub'ına bağladığınız el ile sağlama adlı işlem adım adım izlenmiştir. El ile sağlama için IoT Edge cihazlarının kimliğini doğrulamak için iki seçeneğiniz vardır:

  • Simetrik anahtarlar: IoT Hub'da yeni bir cihaz kimliği oluşturduğunuzda hizmet iki anahtar oluşturur. Anahtarlardan birini cihaza yerleştirirsiniz ve kimlik doğrulaması sırasında anahtarı IoT Hub'a sunar.

    Bu kimlik doğrulama yöntemini kullanmaya başlamak daha hızlıdır, ancak bu kadar güvenli değildir.

  • X.509 otomatik olarak imzalanan: İki X.509 kimlik sertifikası oluşturur ve bunları cihaza yerleştirirsiniz. IoT Hub'da yeni bir cihaz kimliği oluşturduğunuzda, her iki sertifikadan da parmak izi sağlarsınız. Cihaz IoT Hub'da kimlik doğrulaması yaparken bir sertifika sunar ve IoT Hub sertifikanın parmak iziyle eşleşip eşleşmediğini doğrular.

    Bu kimlik doğrulama yöntemi daha güvenlidir ve üretim senaryoları için önerilir.

Bu makale, kimlik doğrulama yönteminiz olarak simetrik anahtarların kullanılmasını kapsar. X.509 sertifikalarını kullanmak istiyorsanız bkz . X.509 sertifikalarını kullanarak Windows'ta IoT Edge cihazı oluşturma ve sağlama.

Not

Ayarlayıp her birini el ile sağlamak istemiyorsanız, IoT Edge'in IoT Hub cihaz sağlama hizmetiyle nasıl çalıştığını öğrenmek için aşağıdaki makalelerden birini kullanın:

Önkoşullar

Bu makale, IoT Edge cihazınızı kaydetmeyi ve üzerine IoT Edge yüklemeyi kapsar. Bu görevlerin farklı önkoşulları ve bunları gerçekleştirmek için kullanılan yardımcı programları vardır. Devam etmeden önce tüm önkoşulları karşıladığınızdan emin olun.

Cihaz yönetimi araçları

Cihazınızı kaydetme adımları için Azure portalı, Visual Studio Code veya Azure CLI'yı kullanabilirsiniz. Her yardımcı programın kendi önkoşulları vardır:

Azure aboneliğinizde ücretsiz veya standart bir IoT hub'ı .

Cihaz gereksinimleri

Bir Windows cihazı.

Windows kapsayıcıları ile IoT Edge, en son Windows uzun vadeli destek derlemesi olan Windows sürüm 1809/derleme 17763 gerektirir. Desteklenen SKU'ların listesi için desteklenen sistemler listesini gözden geçirmeyi unutmayın.

Hem kapsayıcı hem de konak üzerindeki Windows sürümlerinin eşleşmesi gerektiğini unutmayın. Daha fazla bilgi için bkz . İşletim sistemi uyuşmazlığı nedeniyle modül başlatılamadı.

Cihazınızı kaydetme

Tercihinize bağlı olarak cihazınızı kaydetmek için Azure portalı, Visual Studio Code veya Azure CLI'yı kullanabilirsiniz.

Azure portalındaki IoT hub'ınızda IoT Edge cihazları, edge etkin olmayan IoT cihazlarından ayrı olarak oluşturulur ve yönetilir.

  1. Azure portalında oturum açın ve IoT hub'ınıza gidin.

  2. Sol bölmede menüden Cihazlar'ı ve ardından Cihaz Ekle'yi seçin.

  3. Cihaz oluştur sayfasında aşağıdaki bilgileri sağlayın:

    • Açıklayıcı bir cihaz kimliği oluşturun. Daha sonra kullanacağınız için bu cihaz kimliğini not edin.
    • IoT Edge Cihazı onay kutusunu işaretleyin.
    • Kimlik doğrulama türü olarak Simetrik anahtar'ı seçin.
    • Kimlik doğrulama anahtarlarını otomatik olarak oluşturmak ve yeni cihazı hub'ınıza bağlamak için varsayılan ayarları kullanın.
  4. Kaydet'i seçin.

IoT Hub'a kayıtlı bir cihazınız olduğuna göre, IoT Edge çalışma zamanını yükleme ve sağlama işlemini tamamlamak için kullandığınız bilgileri alın.

Kayıtlı cihazları görüntüleme ve sağlama bilgilerini alma

Simetrik anahtar kimlik doğrulaması kullanan cihazların IoT Edge çalışma zamanının yüklenmesini ve sağlanmasını tamamlamak için bağlantı dizesi gerekir.

IoT hub'ınıza bağlanan uç özellikli cihazlar Cihazlar sayfasında listelenir. Listeyi Iot Edge Cihazı türüne göre filtreleyebilirsiniz.

Cihazlarınızı Azure portalında IoT Hub'da görüntüleme işleminin ekran görüntüsü.

Cihazınızı ayarlamaya hazır olduğunuzda, fiziksel cihazınızı IoT hub'ında kimliğine bağlayan bağlantı dizesi gerekir.

Simetrik anahtarlarla kimlik doğrulaması yapılan cihazların bağlantı dizesi portalda kopyalanabilir.

  1. Portaldaki Cihazlar sayfasından listeden IoT Edge cihaz kimliğini seçin.
  2. Birincil Bağlantı Dizesi veya İkincil Bağlantı Dizesi değerini kopyalayın.

IoT Edge'i yükleme

Bu bölümde, Windows VM'nizi veya fiziksel cihazınızı IoT Edge için hazırlarsınız. Ardından IoT Edge'i yüklersiniz.

Azure IoT Edge, OCI uyumlu bir kapsayıcı çalışma zamanı kullanır. Moby tabanlı bir altyapı olan Moby, yükleme betiğine dahil edilir, bu da motoru yüklemek için ek adımlar olmadığı anlamına gelir.

IoT Edge çalışma zamanını yüklemek için:

  1. PowerShell'i yönetici olarak çalıştırın.

    PowerShell(x86) yerine PowerShell'in AMD64 oturumlarını kullanın. Hangi oturum türünü kullandığınızdan emin değilseniz aşağıdaki komutu çalıştırın:

    (Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
    
  2. Aşağıdaki görevleri gerçekleştiren Deploy-IoTEdge komutunu çalıştırın:

    • Windows makinenizin desteklenen bir sürümde olup olmadığını denetler
    • Kapsayıcılar özelliğini açar
    • Moby altyapısını ve IoT Edge çalışma zamanını indirir
    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Deploy-IoTEdge
    
  3. İstenirse cihazınızı yeniden başlatın.

IoT Edge'i bir cihaza yüklediğinizde, işlemi değiştirmek için aşağıdakiler dahil olmak üzere ek parametreler kullanabilirsiniz:

  • Trafiği bir ara sunucudan geçmek için yönlendirme
  • Yükleyiciyi çevrimdışı yükleme için yerel bir dizine işaret etme

Bu ek parametreler hakkında daha fazla bilgi için bkz . Windows kapsayıcıları ile IoT Edge için PowerShell betikleri.

Cihazı bulut kimliğiyle sağlama

Kapsayıcı altyapısı ve IoT Edge çalışma zamanı cihazınıza yüklendiğinden, cihazı bulut kimliği ve kimlik doğrulama bilgileriyle ayarlamak için bir sonraki adıma hazırsınız demektir.

  1. IoT Edge cihazında PowerShell'i yönetici olarak çalıştırın.

  2. Makinenizde IoT Edge çalışma zamanını yapılandırmak için Initialize-IoTEdge komutunu kullanın. Komut varsayılan olarak Windows kapsayıcılarıyla el ile sağlamayı kullanır.

    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
    
    • IoTEdgeSecurityDaemon.ps1 betiğini çevrimdışı veya belirli bir sürüm yüklemesi için cihazınıza indirdiyseniz betiğin yerel kopyasına başvurdığınızdan emin olun.

      . <path>/IoTEdgeSecurityDaemon.ps1
      Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
      
  3. İstendiğinde, önceki bölümde aldığınız cihazı bağlantı dizesi sağlayın. Cihaz bağlantı dizesi fiziksel cihazı IoT Hub'daki bir cihaz kimliğiyle ilişkilendirir ve kimlik doğrulama bilgileri sağlar.

    Cihaz bağlantı dizesi aşağıdaki biçimi alır ve tırnak işaretleri içermemelidir:HostName={IoT_hub_name}.azure-devices.net;DeviceId={device_name};SharedAccessKey={key}

Bir cihazı el ile sağlarken, işlemi değiştirmek için aşağıdakiler dahil olmak üzere ek parametreler kullanabilirsiniz:

  • Trafiği bir ara sunucudan geçmek için yönlendirme
  • Belirli bir edgeAgent kapsayıcı görüntüsü bildirin ve özel bir kayıt defterindeyse kimlik bilgilerini sağlayın

Bu ek parametreler hakkında daha fazla bilgi için bkz . Windows kapsayıcıları ile IoT Edge için PowerShell betikleri.

Başarılı yapılandırmayı doğrulama

Çalışma zamanının IoT Edge cihazınıza başarıyla yüklendiğini ve yapılandırıldığını doğrulayın.

IoT Edge hizmetinin durumunu kontrol edin.

Get-Service iotedge

Hizmet günlüklerini inceleyin.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog

Çalışan modülleri listeleyin.

iotedge list

Çevrimdışı veya belirli bir sürüm yüklemesi (isteğe bağlı)

Bu bölümdeki adımlar, standart yükleme adımları kapsamında olmayan senaryolara yöneliktir. Bu şunları içerebilir:

  • Çevrimdışıyken IoT Edge'i yükleme
  • Sürüm adayı sürümünü yükleme
  • En son sürüm dışında bir sürüm yükleme

Yükleme sırasında üç dosya indirilir:

  • Yükleme yönergelerini içeren bir PowerShell betiği
  • IoT Edge güvenlik daemon'unu (iotedged), Moby kapsayıcı altyapısını ve Moby CLI'yı içeren Microsoft Azure IoT Edge kabini
  • Visual C++ yeniden dağıtılabilir paket (VC çalışma zamanı) yükleyicisi

Cihazınız yükleme sırasında çevrimdışı olacaksa veya IoT Edge'in belirli bir sürümünü yüklemek istiyorsanız, bu dosyaları önceden cihaza indirebilirsiniz. Yükleme zamanı geldiğinde, yükleme betiğini indirilen dosyaları içeren dizine işaret edin. Yükleyici önce bu dizini denetler ve ardından yalnızca bulunmayan bileşenleri indirir. Tüm dosyalar çevrimdışı kullanılabilir durumdaysa, İnternet bağlantısı olmadan yükleyebilirsiniz.

  1. Önceki sürümlerle birlikte en son IoT Edge yükleme dosyaları için bkz . Azure IoT Edge sürümleri.

  2. Yüklemek istediğiniz sürümü bulun ve aşağıdaki dosyaları sürüm notlarının Varlıklar bölümünden IoT cihazınıza indirin:

    • IoTEdgeSecurityDaemon.ps1
    • 1.1 yayın kanalından Microsoft-Azure-IoTEdge-amd64.cab.

    İşlevler her sürümdeki özellikleri destekleyecek şekilde değiştiğinden, PowerShell betiğini kullandığınız .cab dosyasıyla aynı sürümde kullanmak önemlidir.

  3. İndirdiğiniz .cab dosyasında mimari soneki varsa dosyayı yalnızca Microsoft-Azure-IoTEdge.cab olarak yeniden adlandırın.

  4. İsteğe bağlı olarak, Visual C++ yeniden dağıtılabilir için bir yükleyici indirin. Örneğin, PowerShell betiği şu sürümü kullanır: vc_redist.x64.exe. Yükleyiciyi IoT cihazınızdaki IoT Edge dosyalarıyla aynı klasöre kaydedin.

  5. Çevrimdışı bileşenlerle yüklemek için PowerShell betiğinin yerel kopyasını nokta kaynağı yapın.

  6. Parametresiyle -OfflineInstallationPath Deploy-IoTEdge komutunu çalıştırın. Dosya dizininin mutlak yolunu belirtin. Örneğin,

    . path_to_powershell_module_here\IoTEdgeSecurityDaemon.ps1
    Deploy-IoTEdge -OfflineInstallationPath path_to_file_directory_here
    

    Dağıtım komutu, sağlanan yerel dosya dizininde bulunan tüm bileşenleri kullanır. .cab dosyası veya Visual C++ yükleyicisi eksikse, bunları indirmeye çalışır.

IoT Edge'i kaldırma

Windows cihazınızdan IoT Edge yüklemesini kaldırmak istiyorsanız, yönetim PowerShell penceresinden Uninstall-IoTEdge komutunu kullanın. Bu komut, ioT Edge çalışma zamanını ve mevcut yapılandırmanızı ve Moby altyapısı verilerini kaldırır.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; `
Uninstall-IoTEdge

Kaldırma seçenekleri hakkında daha fazla bilgi için komutunu Get-Help Uninstall-IoTEdge -fullkullanın.

Sonraki adımlar

Modülleri cihazınıza dağıtmayı öğrenmek için IoT Edge modüllerini dağıtmaya devam edin.