Öğretici: Azure IoT Hub için Cihaz Güncelleştirmesi'ni kullanarak ara sunucu güncelleştirmesini tamamlama
Henüz yapmadıysanız, Azure IoT Hub için Cihaz Güncelleştirmesi ile ara sunucu güncelleştirmelerini kullanma bölümünü gözden geçirin.
Test cihazı veya sanal makine ayarlama
Bu öğreticide örnek olarak Ubuntu Server 18.04 LTS sanal makinesi (VM) kullanılmaktadır.
Cihaz Güncelleştirme Aracısı'nı ve bağımlılıkları yükleme
packages.microsoft.com bir APT paket deposuna kaydedin:
sudo apt-get update sudo apt install curl curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ~/microsoft-prod.list sudo cp ~/microsoft-prod.list /etc/apt/sources.list.d/ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > ~/microsoft.gpg sudo cp ~/microsoft.gpg /etc/apt/trusted.gpg.d/ sudo apt-get update
IoT cihazına deviceupdate-agent'ı yükleyin. En son Cihaz Güncelleştirme Debian dosyasını packages.microsoft.com indirin:
sudo apt-get install deviceupdate-agent
Alternatif olarak, indirilen Debian dosyasını test VM'sine kopyalayın. Bilgisayarınızda PowerShell kullanıyorsanız aşağıdaki kabuk komutunu çalıştırın:
scp <path to the .deb file> tester@<your vm's ip address>:~
Ardından VM'nize uzaktan bağlanın ve giriş klasöründe aşağıdaki kabuk komutunu çalıştırın:
#go to home folder cd ~ #install latest Device Update agent sudo apt-get install ./<debian file name from the previous step>
Azure IoT Hub gidin ve IoT cihazınızın Cihaz Güncelleştirmesi modülü için birincil bağlantı dizesini kopyalayın. alanın varsayılan değerlerini
connectionData
du-config.json dosyasındaki birincil bağlantı dizesiyle değiştirin:sudo nano /etc/adu/du-config.json
Not
Bunun yerine cihazın birincil bağlantı dizesini kopyalayabilirsiniz, ancak Cihaz Güncelleştirme modülü için dizeyi kullanmanızı öneririz. Modülü ayarlama hakkında bilgi için bkz. Cihaz Güncelleştirme Aracısı sağlama.
/etc/adu/du-diagnostics-config.json dosyasının günlük toplama için doğru ayarları içerdiğinden emin olun. Örnek:
{ "logComponents":[ { "componentName":"adu", "logPath":"/var/log/adu/" }, { "componentName":"do", "logPath":"/var/log/deliveryoptimization-agent/" } ], "maxKilobytesToUploadPerLogPath":50 }
Cihaz Güncelleştirme aracısını yeniden başlatın:
sudo systemctl restart deviceupdate-agent
Sahte bileşenleri ayarlama
Test ve tanıtım amacıyla cihazda aşağıdaki sahte bileşenleri oluşturacağız:
- Üç motor
- İki kamera
- "hostfs"
- "rootfs"
Önemli
Yukarıdaki bileşen yapılandırması, libcontoso-component-enumerator.so adlı örnek bir bileşen numaralandırıcı uzantısının uygulanmasını temel alır. Ayrıca bu sahte bileşen envanteri veri dosyasını da gerektirir: /usr/local/contoso-devices/components-inventory.json.
Tanıtım klasörünü test VM'sinde giriş dizininize kopyalayın. Ardından, gerekli dosyaları doğru konumlara kopyalamak için aşağıdaki komutu çalıştırın:
`~/demo/tools/reset-demo-components.sh`
Komut,
reset-demo-components.sh
sizin yerinize aşağıdaki adımları uygular:components-inventory.json dosyasını kopyalar ve /usr/local/contoso-devices klasörüne ekler.
Contoso bileşen numaralandırıcı uzantısını (libcontoso-component-enumerator.so) Varlıklar klasöründen kopyalar ve /var/lib/adu/extensions/sources klasörüne ekler.
Uzantıyı kaydeder:
sudo /usr/bin/AducIotAgent -E /var/lib/adu/extensions/sources/libcontoso-component-enumerator.so
Örnek güncelleştirmeyi içeri aktarma
Henüz yapmadıysanız IoT hub'ı yapılandırma da dahil olmak üzere bir Cihaz Güncelleştirme hesabı ve örneği oluşturun. Ardından aşağıdaki yordamı başlatın.
En son Cihaz Güncelleştirmesi sürümündenVarlıklar'ın altında ara sunucu güncelleştirmeleri için içeri aktarma bildirimlerini ve görüntülerini indirin.
Cihaz Güncelleştirmesi ile Azure portal oturum açın ve IoT hub'ınıza gidin. Sol bölmede Cihaz Yönetimi>Güncelleştirmeler öğesini seçin.
Güncelleştirmeler sekmesini seçin.
+ Yeni Güncelleştirmeyi İçeri Aktar'ı seçin.
+ Depolama kapsayıcısından seç'i ve ardından depolama hesabınızı ve kapsayıcınızı seçin.
1. adımda indirdiğiniz dosyaları eklemek için Karşıya Yükle'yi seçin.
Üst içeri aktarma bildirimini, alt içeri aktarma bildirimini ve yük dosyalarını kapsayıcınıza yükleyin.
Aşağıdaki örnekte, akıllı elektrikli süpürge cihazına bağlı kameraları güncelleştirmek için karşıya yüklenen örnek dosyalar gösterilmektedir. Ayrıca, havadan güncelleştirmeden önce kameraları kapatmak için bir ön kurulum betiği içerir.
Örnekte üst içeri aktarma bildirimi contoso şeklindedir . Virtual-Vacuum-virtual-camera.1.4.importmanifest.json. Kamerayı güncelleştirme ayrıntılarını içeren alt içeri aktarma bildirimi Contoso.Virtual-Vacuum.3.3.importmanifest.json şeklindedir. Her iki bildirim dosyası adı da gerekli biçimi izler ve .importmanifest.json ile biter.
Seç’i seçin.
Kullanıcı arabirimi artık Cihaz Güncelleştirmesi'ne aktarılacak dosyaların listesini gösterir. Güncelleştirmeyi içeri aktar'ı seçin.
İçeri aktarma işlemi başlar ve ekran İçeri Aktarma Geçmişi bölümüne dönüşür. İçeri aktarma işlemi tamamlanana kadar ilerleme durumunu görüntülemek için Yenile'yi seçin. Güncelleştirmenin boyutuna bağlı olarak içeri aktarma işlemi birkaç dakika içinde tamamlanabilir veya daha uzun sürebilir.
Durum sütunu içeri aktarma işleminin başarılı olduğunu gösterdiğinde Kullanılabilir Güncelleştirmeler sekmesini seçin. İçeri aktarılan güncelleştirmenizi şimdi listede görmeniz gerekir.
İçeri aktarma işlemi hakkında daha fazla bilgi için bkz. Cihaz Güncelleştirmesi'ne güncelleştirme aktarma.
Cihaz gruplarını görüntüleme
Cihaz Güncelleştirmesi, cihazları düzenlemek için grupları kullanır. Cihaz Güncelleştirmesi, cihazları atanan etiketlere ve uyumluluk özelliklerine göre otomatik olarak gruplar halinde sıralar. Her cihaz yalnızca bir gruba aittir, ancak grupların farklı cihaz sınıflarını sıralamak için birden çok alt grubu olabilir.
Sayfanın üst kısmındaki Gruplar ve Dağıtımlar sekmesine gidin.
Grupların listesini ve güncelleştirme uyumluluk grafiğini görüntüleyin. Güncelleştirme uyumluluk grafiği, çeşitli uyumluluk durumlarındaki cihazların sayısını gösterir: En son güncelleştirmede, Kullanılabilir yeni güncelleştirmeler ve devam eden Güncelleştirmeler. Güncelleştirme uyumluluğu hakkında bilgi edinin.
Bu öğreticide ayarladığınız simülasyon cihazının yanı sıra yeni gruptaki cihazlar için kullanılabilir güncelleştirmeleri içeren bir cihaz grubu görmeniz gerekir. Grubun cihaz sınıfı gereksinimlerini karşılamayen cihazlar varsa, bunlar ilgili geçersiz grupta gösterilir. Bu görünümden yeni kullanıcı tanımlı gruba en iyi kullanılabilir güncelleştirmeyi dağıtmak için grubun yanındaki Dağıt'ı seçin.
Etiketler ve gruplar hakkında daha fazla bilgi için bkz. Cihaz gruplarını yönetme.
Güncelleştirme dağıtma
Grup oluşturulduktan sonra, cihaz grubunuz için En İyi Güncelleştirme altındaki güncelleştirmenin bağlantısını içeren yeni bir güncelleştirme görmeniz gerekir (bir kez Yenilemeniz gerekebilir).
Uyumluluk hakkında daha fazla bilgi için bkz . Cihaz Güncelleştirmesi uyumluluğu.
Grup adına tıklayarak hedef grubu seçin. Grup temel bilgileri'nin altındaki grup ayrıntılarına yönlendirilirsiniz.
Dağıtımı başlatmak için Geçerli dağıtım sekmesine gidin. Kullanılabilir güncelleştirmeler bölümünden istenen güncelleştirmenin yanındaki dağıt bağlantısını seçin. Belirli bir grup için en iyi, kullanılabilir güncelleştirme "En İyi" vurgulanmış olarak belirtilir.
Dağıtımınızı hemen veya gelecekte başlayacak şekilde zamanlayın, ardından Oluştur'u seçin.
Dağıtım ayrıntıları altındaki Durum Etkin'e dönüşmeli ve dağıtılan güncelleştirme "(dağıtım)" ile işaretlenmelidir.
Uyumluluk grafiğini görüntüleyin. Güncelleştirmenin devam etmekte olduğunu görmeniz gerekir.
Cihazınız başarıyla güncelleştirildikten sonra uyumluluk grafiğinizin ve dağıtım ayrıntılarının aynı şekilde güncelleştirildiğini görmeniz gerekir.
Güncelleştirme dağıtımlarını izleme
Sayfanın üst kısmındaki Dağıtım geçmişi sekmesini seçin.
Oluşturduğunuz dağıtımın yanındaki ayrıntılar bağlantısını seçin.
En son durum ayrıntılarını görüntülemek için Yenile'yi seçin.
Artık IoT Hub için Cihaz Güncelleştirmesi'ni kullanarak başarılı bir uçtan uca proxy güncelleştirmesini tamamladınız.
Kaynakları temizleme
Bunlara artık ihtiyacınız kalmadığında Cihaz Güncelleştirmesi hesabınızı, örneğinizi, IoT hub'ınızı ve IoT cihazınızı temizleyin.