Azure IoT Edge modüllerini anlama

Şunlar için geçerlidir:IoT Edge 1.4 checkmark IoT Edge 1.4

Önemli

IoT Edge 1.4 desteklenen sürümdür. Önceki bir sürümdeyseniz bkz. IoT Edge’i güncelleştirme.

Azure IoT Edge, uçtaki iş mantığını modüller biçiminde dağıtmanıza ve yönetmenize olanak tanır. Azure IoT Edge modülleri, IoT Edge tarafından yönetilen en küçük hesaplama birimidir ve Azure hizmetlerini (Azure Stream Analytics gibi) veya kendi çözüme özgü kodunuzu içerebilir. Modüllerin nasıl geliştirilip dağıtılıp korunacaklarını anlamak için bir modülün dört kavramsal öğesini göz önünde bulundurun:

  • Modül görüntüsü, modülü tanımlayan yazılımı içeren bir pakettir.
  • Modül örneği, ioT Edge cihazında modül görüntüsünü çalıştıran belirli bir hesaplama birimidir. Modül örneği IoT Edge çalışma zamanı tarafından başlatılır.
  • Modül kimliği, her modül örneğiyle ilişkili IoT Hub'da depolanan bir bilgi parçasıdır (güvenlik kimlik bilgileri dahil).
  • Modül ikizi, ioT Hub'da depolanan ve meta veriler, yapılandırmalar ve koşullar dahil olmak üzere bir modül örneğinin durum bilgilerini içeren bir JSON belgesidir.

Modül görüntüleri ve örnekleri

IoT Edge modül görüntüleri, IoT Edge çalışma zamanının yönetim, güvenlik ve iletişim özelliklerinden yararlanan uygulamalar içerir. Kendi modül görüntülerinizi geliştirebilir veya Azure Stream Analytics gibi desteklenen bir Azure hizmetinden dışarı aktarabilirsiniz. Görüntüler bulutta bulunur ve farklı çözümlerde güncelleştirilebilir, değiştirilebilir ve dağıtılabilir. Örneğin, üretim hattı çıkışını tahmin etmek için makine öğrenmesi kullanan bir modül, insansız hava aracını denetlemek için görüntü işleme kullanan modülden ayrı bir görüntü olarak bulunur.

Bir modül görüntüsü bir cihaza dağıtıldığında ve IoT Edge çalışma zamanı tarafından başlatıldığında, bu modülün yeni bir örneği oluşturulur. Dünyanın farklı yerlerindeki iki cihaz aynı modül görüntüsünü kullanabilir. Ancak, modül cihazda başlatıldığında her cihazın kendi modül örneği olacaktır.

Diagram - Module images in cloud, module instances on devices

Uygulamada modül görüntüleri bir depoda kapsayıcı görüntüleri olarak bulunur ve modül örnekleri cihazlar üzerindeki kapsayıcılardır.

Modül kimlikleri

IoT Edge çalışma zamanı tarafından yeni bir modül örneği oluşturulduğunda ilgili modül kimliğini alır. Modül kimliği IoT Hub'da depolanır ve bu modül örneğinin tüm yerel ve bulut iletişimleri için adresleme ve güvenlik kapsamı olarak kullanılır.

Modül örneğiyle ilişkilendirilmiş kimlik, örneğin çalıştığı cihazın kimliğine ve çözümünüzde bu modüle sağladığınız ada bağlıdır. Örneğin, Azure Stream Analytics kullanan bir modülü çağırır insight ve adlı Hannover01bir cihaza dağıtırsanız IoT Edge çalışma zamanı adlı /devices/Hannover01/modules/insightilgili bir modül kimliği oluşturur.

Açıkçası, bir modül görüntüsünü aynı cihaza birden çok kez dağıtmanız gereken senaryolarda, aynı görüntüyü farklı adlarla birden çok kez dağıtabilirsiniz.

Diagram - Module identities are unique within devices and across devices

Modül ikizleri

Her modül örneğinin, modül örneğini yapılandırmak için kullanabileceğiniz karşılık gelen bir modül ikizi de vardır. Örnek ve ikiz, modül kimliği aracılığıyla birbirleriyle ilişkilendirilir.

Modül ikizi, modül bilgilerini ve yapılandırma özelliklerini depolayan bir JSON belgesidir. Bu kavram IoT Hub'dan cihaz ikizi kavramını paralel hale getirmektedir. Modül ikizinin yapısı, cihaz ikizi ile aynıdır. İkiz türleriyle etkileşimde bulunurken kullanılan API'ler de aynıdır. İkisi arasındaki tek fark, istemci SDK'sının örneğini oluştururken kullanılan kimliktir.

// Create a ModuleClient object. This ModuleClient will act on behalf of a
// module since it is created with a module’s connection string instead
// of a device connection string.
ModuleClient client = new ModuleClient.CreateFromEnvironmentAsync(settings);
await client.OpenAsync();

// Get the module twin
Twin twin = await client.GetTwinAsync();

Çevrimdışı özellikler

Azure IoT Edge modülleri, IoT Hub ile en az bir kez eşitledikten sonra süresiz olarak çevrimdışı çalışabilir. IoT Edge cihazları bu çevrimdışı özelliği diğer IoT cihazlarına da genişletebilir. Daha fazla bilgi için bkz . IoT Edge cihazları, modülleri ve aşağı akış cihazları için genişletilmiş çevrimdışı özellikleri anlama.

Sonraki adımlar