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 en son sürümüne güncelleştirme hakkında daha fazla bilgi için bkz. Güncelleştirme IoT Edge.

Bu makalede, Bir Windows IoT Edge cihazını kaydetmeye ve sağlamaya yönelik uçtan uca yönergeler sağlanır.

Not

Windows kapsayıcıları ile Azure IoT Edge, Azure IoT Edge 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ını, cihaz kimliğini ve cihazın IoT Hub 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 kimliğini doğrulamak için iki seçeneğiniz vardır:

  • Simetrik anahtarlar: IoT Hub'de 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 IoT Hub için anahtarı 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'de yeni bir cihaz kimliği oluşturduğunuzda, her iki sertifikadan da parmak izleri sağlarsınız. Cihaz IoT Hub kimliğini doğruladığında 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

Kurulacak çok sayıda cihazınız varsa ve her birini el ile sağlamak istemiyorsanız, IoT Edge 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 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ın karşılandığına emin olun.

Cihaz yönetimi araçları

Cihazınızı kaydetme adımları için Azure portal, Visual Studio Code veya Azure CLI 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ıyla IoT Edge için en son Windows uzun vadeli destek derlemesi olan Windows sürüm 1809/derleme 17763 gerekir. 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 kullanabilirsiniz.

Azure portal IoT hub'ınızda IoT Edge cihazlar, uç etkinleştirilmemiş IoT cihazlarından ayrı olarak oluşturulur ve yönetilir.

  1. Azure portal 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.

artık IoT Hub kayıtlı bir cihazınız olduğuna göre, IoT Edge çalışma zamanının yüklenmesini ve sağlanmasını 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, IoT Edge çalışma zamanının yüklenmesini ve sağlanmasını tamamlamak için bağlantı dizelerine ihtiyaç duyar.

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

Azure portal IoT Hub cihazlarınızı 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ı dizesine ihtiyacınız vardır.

Simetrik anahtarlarla kimlik doğrulaması yapılan cihazların bağlantı dizeleri 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 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 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 ve bu da altyapıyı yüklemek için ek adım 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.

Bir cihaza IoT Edge 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ıyla IoT Edge için PowerShell betikleri.

Cihazı bulut kimliğiyle sağlama

Artık 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
    
    • çevrimdışı veya belirli bir sürüm yüklemesi için IoTEdgeSecurityDaemon.ps1 betiğini 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ı dizesini sağlayın. Cihaz bağlantı dizesi, fiziksel cihazı IoT Hub 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ğladığınızda, 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ıyla IoT Edge için PowerShell betikleri.

Yapılandırmanın başarılı olduğunu 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 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'yi içeren Microsoft Azure IoT Edge cab
  • Visual C++ yeniden dağıtılabilir paketi (VC çalışma zamanı) yükleyicisi

Cihazınız yükleme sırasında çevrimdışı olacaksa veya IoT Edge'nin 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 sürüm notlarının Varlıklar bölümünden aşağıdaki dosyaları 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.cabolarak 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 -OfflineInstallationPathDeploy-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 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, mevcut yapılandırmanız ve Moby altyapısı verileriyle birlikte IoT Edge çalışma zamanını 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ülleri dağıtmaya devam edin.