Azure portalını kullanarak otomatik IoT cihazı ve modül yönetimi

Azure IoT Hub'da otomatik cihaz yönetimi, büyük cihaz filolarını yönetmeye yönelik yinelenen ve karmaşık görevlerin çoğunu otomatikleştirir. Otomatik cihaz yönetimi ile, özelliklerine göre bir cihaz kümesini hedefleyebilir, istenen yapılandırmayı tanımlayabilir ve ardından kapsam dahilindeki cihazları IoT Hub'ın güncelleştirmesine izin verebilirsiniz. Bu güncelleştirme, tamamlama ve uyumluluğu özetlemenizi, birleştirme ve çakışmaları işlemenizi ve aşamalı bir yaklaşımda yapılandırmaları dağıtmanızı sağlayan otomatik bir cihaz yapılandırması veya otomatik modül yapılandırması kullanılarak gerçekleştirilir.

Dekont

Bu makalede açıklanan özellikler yalnızca IoT Hub'ın standart katmanında kullanılabilir. Temel ve standart/ücretsiz IoT Hub katmanları hakkında daha fazla bilgi için bkz. Çözümünüz için doğru IoT Hub katmanını seçme.

Otomatik cihaz yönetimi, bir cihaz ikizleri veya modül ikizleri kümesini istenen özelliklerle güncelleştirerek ve ikiz tarafından bildirilen özellikleri temel alan bir özet bildirerek çalışır. Üç bölümü olan Configuration adlı yeni bir sınıf ve JSON belgesi tanıtır:

  • Hedef koşul , güncelleştirilecek cihaz ikizlerinin veya modül ikizlerinin kapsamını tanımlar. Hedef koşul, ikiz etiketleri ve/veya bildirilen özelliklerde sorgu olarak belirtilir.

  • Hedef içerik, hedeflenen cihaz ikizlerine veya modül ikizlerine eklenecek veya güncelleştirilecek istenen özellikleri tanımlar. İçerik, değiştirilmesi istenen özelliklerin bölümünün yolunu içerir.

  • Ölçümler Başarı, Devam Ediyor ve Hata gibi çeşitli yapılandırma durumlarının özet sayılarını tanımlar. Özel ölçümler, ikiz tarafından bildirilen özelliklerde sorgu olarak belirtilir. Sistem ölçümleri, hedeflenen ikiz sayısı ve başarıyla güncelleştirilen ikiz sayısı gibi ikiz güncelleştirme durumunu ölçen varsayılan ölçümlerdir.

Otomatik yapılandırmalar, yapılandırma oluşturulduktan kısa süre sonra ve ardından beş dakikalık aralıklarla ilk kez çalıştırılır. Ölçüm sorguları, otomatik yapılandırma her çalıştığında çalışır. Standart katman IoT hub'larında en fazla 100 otomatik yapılandırma desteklenir; ücretsiz katman IoT hub'larında on. Azaltma sınırları da geçerlidir. Daha fazla bilgi edinmek için bkz . Kotalar ve Azaltma.

İkiz uygulama

Otomatik cihaz yapılandırmaları, bulut ile cihazlar arasındaki durumu eşitlemek için cihaz ikizlerinin kullanılmasını gerektirir. Daha fazla bilgi için bkz. IoT Hub'ındaki cihaz ikizlerini kavrama ve kullanma.

Otomatik modül yapılandırmaları, bulut ve modüller arasındaki durumu eşitlemek için modül ikizlerinin kullanılmasını gerektirir. Daha fazla bilgi için bkz . IoT Hub'da modül ikizlerini anlama ve kullanma.

İkizleri hedeflemek için etiketleri kullanma

Yapılandırma oluşturmadan önce, hangi cihazları veya modülleri etkilemek istediğinizi belirtmeniz gerekir. Azure IoT Hub, cihaz ikizindeki etiketleri kullanan cihazları ve modül ikizindeki etiketleri kullanarak modülleri tanımlar. Her cihazın veya modülün birden çok etiketi olabilir ve bunları çözümünüz için anlamlı olacak şekilde tanımlayabilirsiniz. Örneğin, cihazları farklı konumlarda yönetiyorsanız bir cihaz ikizi için aşağıdaki etiketleri ekleyin:

"tags": {
	"location": {
		"state": "Washington",
		"city": "Tacoma"
    }
},

Yapılandırma oluşturma

Standart katman IoT hub'larında en fazla 100 otomatik yapılandırma oluşturabilirsiniz; ücretsiz katman IoT hub'larında on. Daha fazla bilgi edinmek için bkz . Kotalar ve Azaltma.

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

  2. Sol gezinti bölmesinde Yapılandırmalar + Dağıtımlar'ı seçin.

  3. Ekle'yi seçin ve açılan listeden Cihaz ikizi yapılandırması veya Modül ikizi yapılandırması'nı seçin.

    Screenshot showing how to add a configuration.

Yapılandırma oluşturmak için beş adım vardır. Aşağıdaki bölümlerde her biri izlenerek izlanmıştır.

Ad ve etiket

  1. Yapılandırmanıza en fazla 128 karakter uzunluğunda benzersiz bir ad verin. Küçük harflere ve aşağıdaki özel karakterlere izin verilir: -+%_*!'. Boşluk kullanılamaz.

  2. Yapılandırmalarınızı izlemeye yardımcı olmak için etiketler ekleyin. Etiketler, yapılandırmanızı açıklayan Ad, Değer çiftleridir. Örneğin, HostPlatform, Linux veya Version, 3.0.1.

  3. Sonraki adıma geçmek için İleri'yi seçin.

İkiz ayarları

Bu bölüm, hedeflenen cihaz ikizi veya modül ikizi istenen özelliklerinde ayarlanacak içeriği tanımlar. Her ayar kümesi için iki giriş vardır. İlki, ayarlanacak ikiz istenen özelliklerin içindeki JSON bölümünün yolu olan ikiz yoludur. İkincisi, bu bölüme eklenecek JSON içeriğidir.

Örneğin, ikiz yolunu properties.desired.chiller-water olarak ayarlayabilir ve ardından aşağıdaki JSON içeriğini sağlayabilirsiniz:

{
  "temperature": 66,
  "pressure": 28
}

Screenshot of setting the device or module twin property and json content.

Ayrıca, ikiz yolunun tamamını belirterek ve değeri köşeli ayraç olmadan sağlayarak tek tek ayarları da ayarlayabilirsiniz. Örneğin, ikiz yolu properties.desired.chiller-water.temperatureile içeriği olarak 66ayarlayın. Ardından pressure özelliği için yeni bir ikiz ayarı oluşturun.

İki veya daha fazla yapılandırma aynı ikiz yolunu hedeflerse, en yüksek öncelikli yapılandırmanın içeriği uygulanır (öncelik 4. adımda tanımlanır).

Mevcut bir özelliği kaldırmak istiyorsanız, için özellik değerini nullbelirtin.

Cihaz İkizi Ayarı Ekle veya Modül İkizi Ayarı Ekle'yi seçerek ek ayarlar ekleyebilirsiniz.

Hedef cihazlar veya modüller

Bu yapılandırmayı alması gereken belirli cihazları veya modülleri hedeflemek için ikizlerinizdeki tags özelliğini kullanın. Ayrıca ikiz tarafından bildirilen özellikleri de hedefleyebilirsiniz.

Otomatik cihaz yapılandırmaları yalnızca cihaz ikizi etiketlerini hedefleyebilir ve otomatik modül yapılandırmaları yalnızca modül ikizi etiketlerini hedefleyebilir.

Birden çok yapılandırma aynı cihazı veya modülü hedefleyebileceğinden, her yapılandırma için bir öncelik numarası gerekir. Bir çakışma olursa, en yüksek önceliğe sahip yapılandırma kazanır.

  1. Yapılandırma Önceliği için pozitif bir tamsayı girin. En yüksek sayısal değer en yüksek öncelik olarak kabul edilir. İki yapılandırma aynı öncelik numarasına sahipse, en son oluşturulan yapılandırma kazanır.

  2. Bu yapılandırmayla hangi cihazların veya modüllerin hedefleneceğini belirlemek için bir Hedef koşulu girin. Koşul, ikiz etiketlerini veya ikiz tarafından bildirilen özellikleri temel alır ve ifade biçimiyle eşleşmelidir.

    Otomatik cihaz yapılandırması için yalnızca hedef etiketi veya bildirilen özelliği belirtebilirsiniz. Örneğin, tags.environment='test' veya properties.reported.chillerProperties.model='4000x'. Tüm cihazları hedeflemek için belirtebilirsiniz * .

    Otomatik modül yapılandırması için ioT hub'ına kayıtlı modüllerdeki etiketleri veya bildirilen özellikleri belirtmek için bir sorgu kullanın. Örneğin, from devices.modules where tags.environment='test' veya from devices.modules where properties.reported.chillerProperties.model='4000x'. Joker karakter tüm modülleri hedeflemek için kullanılamaz.

Ölçümler

Ölçümler, yapılandırma içeriği uygulandıktan sonra bir cihazın veya modülün geri bildirebileceği çeşitli durumların özet sayısını sağlar. Örneğin, bekleyen ayar değişiklikleri için bir ölçüm, hatalara yönelik bir ölçüm ve başarılı ayar değişiklikleri için bir ölçüm oluşturabilirsiniz.

Her yapılandırmada en fazla beş özel ölçüm olabilir.

  1. Ölçüm Adı için bir ad girin.

  2. Ölçüm Ölçütleri için bir sorgu girin. Sorgu, cihaz ikizi tarafından bildirilen özellikleri temel alır. Ölçüm, sorgu tarafından döndürülen satır sayısını temsil eder.

    Örnek:

    SELECT deviceId FROM devices 
      WHERE properties.reported.chillerWaterSettings.status='pending'
    

    Yapılandırmanın uygulandığı bir yan tümce ekleyebilirsiniz, örneğin:

    /* Include the double brackets. */
    SELECT deviceId FROM devices 
      WHERE configurations.[[yourconfigname]].status='Applied'
    

    Yapılandırılmış modülleri raporlamak için bir ölçüm oluşturuyorsanız içinden devices.modulesöğesini seçinmoduleId. Örnek:

    SELECT deviceId, moduleId FROM devices.modules
      WHERE properties.reported.lastDesiredStatus.code = 200
    

Yapılandırmayı Gözden Geçir

Yapılandırma bilgilerinizi gözden geçirin ve gönder'i seçin.

Yapılandırmayı izleme

Yapılandırmanın ayrıntılarını görüntülemek ve çalıştıran cihazları izlemek için aşağıdaki adımları kullanın:

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

  2. Cihaz yönetiminde Yapılandırmalar'ı seçin.

  3. Yapılandırma listesini inceleyin. Her yapılandırma için aşağıdaki ayrıntıları görüntüleyebilirsiniz:

    • Kimlik - yapılandırmanın adı.

    • Hedef koşul : Hedeflenen cihazları veya modülleri tanımlamak için kullanılan sorgu.

    • Öncelik - yapılandırmaya atanan öncelik numarası.

    • Oluşturma zamanı - yapılandırmanın oluşturulduğu zamana ait zaman damgası. Bu zaman damgası, iki yapılandırma aynı önceliğe sahip olduğunda bağlantıları kesmek için kullanılır.

    • Sistem ölçümleri - IoT Hub tarafından hesaplanan ve geliştiriciler tarafından özelleştirilemeyen ölçümler. Hedeflenen, hedef koşulla eşleşen cihaz ikizlerinin sayısını belirtir. Ayrı, daha yüksek öncelikli bir yapılandırmanın da değişiklik yaptığı durumlarda kısmi değişiklikler içerebilen, yapılandırma tarafından değiştirilen cihaz ikizlerinin sayısını belirtir.

    • Özel ölçümler - geliştirici tarafından ikiz tarafından bildirilen özelliklere yönelik sorgular olarak belirtilen ölçümler. Yapılandırma başına en fazla beş özel ölçüm tanımlanabilir.

  4. İzlemek istediğiniz yapılandırmayı seçin.

  5. Yapılandırma ayrıntılarını inceleyin. Yapılandırmayı alan cihazlarla ilgili belirli ayrıntıları görüntülemek için sekmeleri kullanabilirsiniz.

    • Hedef Cihazlar veya Hedef Modüller - hedef koşulla eşleşen cihazlar veya modüller.

    • Ölçümler : Sistem ölçümlerinin ve özel ölçümlerin listesi. Açılan listeden ölçümü seçip Cihazları Görüntüle veya Modülleri Görüntüle'yi seçerek her ölçüm için sayılan cihazların veya modüllerin listesini görüntüleyebilirsiniz.

    • Etiketler - yapılandırmayı açıklamak için kullanılan anahtar-değer çiftleri. Etiketlerin işlevsellik üzerinde hiçbir etkisi yoktur.

    • Cihaz İkizi Ayarlar veya Modül İkizi Ayarlar - varsa yapılandırma tarafından ayarlanan ikiz ayarları.

Yapılandırmayı değiştirme

Bir yapılandırmayı değiştirdiğinizde, değişiklikler hemen tüm hedeflenen cihazlara veya modüllere çoğaltılır.

Hedef koşulu güncelleştirirseniz aşağıdaki güncelleştirmeler gerçekleşir:

  • bir ikiz eski hedef koşulu karşılamadıysa ancak yeni hedef koşulu karşılıyorsa ve bu yapılandırma bu ikiz için en yüksek öncelikse, bu yapılandırma uygulanır.

  • Şu anda bu yapılandırmayı çalıştıran bir ikiz artık hedef koşulu karşılıyorsa, yapılandırmadaki ayarlar kaldırılır ve ikiz bir sonraki en yüksek öncelikli yapılandırma tarafından değiştirilir.

  • Şu anda bu yapılandırmayı çalıştıran bir ikiz artık hedef koşulu karşılamıyorsa ve diğer yapılandırmaların hedef koşulunu karşılamıyorsa, yapılandırmadaki ayarlar kaldırılır ve ikizde başka bir değişiklik yapılmaz.

Yapılandırmayı değiştirmek için aşağıdaki adımları kullanın:

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

  2. Cihaz yönetiminde Yapılandırmalar + Dağıtımlar'ı seçin.

  3. Değiştirmek istediğiniz yapılandırmayı seçin.

  4. Aşağıdaki alanlarda güncelleştirmeler yapabilirsiniz:

    • Öncelik
    • Ölçümler
    • Hedef koşul
    • Etiketler
  5. Kaydet'i seçin.

  6. Değişikliklerin dağıtımını izlemek için Yapılandırmayı izleme'deki adımları izleyin.

Yapılandırmayı silme

Bir yapılandırmayı sildiğinizde, tüm cihaz ikizleri bir sonraki en yüksek öncelikli yapılandırmalarını alır. Cihaz ikizleri başka bir yapılandırmanın hedef koşulunu karşılamıyorsa, başka hiçbir ayar uygulanmaz.

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

  2. Cihaz yönetiminde Yapılandırmalar + Dağıtımlar'ı seçin.

  3. Silmek istediğiniz yapılandırmayı seçmek için onay kutusunu kullanın.

  4. Sil'i seçin.

  5. Bir istem onaylamanızı ister.

Sonraki adımlar

Bu makalede, IoT cihazlarını büyük ölçekte yapılandırmayı ve izlemeyi öğrendiniz.

IoT Hub cihaz kimliklerini toplu olarak yönetmeyi öğrenmek için bkz . IoT Hub cihaz kimliklerini toplu olarak içeri ve dışarı aktarma