Share via


IoT hub'larını bağlama ve yönetme

Azure IoT Hub Cihaz Sağlama Hizmeti (DPS), bir veya daha fazla IoT hub'ına cihaz sağlayabilir. DPS'nin ioT hub'ına cihaz sağlayabilmesi için önce dps örneğiniz ile bağlantılı olması gerekir. Bir IoT hub'ı bağlandıktan sonra ayırma ilkesinde kullanılabilir. Ayırma ilkeleri, cihazların DPS tarafından IoT hub'larına nasıl atandığını belirler. Bu makalede, IoT hub'larını bağlama ve BUNLARı DPS örneğinizde yönetme hakkında yönergeler sağlanır.

Bağlı IoT hub'ları ve ayırma ilkeleri

DPS yalnızca ona bağlı IoT hub'larına cihaz sağlayabilir. IoT hub'ını bir DPS örneğine bağlamak, hizmetin IoT hub'ına ait cihaz kayıt defterine okuma/yazma izinleri verir. Bu izinlerle DPS bir cihaz kimliği kaydedebilir ve cihaz ikizinde ilk yapılandırmayı ayarlayabilir. Bağlı IoT hub'ları herhangi bir Azure bölgesinde olabilir. Diğer aboneliklerdeki hub'ları DPS örneğine bağlayabilirsiniz.

IoT hub'ı DPS'ye bağlandıktan sonra ayırmaya katılmaya uygundur. Ayırmaya katılıp katılmayacağı, cihazın sağladığı kayıt ayarlarına ve bağlı IoT hub'ında bulunan ayarlara bağlıdır.

Aşağıdaki ayarlar DPS'nin bağlı IoT hub'larını nasıl kullandığını denetler:

  • Bağlan ion dizesi: DPS'nin bağlı IoT hub'ına bağlanmak için kullandığı IoT Hub bağlantı dizesi ayarlar. bağlantı dizesi, IoT hub'ının paylaşılan erişim ilkelerinden birini temel alır. DPS'nin IoT hub'ı üzerinde şu izinlere sahip olması gerekir: RegistryWrite ve Service Bağlan. bağlantı dizesi, bu izinlere sahip bir paylaşılan erişim ilkesi için olmalıdır. IoT Hub paylaşılan erişim ilkeleri hakkında daha fazla bilgi edinmek için bkz . IoT Hub erişim denetimi ve izinleri.

  • Ayırma ağırlığı: DPS bir IoT hub'ı kümesinde cihaz atamasını karma hale getirdiğinde bir IoT hub'ının seçilme olasılığını belirler. Değer bir ile 1000 arasında olabilir. Varsayılan değer birdir (veya null). Daha yüksek değerler IoT hub'ının seçilme olasılığını artırır.

  • Ayırma ilkesini uygula: IoT hub'larının ayırma ilkesine katılıp katılmayacağını ayarlar. Varsayılan değer Evet (true) değeridir. Hayır (yanlış) olarak ayarlanırsa cihazlar IoT hub'ına atanamaz. IoT hub'ı yine bir kayıtta seçilebilir, ancak ayırmaya katılmaz. Bir IoT hub'ını ayırmaya katılmadan geçici veya kalıcı olarak kaldırmak için bu ayarı kullanabilirsiniz; örneğin, izin verilen cihaz sayısına yaklaşıyorsa.

DPS ayırma ilkeleri ve bağlantılı IoT hub'larının bunlara nasıl katıldığı hakkında bilgi edinmek için bkz . Ayırma ilkelerini yönetme.

Bağlı IoT hub'ı ekleme

Bir IoT hub'ını DPS örneğine bağladığınızda, ayırmaya katılmak için kullanılabilir hale gelir. Aboneliğinizin içindeki veya dışındaki IoT hub'larını ekleyebilirsiniz. Bir IoT hub'ına bağlandığınızda, mevcut kayıtlardaki ayırmalar için kullanılabilir veya kullanılamayabilir:

  • Ayırma ilkesinin uygulanacağı IoT hub'larını açıkça ayarlamamış kayıtlar için, yeni bağlanan bir IoT hub'ı ayırmaya hemen katılmaya başlar.

  • Ayırma ilkesinin uygulanacağı IoT hub'larını açıkça ayarlayan kayıtlarda, ayırmaya katılması için yeni IoT hub'ını kayıt ayarlarına el ile veya program aracılığıyla eklemeniz gerekir.

Sınırlamalar

Azure portalında bir IoT hub'ını DPS örneğinizin sol menüsünden veya kayıt oluştururken veya güncelleştirirken kayıttan bağlayabilirsiniz. Her iki durumda da IoT hub'ına dps örneği (yalnızca kayıt değil) kapsamı eklenir.

Azure portalında bir IoT hub'ını DPS örneğine bağlamak için:

  1. DPS örneğinizin sol menüsünde Bağlı IoT hub'ları'nı seçin.

  2. Sayfanın üst kısmında + Ekle'yi seçin.

  3. IoT hub'ına bağlantı ekle sayfasında IoT hub'ını içeren aboneliği seçin ve ardından IoT hub listesinden IoT hub'ının adını seçin.

  4. IoT hub'ını seçtikten sonra DPS'nin IoT hub'ına bağlanmak için kullanacağı bir erişim ilkesi seçin. Erişim İlkesi listesi, seçilen IoT Hub'da tanımlanan ve hem RegistryWrite hem de Service Bağlan izinlerinin tanımlandığı tüm paylaşılan erişim ilkelerini gösterir. Varsayılan ayar iothubowner ilkesidir. Kullanmak istediğiniz ilkeyi seçin.

  5. Kaydet'i seçin.

Kayıt oluştururken veya güncelleştirirken, kayıtta Yeni bir IoT hub'ı bağla düğmesini kullanabilirsiniz. Size yukarıdakiyle aynı sayfa ve seçenekler sunulur. Bağlı hub'ı kaydettikten sonra DPS örneğinizde kullanılabilir ve kaydınızdan seçilebilir.

Dekont

Azure portalında, bağlı bir IoT hub'ı eklerken Ayırma ağırlığı ve Ayırma ilkesi uygula ayarlarını yapamazsınız. Bunun yerine, IoT hub'ı bağlandıktan sonra bu ayarları güncelleştirebilirsiniz. Daha fazla bilgi edinmek için bkz . Bağlı IoT hub'larını güncelleştirme.

IoT hub'ını DPS örneğinize bağlamak için az iot dps linked-hub create Azure CLI komutunu kullanın.

Örneğin aşağıdaki komut, iothubowner paylaşılan erişim ilkesi için bir bağlantı dizesi kullanarak MyExampleHub adlı bir IoT hub'ını bağlar. Bu komut, Ayırma ağırlığı ve Ayırma ilkesi ayarlarını uygula ayarlarını varsayılan değerlerinde bırakır, ancak isterseniz bu ayarlar için değerler belirtebilirsiniz.

az iot dps linked-hub create --dps-name MyExampleDps --resource-group MyResourceGroup --connection-string "HostName=MyExampleHub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=XNBhoasdfhqRlgGnasdfhivtshcwh4bJwe7c0RIGuWsirW0=" --location westus

DPS, DPS kaynağı REST API'sini, Resource Manager şablonlarını ve DPS Yönetim SDK'larını kullanarak IoT Hub'ları bağlamayı da destekler.

Bağlı IoT hub'ına güncelleştirme

Bağlı bir IoT hub'ı üzerindeki ayarları, ayırma ağırlığını, buna uygulanan ayırma ilkelerinin olup olmadığını ve DPS'nin buna bağlanmak için kullandığı bağlantı dizesi değiştirmek için güncelleştirebilirsiniz. IoT hub'ına ilişkin ayarları güncelleştirdiğinizde, IoT hub'ı bir kayıtta belirtilirse veya varsayılan olarak kullanılırsa değişiklikler hemen geçerli olur.

Bağlantılı IoT hub'ını güncelleştirmek için Azure portalını kullanma

Azure portalında Ayırma ağırlığını ve Ayırma ilkesi ayarlarını uygula'yı güncelleştirebilirsiniz.

Azure portalını kullanarak bağlı ioT hub'ına yönelik ayarları güncelleştirmek için:

  1. DPS örneğinizin sol menüsünde Bağlı IoT hub'ları'nı ve ardından listeden IoT hub'ını seçin.

  2. Bağlı IoT hub'ı ayrıntıları sayfasında:

    Screenshot that shows the linked IoT hub details page. .

    • Bir ile 1000 arasında bir ağırlık seçmek için Ayırma ağırlığı kaydırıcısını veya metin kutusunu kullanın. Varsayılan değer birdir.

    • Bağlı IoT hub'ına ayırma eklenip eklenmeyeceğini belirtmek için Ayırma ilkesi uygula anahtarını ayarlayın.

  3. Ayarlarınızı kaydedin.

Dekont

DPS'nin Azure portalından IoT hub'ına bağlanmak için kullandığı bağlantı dizesi güncelleştiremezsiniz. Bunun yerine, bağlantı dizesi güncelleştirmek için Azure CLI'yı kullanabilir veya bağlı IoT hub'ını DPS örneğinizden silip yeniden bağlayabilirsiniz. Daha fazla bilgi edinmek için bkz . Bağlı IoT hub'ları için anahtarları güncelleştirme.

Bağlantılı IoT hub'ını güncelleştirmek için Azure CLI'yi kullanma

Azure CLI ile Ayırma ağırlığını, Ayırma ilkesini uygula ve Bağlan dize ayarlarını güncelleştirebilirsiniz.

Ayırma ağırlığını güncelleştirmek veya ayırma ilkeleri ayarlarını uygulamak için az iot dps linked-hub update komutunu kullanın. Örneğin, aşağıdaki komut, bağlı bir IoT hub'ı için ayırma ağırlığını ayarlar ve ayırma ilkesini uygular:

az iot dps linked-hub update --dps-name MyExampleDps --resource-group MyResourceGroup --linked-hub MyExampleHub --allocation-weight 2 --apply-allocation-policy true

Bağlı ioT hub'ına yönelik bağlantı dizesi güncelleştirmek için az iot dps update komutunu kullanın. Parametresini--set, kullanmak istediğiniz IoT hub paylaşılan erişim ilkesine yönelik bağlantı dizesi ile birlikte kullanabilirsiniz. Ayrıntılar için bkz . Bağlı IoT hub'ları için anahtarları güncelleştirme.

DPS ayrıca DPS kaynağı REST API'sini, Resource Manager şablonlarını ve DPS Yönetim SDK'larını kullanarak bağlı IoT Hub'larının güncelleştirilmesini de destekler.

Bağlı IoT hub'larını silme

Bağlı bir IoT hub'ını DPS örneğinizden sildiğinizde, bu hub artık gelecekteki kayıtlarda ayarlanamaz. Ancak, mevcut kayıtlardaki ayırmalardan kaldırılabilir veya kaldırılamayabilir:

  • Ayırma ilkesinin uygulanacağı IoT hub'larını açıkça ayarlamamış kayıtlar için, silinen bağlantılı IoT hub'ı artık ayırma için kullanılamaz.

  • IoT hub'larını ayırma ilkesinin uygulanacağı şekilde açıkça ayarlayan kayıtlar için IoT hub'ını ayırmaya katılımdan kaldırılabilmesi için kayıt ayarlarından el ile veya program aracılığıyla kaldırmanız gerekir. Bunun yapılmaması, cihaz kayıt aracılığıyla sağlamayı denediğinde hataya neden olabilir.

Bağlantılı IoT hub'ını silmek için Azure portalını kullanma

Bağlı bir IoT hub'ını Azure portalındaki DPS örneğinizden silmek için:

  1. DPS örneğinizin sol menüsünde Bağlı IoT hub'ları'nı seçin.

  2. IoT hub'ları listesinden, silmek istediğiniz IoT hub'larının veya IoT hub'larının yanındaki onay kutusunu seçin. Ardından sayfanın üst kısmındaki Sil'i seçin ve istendiğinde seçiminizi onaylayın.

Bağlantılı IoT hub'ını silmek için Azure CLI'yi kullanma

DPS örneğinden bağlı bir IoT hub'ını kaldırmak için az iot dps linked-hub delete komutunu kullanın. Örneğin, aşağıdaki komut MyExampleHub adlı IoT hub'ını kaldırır:

az iot dps linked-hub delete --dps-name MyExampleDps --resource-group MyResourceGroup --linked-hub MyExampleHub

DPS ayrıca DPS kaynağı REST API'sini, Resource Manager şablonlarını ve DPS Yönetim SDK'larını kullanarak DPS örneğinden bağlı IoT Hub'larının silinmesini de destekler.

Bağlı IoT hub'ları için anahtarları güncelleştirme

DPS'ye bağlı bir IoT hub'ına ait simetrik anahtarları döndürmek veya güncelleştirmek gerekebilir. Bu durumda, bağlı IoT hub'ı için DPS'deki bağlantı dizesi ayarını da güncelleştirmeniz gerekir. IoT hub'ına sağlama işleminin IoT hub'ına anahtar güncelleştirme ile DPS örneğinizi bu anahtarı temel alan yeni bağlantı dizesiyle güncelleştirme arasındaki arada başarısız olacağını unutmayın. Bu nedenle, bağlı hub'daki connnection dizesini sabit bir şekilde güncelleştirebileceğinizden, anahtarlarınızı güncelleştirmek için Azuer CLI kullanmanızı öneririz. Azure portalında, bağlantı dizesi güncelleştirmek için IoT hub'ını DPS örneğinizden silmeniz ve sonra yeniden bağlamanız gerekir.

Anahtarları güncelleştirmek için Azure portalını kullanma

Azure portalını kullanırken bağlantılı IoT Hub için bağlantı dizesi ayarını güncelleştiremezsiniz. Bunun yerine, bağlı IoT hub'ını DPS örneğinizden silip yeniden eklemeniz gerekir.

Azure portalında bağlı bir IoT hub'ına yönelik simetrik anahtarları güncelleştirmek için:

  1. Azure portalında DPS örneğinizin sol menüsünde, anahtarları güncelleştirmek istediğiniz IoT hub'ını seçin.

  2. Bağlı IoT hub'ı ayrıntıları sayfasında, Ayırma ağırlığı ve Ayırmayı uygula ilkesi değerlerini not edin; Daha sonra IoT hub'ını DPS örneğiniz ile yeniden bağladığınızda bu değerlere ihtiyacınız olacaktır. Ardından, IoT hub'ına gitmek için Kaynağı Yönet'i seçin.

  3. IoT hub'ının sol menüsünde, Güvenlik ayarları'nın altında Paylaşılan erişim ilkeleri'ni seçin.

  4. Paylaşılan erişim ilkeleri'nin Paylaşılan erişim ilkelerini yönet bölümünde DPS örneğinizin bağlı IoT hub'ına bağlanmak için kullandığı ilkeyi seçin.

  5. Sayfanın üst kısmında Birincil anahtarı yeniden oluştur, İkincil anahtarı yeniden oluştur veya Anahtarları değiştir'i seçin ve istendiğinde seçiminizi onaylayın.

  6. DPS örneğine geri dönün.

  7. IoT hub'ını DPS örneğinizden silmek için IoT hub'ını silme makalesindeki adımları izleyin.

  8. IoT hub'ını DPS örneğiniz ile ilkenin yeni bağlantı dizesi yeniden bağlamak için IoT hub'ını bağlama başlığındaki adımları izleyin.

  9. Ayırma ağırlığını geri yüklemeniz ve ayırma ilkesi ayarlarını uygulamanız gerekiyorsa, 2. adımda kaydettiğiniz değerleri kullanarak bağlantılı IoT hub'ını güncelleştirme makalesindeki adımları izleyin.

Anahtarları güncelleştirmek için Azure CLI'yi kullanma

Azure CLS ile bağlantılı bir IoT hub'ına yönelik simetrik anahtarları güncelleştirmek için:

  1. IoT hub'sındaki paylaşılan erişim ilkesinin simetrik anahtarlarını değiştirmek veya yeniden oluşturmak için az iot hub policy renew-key komutunu kullanın. Örneğin, aşağıdaki komut ioT hub'sındaki iothubowner paylaşılan erişim ilkesinin birincil anahtarını yeniler:

    az iot hub policy renew-key --hub-name MyExampleHub --name owner --rk primary
    
  2. Paylaşılan erişim ilkesi için yeni bağlantı dizesi almak için az iot hub connection-string show komutunu kullanın. Örneğin, aşağıdaki komut, önceki komutta birincil anahtarın yeniden oluşturulduğu iothubowner paylaşılan erişim ilkesi için birincil bağlantı dizesi alır:

    az iot hub connection-string show --hub-name MyExampleHub --policy-name owner --key-type primary
    
  3. DPS örneğinizin bağlı IoT hub'ları koleksiyonundaki IoT hub'ının konumunu bulmak için az iot dps linked-hub list komutunu kullanın. Örneğin, aşağıdaki komut, önceki komutta birincil anahtarın yeniden oluşturulduğu sahip paylaşılan erişim ilkesi için birincil bağlantı dizesi alır:

    az iot dps linked-hub list --dos-name MyExampleDps
    

    Çıktı, DPS örneğiniz tarafından tutulan bağlı IoT hub'ları tablosunda bağlantı dizesi güncelleştirmek istediğiniz bağlı IoT hub'ının konumunu gösterir. Bu durumda, listedeki ilk IoT hub'ı olan MyExampleHub'dır.

    [
    {
        "allocationWeight": null,
        "applyAllocationPolicy": null,
        "connectionString": "HostName=MyExampleHub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=****",
        "location": "centralus",
        "name": "MyExampleHub.azure-devices.net"
    },
    {
        "allocationWeight": null,
        "applyAllocationPolicy": null,
        "connectionString": "HostName=MyExampleHub-2.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=****",
        "location": "centralus",
        "name": "NyExampleHub-2.azure-devices.net"
    }
    ]
    
  4. Bağlı IoT hub'ına yönelik bağlantı dizesi güncelleştirmek için az iot dps update komutunu kullanın. IoT hub'ını --set hedeflemek için tablodaki bağlı IoT hub'ının properties.iotHubs[] parametresini ve konumunu kullanırsınız. Örneğin, aşağıdaki komut ilk olarak önceki komutta döndürülen MyExampleHub için bağlantı dizesi güncelleştirir:

    az iot dps update --name MyExampleDps --set properties.iotHubs[0].connectionString="HostName=MyExampleHub-2.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=NewTokenValue"
    

Sonraki adımlar