Apa itu Azure IoT Hub Device Provisioning Service?
IoT Hub Device Provisioning Service (DPS) adalah layanan pembantu untuk IoT Hub yang memungkinkan provisi nol sentuhan dan just-in-time ke hub IoT yang tepat tanpa memerlukan intervensi manusia. DPS memungkinkan penyediaan jutaan perangkat dengan cara yang aman dan terukur. Banyak langkah manual yang secara tradisional terlibat dalam penyediaan diotomatisasi dengan DPS untuk mengurangi waktu untuk menggunakan perangkat IoT dan menurunkan risiko kesalahan manual.
Cara kerja Device Provisioning Service
Diagram berikut menjelaskan apa yang terjadi di belakang layar untuk memprovisikan perangkat dengan DPS.
Sebelum alur provisi perangkat dimulai, ada dua langkah manual untuk mempersiapkan:
- Di sisi perangkat, produsen perangkat menyiapkan perangkat untuk provisi dengan mengonfigurasinya sebelumnya dengan kredensial autentikasinya dan ID dan titik akhir Device Provisioning Service yang ditetapkan.
- Di sisi cloud, Anda atau produsen perangkat menyiapkan instans Device Provisioning Service dengan pendaftaran individu dan grup pendaftaran yang mengidentifikasi perangkat yang valid dan menentukan bagaimana mereka harus disediakan.
Setelah perangkat dan cloud disiapkan untuk provisi, langkah-langkah berikut dimulai secara otomatis segera setelah perangkat menyala untuk pertama kalinya:
- Perangkat menyala untuk pertama kalinya, lalu terhubung ke titik akhir DPS dan menyajikan kredensial autentikasinya.
- Instans DPS memeriksa identitas perangkat terhadap daftar pendaftarannya. Setelah identitas perangkat diverifikasi, DPS menetapkan perangkat ke hub IoT dan mendaftarkannya di hub.
- Instans DPS menerima ID perangkat dan informasi pendaftaran dari hub yang ditetapkan dan meneruskan informasi tersebut kembali ke perangkat.
- Perangkat menggunakan informasi pendaftarannya untuk terhubung langsung ke hub IoT yang ditetapkan dan mengautentikasi.
- Perangkat dan hub IoT mulai berkomunikasi secara langsung. Instans DPS tidak memiliki peran lebih lanjut sebagai perantara kecuali perangkat perlu melakukan provisi ulang.
Kapan menggunakan Device Provisioning Service
Ada banyak skenario provisi di mana DPS adalah pilihan yang sangat baik untuk membuat perangkat terhubung dan terkonfigurasi ke IoT Hub, seperti:
- Provisi nol sentuhan untuk satu solusi IoT tanpa melakukan hardcoding informasi koneksi IoT Hub di pabrik (pengaturan awal)
- Perangkat penyeimbang muatan di beberapa hub
- Menyambungkan perangkat ke solusi IoT pemiliknya berdasarkan data transaksi penjualan (multipenyewaan)
- Menyambungkan perangkat ke solusi IoT tertentu bergantung pada kasus penggunaan (isolasi solusi)
- Menyambungkan perangkat ke hub IoT dengan latensi terendah (geo-sharding)
- Melakukan provisi ulang berdasarkan perubahan pada perangkat
- Menerapkan kunci yang digunakan oleh perangkat untuk menyambungkan ke IoT Hub (ketika tidak menggunakan sertifikat X.509 untuk menyambungkan)
Provisi perangkat IoT Edge berlapis (hierarki induk/anak) saat ini tidak didukung oleh DPS.
Proses provisi
Ada dua langkah yang terjadi di depan provisi perangkat dengan DPS:
- Langkah manufaktur di mana perangkat dibuat dan disiapkan di pabrik, dan
- Langkah penyiapan cloud di mana Device Provisioning Service dikonfigurasi untuk provisi otomatis.
Kedua langkah ini dapat dimasukkan ke dalam proses manufaktur dan penyebaran yang ada. DPS bahkan menyederhanakan beberapa proses penyebaran yang melibatkan upaya manual untuk mendapatkan informasi koneksi ke perangkat.
Langkah manufaktur
Langkah ini berfokus pada hal yang terjadi pada lini manufaktur. Peran yang terlibat dalam langkah ini termasuk desainer silikon, produsen silikon, integrator dan/atau produsen akhir perangkat. Langkah ini berkaitan dengan pembuatan perangkat keras itu sendiri.
DPS tidak memperkenalkan langkah baru dalam proses manufaktur; sebaliknya, ia mengikat ke langkah yang ada yang menginstal perangkat lunak awal dan (idealnya) modul keamanan perangkat keras (HSM) pada perangkat. Alih-alih membuat ID perangkat dalam langkah ini, perangkat diprogram dengan informasi layanan provisi, memungkinkannya untuk memanggil layanan provisi untuk mendapatkan info koneksi/penetapan solusi IoT saat diaktifkan.
Juga dalam langkah ini, produsen memasok penyebar/operator perangkat dengan mengidentifikasi informasi utama. Memasok informasi tersebut bisa sesederhana mengonfirmasi bahwa semua perangkat memiliki sertifikat X.509 yang dihasilkan dari sertifikat penandatanganan yang disediakan oleh penyebar/operator perangkat, atau sesederhana mengekstraksi bagian publik dari kunci dukungan TPM dari setiap perangkat TPM. Banyak produsen silikon menawarkan layanan ini.
Langkah penyiapan cloud
Langkah ini berkaitan dengan cara mengonfigurasi cloud untuk provisi otomatis yang tepat. Umumnya ada dua jenis pengguna yang terlibat dalam langkah penyiapan cloud: seseorang yang tahu bagaimana perangkat pada awalnya perlu disiapkan (operator perangkat), dan orang lain yang tahu bagaimana perangkat akan dibagi di antara hub IoT (operator solusi).
Ada pengaturan awal satu kali dari layanan provisi, yang biasanya ditangani operator solusi. Setelah layanan provisi dikonfigurasi, layanan tidak harus dimodifikasi kecuali kasus penggunaan berubah.
Setelah layanan dikonfigurasi untuk provisi otomatis, layanan harus disiapkan untuk mendaftarkan perangkat. Langkah ini dilakukan oleh operator perangkat, yang mengetahui konfigurasi perangkat yang diinginkan dan memastikan bahwa layanan provisi dapat membuktikan identitas perangkat dengan benar. Operator perangkat mengambil informasi utama identifikasi dari produsen dan menambahkannya ke daftar pendaftaran. Ada pembaruan berikutnya ke daftar pendaftaran karena entri baru ditambahkan atau entri yang ada diperbarui dengan informasi terbaru tentang perangkat.
Pendaftaran dan penyediaan
Penyediaan berarti berbagai hal tergantung pada industri tempat istilah tersebut digunakan. Dalam konteks provisi perangkat IoT ke solusi cloud mereka, penyediaan adalah proses dua bagian:
- Bagian pertama adalah membangun koneksi awal antara perangkat dan solusi IoT dengan mendaftarkan perangkat.
- Bagian kedua adalah menerapkan konfigurasi yang tepat ke perangkat berdasarkan persyaratan khusus dari solusi yang didaftarkannya.
Setelah kedua langkah itu selesai, kita dapat mengatakan bahwa perangkat telah sepenuhnya terprovisi. Beberapa layanan cloud hanya menyediakan langkah pertama dari proses provisi, mendaftarkan perangkat ke titik akhir solusi IoT, tetapi tidak menyediakan konfigurasi awal. DPS mengotomatiskan kedua langkah untuk memberikan pengalaman provisi yang lancar untuk perangkat.
Fitur Device Provisioning Service
DPS memiliki banyak fitur, menjadikannya ideal untuk provisi perangkat.
- Dukungan pengesahan aman untuk identitas berbasis X.509 dan TPM.
- Daftar pendaftaran berisi data lengkap perangkat/ grup perangkat yang mungkin pada waktu tertentu akan mendaftar. Daftar pendaftaran berisi informasi tentang konfigurasi perangkat yang diinginkan setelah mendaftar, dan dapat diperbarui kapan saja.
- Beberapa kebijakan alokasi untuk mengontrol bagaimana DPS menetapkan perangkat ke hub IoT untuk mendukung skenario Anda: Latensi terendah, distribusi tertimbang merata (default), dan konfigurasi statis. Latensi ditentukan menggunakan metode yang sama dengan Traffic Manager. Alokasi kustom, yang memungkinkan Anda menerapkan kebijakan alokasi Anda sendiri melalui webhook yang dihosting di Azure Functions juga didukung.
- Pemantauan dan pembuatan log diagnostik untuk memastikan semuanya berfungsi dengan baik.
- Dukungan multi-hub memungkinkan DPS menetapkan perangkat ke lebih dari satu hub IoT. DPS dapat menghubungi hub di beberapa langganan Azure.
- Dukungan lintas wilayah memungkinkan DPS menetapkan perangkat ke hub IoT di wilayah lain.
- Enkripsi untuk data tidak aktif memungkinkan data dalam DPS dienkripsi dan didekripsi secara transparan menggunakan enkripsi AES 256-bit, salah satu cipher blok terkuat yang tersedia, dan sesuai dengan FIPS 140-2.
Anda dapat mempelajari selengkapnya tentang konsep dan fitur yang terlibat dalam provisi perangkat dengan meninjau artikel terminologi DPS bersama dengan artikel konseptual lainnya di bagian yang sama.
Dukungan lintas platform
Sama seperti semua layanan Azure IoT, DPS bekerja lintas platform dengan berbagai sistem operasi. Azure menawarkan SDK sumber terbuka dalam berbagai bahasa untuk memfasilitasi menghubungkan perangkat dan mengelola layanan. DPS mendukung protokol berikut untuk menyambungkan perangkat:
- HTTPS
- AMQP
- AMQP melalui soket web
- MQTT
- MQTT melalui soket web
DPS hanya mendukung koneksi HTTPS untuk operasi layanan.
Wilayah
DPS tersedia di banyak wilayah. Daftar wilayah yang didukung untuk semua layanan tersedia di Wilayah Azure. Anda dapat memeriksa ketersediaan Layanan Provisi Perangkat di halaman Status Azure.
Untuk ketahanan dan keandalan, sebaiknya sebarkan ke salah satu wilayah yang mendukung Zona Ketersediaan.
Pertimbangan residensi data
Device Provisioning Service menyimpan data pelanggan. Secara default, data pelanggan direplikasi ke wilayah sekunder untuk mendukung skenario pemulihan bencana. Untuk penyebaran di Asia Tenggara dan Brasil Selatan, pelanggan dapat memilih untuk menyimpan data mereka hanya di wilayah tersebut dengan menonaktifkan pemulihan bencana. Untuk informasi selengkapnya, lihat Replikasi lintas wilayah di Azure.
DPS menggunakan titik akhir provisi perangkat yang sama untuk semua instans layanan provisi, dan melakukan penyeimbangan beban lalu lintas ke titik akhir layanan terdekat yang tersedia. Akibatnya, rahasia autentikasi dapat ditransfer sementara ke luar wilayah di mana instans DPS awalnya dibuat. Namun, setelah perangkat tersambung, data perangkat mengalir langsung ke wilayah asli instans DPS. Untuk memastikan bahwa data Anda tidak meninggalkan wilayah asli atau sekunder, gunakan titik akhir privat. Untuk mempelajari cara menyiapkan titik akhir privat, lihat Dukungan DPS untuk jaringan virtual.
Kuota dan Batasan
Setiap langganan Azure memiliki batas kuota default yang dapat memengaruhi cakupan solusi IoT Anda. Batas saat ini adalah 10 instans Device Provisioning Service per langganan.
Untuk informasi selengkapnya tentang batas kuota, lihat Batas Layanan Langganan Azure.
Tabel berikut ini mencantumkan batasan yang berlaku untuk sumber daya Layanan Provisi Perangkat Azure IoT Hub.
Sumber daya | Batasan | Dapat disesuaikan? |
---|---|---|
Layanan provisi perangkat maksimum per langganan Azure | 10 | No |
Jumlah maksimum registrasi | 1\.000.000 | No |
Jumlah maksimum pendaftaran individu | 1\.000.000 | No |
Jumlah maksimum grup pendaftaran(sertifikat X.509) | 100 | Tidak |
Jumlah maksimum grup pendaftaran(kunci konten) | 100 | Tidak |
Jumlah maksimum CA | 25 | No |
Jumlah maksimum IoT hub yang ditautkan | 50 | No |
Ukuran maksimum pesan | 96 KB | No |
Tip
Jika batas keras pada grup pendaftaran kunci simetris adalah masalah pemblokiran, disarankan untuk menggunakan pendaftaran individu sebagai solusinya.
Layanan Penyediaan Perangkat memiliki batas tarif berikut.
Tarif | Nilai per unit | Dapat disesuaikan? |
---|---|---|
Operasional | 1.000/menit/layanan | No |
Registrasi perangkat | 1.000/menit/layanan | No |
Operasi poling perangkat | 5/10 detik/perangkat | No |
Operasi dan harga layanan yang dapat ditagih
Setiap panggilan API di DPS dapat ditagih sebagai satu operasi. Ini termasuk semua API layanan dan API pendaftaran perangkat.
Tabel di bawah ini menunjukkan status yang dapat ditagih saat ini untuk setiap operasi API layanan DPS. Untuk mempelajari selengkapnya tentang harga untuk DPS, pilih Tabel harga di bagian atas halaman harga Azure IoT Hub. Kemudian pilih tab IoT Hub Device Provisioning Service dan mata uang dan wilayah untuk layanan Anda.
API | Operasi | Dapat ditagih? |
---|---|---|
API Perangkat | Pencarian Status Pendaftaran Perangkat | No |
API Perangkat | Pencarian Status Operasi | No |
API Perangkat | Mendaftarkan Perangkat | Ya |
API Layanan DPS (status pendaftaran) | Hapus | Ya |
API Layanan DPS (status pendaftaran) | Dapatkan | Ya |
API Layanan DPS (status pendaftaran) | Kueri | Ya |
API Layanan DPS (grup pendaftaran) | Buat atau Perbarui | Ya |
API Layanan DPS (grup pendaftaran) | Hapus | Ya |
API Layanan DPS (grup pendaftaran) | Dapatkan | Ya |
API Layanan DPS (grup pendaftaran) | Mendapatkan Mekanisme Pengesahan | Ya |
API Layanan DPS (grup pendaftaran) | Kueri | Ya |
API Layanan DPS (grup pendaftaran) | Menjalankan Operasi Massal | Ya |
API Layanan DPS (pendaftaran individu) | Buat atau Perbarui | Ya |
API Layanan DPS (pendaftaran individu) | Hapus | Ya |
API Layanan DPS (pendaftaran individu) | Dapatkan | Ya |
API Layanan DPS (pendaftaran individu) | Mendapatkan Mekanisme Pengesahan | Ya |
API Layanan DPS (pendaftaran individu) | Kueri | Ya |
API Layanan DPS (pendaftaran individu) | Menjalankan Operasi Massal | Ya |
API Sertifikat DPS | Buat atau Perbarui | No |
API Sertifikat DPS | Hapus | No |
API Sertifikat DPS | Membuat Kode Verifikasi | No |
API Sertifikat DPS | Dapatkan | No |
API Sertifikat DPS | Daftar | No |
API Sertifikat DPS | Memverifikasi Sertifikat | No |
API Sumber Daya IoT DPS | Periksa Ketersediaan Nama Layanan Provisi | No |
API Sumber Daya IoT DPS | Buat atau Perbarui | No |
API Sumber Daya IoT DPS | Hapus | No |
API Sumber Daya IoT DPS | Dapatkan | No |
API Sumber Daya IoT DPS | Dapatkan Hasil Operasi | No |
API Sumber Daya IoT DPS | List By Resource Group | No |
API Sumber Daya IoT DPS | List By Subscription | No |
API Sumber Daya IoT DPS | Daftar Berdasarkan Kunci | No |
API Sumber Daya IoT DPS | Daftar Kunci untuk Nama Kunci | No |
API Sumber Daya IoT DPS | Daftar SKU yang Valid | No |
API Sumber Daya IoT DPS | Pembaruan | No |
Komponen Azure terkait
DPS mengotomatiskan provisi perangkat dengan Azure IoT Hub. Pelajari IoT Hub lebih lanjut.
Catatan
Provisi perangkat edge berlapis (hierarki induk/anak) saat ini tidak didukung oleh DPS.
Aplikasi IoT Central menggunakan instans DPS internal untuk mengelola koneksi perangkat. Untuk mempelajari selengkapnya, lihat Cara perangkat tersambung ke IoT Central.
Langkah berikutnya
Sekarang Anda telah mendapatkan gambaran umum provisi perangkat IoT di Azure. Langkah selanjutnya adalah mencoba skenario IoT ujung-ke-ujung.
Menyiapkan IoT Hub Device Provisioning Service dengan portal Microsoft Azure