Memigrasikan perangkat ke Azure IoT Hub

Jika Anda memutuskan untuk bermigrasi dari solusi berbasis IoT Central ke solusi berbasis IoT Hub, Anda perlu mengubah konfigurasi semua perangkat yang saat ini terhubung ke aplikasi Anda. Alat IoTC Migrator mengotomatiskan proses migrasi perangkat ini.

Alat migrasi:

  • Membuat pendaftaran perangkat di hub IoT Anda untuk perangkat yang saat ini terhubung ke aplikasi IoT Central Anda.
  • Menggunakan perintah untuk mengirim cakupan ID instans Device Provisioning Service (DPS) yang terkait dengan hub IoT Anda ke perangkat Anda.

Alat ini mengharuskan perangkat Anda yang terhubung untuk mengimplementasikan perintah DeviceMove yang ditentukan dalam templat perangkat di aplikasi IoT Central Anda. Payload perintah adalah cakupan ID instans DPS target. Ketika perangkat menerima perintah ini, perangkat harus:

  • Berhenti mengirim telemetri dan putuskan sambungan dari aplikasi IoT Central.
  • Provisikan dirinya dengan DPS dengan menggunakan cakupan ID baru dalam payload perintah.
  • Gunakan hasil provisi untuk menyambungkan ke hub IoT tujuan dan mulai mengirim telemetri lagi.

Tip

Anda juga dapat menggunakan alat migrasi untuk memigrasikan perangkat antara aplikasi IoT Cental, atau dari hub IoT ke aplikasi IoT Central.

Meminimalkan gangguan

Untuk meminimalkan gangguan, Anda dapat memigrasikan perangkat secara bertahap. Alat migrasi menggunakan grup perangkat untuk memindahkan perangkat dari IoT Central ke hub IoT Anda. Bagi armada perangkat Anda menjadi grup perangkat seperti perangkat di Texas, perangkat di New York, dan perangkat di seluruh AS. Kemudian migrasikan setiap grup perangkat secara independen.

Peringatan

Anda tidak dapat menambahkan perangkat yang tidak ditetapkan ke grup perangkat. Oleh karena itu, Saat ini Anda tidak dapat menggunakan alat migrasi untuk memigrasikan perangkat yang tidak ditetapkan.

Minimalkan dampak bisnis dengan mengikuti langkah-langkah berikut:

  • Buat solusi PaaS dan jalankan secara paralel dengan aplikasi IoT Central.

  • Siapkan ekspor data berkelanjutan di aplikasi IoT Central dan rute yang sesuai ke hub IoT solusi PaaS. Ubah saluran data dan simpan data menjadi data lake yang sama.

  • Migrasikan perangkat secara bertahap dan verifikasi di setiap fase. Jika sesuatu tidak berjalan seperti yang direncanakan, gagalkan perangkat kembali ke IoT Central.

  • Ketika Anda telah memigrasikan semua perangkat ke solusi PaaS dan sepenuhnya mengekspor data Anda dari IoT Central, Anda dapat menghapus perangkat dari solusi IoT Central.

Setelah migrasi, perangkat tidak dihapus secara otomatis dari aplikasi IoT Central. Perangkat ini terus ditagih sebagai biaya IoT Central untuk semua perangkat yang disediakan dalam aplikasi. Saat Anda menghapus perangkat ini dari aplikasi IoT Central, Anda tidak lagi ditagih untuk perangkat tersebut. Akhirnya, hapus aplikasi IoT Central.

Memindahkan data yang ada dari IoT Central

Anda dapat mengonfigurasi IoT Central untuk terus mengekspor nilai telemetri dan properti. Tujuan ekspor adalah penyimpanan data seperti Azure Data Lake, Event Hubs, dan Webhook. Anda dapat mengekspor templat perangkat menggunakan UI IoT Central atau REST API. REST API memungkinkan Anda mengekspor pengguna dalam aplikasi IoT Central.

Prasyarat

Anda memerlukan prasyarat berikut untuk menyelesaikan langkah-langkah migrasi perangkat:

  • Aplikasi IoT Central sumber tempat perangkat Anda saat ini terhubung.
  • Hub IoT tujuan tempat Anda ingin memindahkan perangkat. Hub IoT ini harus ditautkan ke instans DPS.
  • node.js dan npm yang diinstal pada komputer lokal tempat Anda menjalankan alat migrasi.

Persyaratan perangkat

Perangkat yang ingin Anda migrasikan harus menerapkan perintah DeviceMove dalam komponen yang disebut migrasi. Payload perintah berisi cakupan ID instans DPS tujuan. Repositori alat migrator menyertakan contoh model komponen DTDL yang menentukan perintah DeviceMove . Anda dapat menambahkan komponen ini ke templat perangkat yang sudah ada.

Alat ini mengasumsikan bahwa nama komponen adalah migration dan bahwa ID antarmuka adalah dtmi:azureiot:DeviceMigration;1:

Screenshot that highlights the component name and interface ID.

Repositori alat juga menyertakan kode sampel yang menunjukkan kepada Anda bagaimana perangkat harus mengimplementasikan perintah DeviceMove .

Penyiapan alat

Selesaikan tugas penyiapan berikut untuk mempersiapkan migrasi:

Aplikasi Microsoft Entra

Alat migrasi memerlukan pendaftaran aplikasi Microsoft Entra untuk memungkinkannya mengautentikasi dengan langganan Azure Anda:

  1. Navigasikan ke Pendaftaran aplikasi ID > Microsoft Entra portal Azure>.

  2. Pilih Pendaftaran Baru.

  3. Masukkan nama seperti "Aplikasi IoTC Migrator".

  4. Pilih Akun di direktori organisasi apa pun (Direktori Microsoft Entra apa pun - Multipenyewa) dan akun Microsoft pribadi (misalnya Skype, Xbox).

  5. Pilih Aplikasi halaman tunggal (SPA).

  6. Masukkan http://localhost:3000 sebagai URI pengalihan. Anda menambahkan nilai ini ke konfigurasi aplikasi migrator nanti.

  7. Pilih Daftarkan.

  8. Catat nilai ID Aplikasi (klien) dan ID Direktori (penyewa). Anda menggunakan nilai-nilai ini nanti untuk mengonfigurasi aplikasi migrator:

    Screenshot that shows the Microsoft Entra application in the Azure portal.

  9. Navigasi ke halaman Manifes dalam pendaftaran dan ganti konten requiredResourceAccess dengan konfigurasi berikut:

    [
      {
        "resourceAppId": "9edfcdd9-0bc5-4bd4-b287-c3afc716aac7",
        "resourceAccess": [
          {
            "id": "73792908-5709-46da-9a68-098589599db6",
            "type": "Scope"
          }
        ]
      },
      {
        "resourceAppId": "797f4846-ba00-4fd7-ba43-dac1f8f63013",
        "resourceAccess": [
          {
            "id": "41094075-9dad-400e-a0bd-54e686782033",
            "type": "Scope"
          }
        ]
      },
      {
        "resourceAppId": "00000003-0000-0000-c000-000000000000",
        "resourceAccess": [
          {
            "id": "e1fe6dd8-ba31-4d61-89e7-88639da4683d",
            "type": "Scope"
          }
        ]
      }
    ]
    
  10. Simpan perubahan.

Menambahkan kunci perangkat ke DPS

Tambahkan kunci tanda tangan akses bersama atau sertifikat X.509 dari aplikasi IoT Central Anda ke grup alokasi DPS Anda.

Jika perangkat Anda menggunakan tanda tangan akses bersama untuk mengautentikasi ke aplikasi IoT Central Anda:

  • Di aplikasi IoT Central Anda, navigasikan ke grup koneksi Perangkat Izin>.
  • Pilih grup pendaftaran yang digunakan perangkat Anda.
  • Catat kunci primer dan sekunder.
  • Di portal Microsoft Azure, buka instans DPS Anda.
  • Pilih Kelola pendaftaran.
  • Buat pendaftaran baru dan atur jenis pengesahan ke Kunci Konten, batal pilih Kunci buat otomatis, lalu tambahkan kunci primer dan sekunder yang Anda catat.
  • Pilih Simpan.

Jika perangkat Anda menggunakan sertifikat X.509 untuk mengautentikasi ke aplikasi IoT Central Anda:

  • Di portal Microsoft Azure, buka instans DPS Anda.
  • Pilih Sertifikat lalu pilih Tambahkan.
  • Unggah dan verifikasi sertifikat X.509 akar atau menengah yang Anda gunakan di aplikasi IoT Central Anda.
  • Pilih Kelola pendaftaran.
  • Buat pendaftaran baru dan atur jenis pengesahan ke Sertifikat, lalu pilih sertifikat utama dan sekunder yang Anda unggah.
  • Pilih Simpan.

Mengunduh dan mengonfigurasi alat migrasi

Unduh atau kloning salinan alat migrasi ke komputer lokal Anda:

git clone https://github.com/Azure/iotc-migrator.git

Di akar repositori yang diunduh, buat file .env . REACT_APP_AAD_APP_CLIENT_IDPerbarui nilai , REACT_APP_AAD_APP_TENANT_ID, dan REACT_APP_AAD_APP_REDIRECT_URI dengan nilai dari pendaftaran aplikasi Microsoft Entra yang Anda buat sebelumnya. Kemudian simpan perubahan:

PORT=3000
REACT_APP_AAD_APP_CLIENT_ID=<your-AAD-Application-(client)-ID>
REACT_APP_AAD_APP_TENANT_ID=<your-AAD-Directory-(tenant)-ID>
REACT_APP_AAD_APP_REDIRECT_URI=http://localhost:3000

Tip

Pastikan cocok dengan REACT_APP_AAD_APP_REDIRECT_URI URI pengalihan yang Anda gunakan dalam pendaftaran aplikasi Microsoft Entra Anda.

Di lingkungan baris perintah Anda, navigasikan ke akar iotc-migrator repositori. Kemudian jalankan perintah berikut untuk menginstal paket node.js yang diperlukan lalu jalankan alat:

npm install
npm start

Setelah aplikasi migrasi dimulai, navigasikan ke untuk http://localhost:3000 melihat alat. Masuk saat Diminta.

Memigrasikan perangkat

Gunakan alat untuk memigrasikan perangkat Anda dalam batch. Masukkan detail migrasi di halaman Migrasi baru:

  1. Masukkan nama untuk migrasi.
  2. Pilih grup perangkat dari aplikasi IoT Central Anda.
  3. Pilih templat perangkat yang menyertakan definisi perintah DeviceMove .
  4. Pilih Pindahkan ke Azure IoT Hub Anda sendiri.
  5. Pilih instans DPS yang ditautkan ke hub IoT target Anda.
  6. Pilih Migrasikan. Alat ini meminta Anda untuk menyalin kunci dari aplikasi IoT Central Anda ke grup pendaftaran DPS. Anda sebelumnya menyelesaikan langkah ini di langkah Tambahkan kunci perangkat ke DPS .

Screenshot of migration tool that shows the migration definition.

Alat ini sekarang mendaftarkan semua perangkat yang terhubung yang cocok dengan filter perangkat target di hub IoT tujuan. Alat ini kemudian membuat pekerjaan di aplikasi IoT Central Anda untuk memanggil metode DeviceMove di semua perangkat tersebut. Payload perintah berisi cakupan ID instans DPS tujuan.

Verifikasi migrasi

Gunakan halaman Status migrasi di alat migrasi untuk memantau kemajuan:

Screenshot that shows the migration status page in the tool.

Pilih pekerjaan di halaman Status migrasi untuk melihat status pekerjaan di aplikasi IoT Central Anda. Gunakan halaman ini untuk melihat status masing-masing perangkat dalam pekerjaan:

Screenshot showing completed migration status for IoT Central job.

Perangkat yang berhasil dimigrasikan:

  • Tampilkan sebagai Terputus pada halaman perangkat di aplikasi IoT Central Anda.

  • Tampilkan sebagai terdaftar dan disediakan di hub IoT Anda:

    Screenshot of IoT Hub in the Azure portal that shows the provisioned devices.

  • Sekarang mengirim telemetri ke hub IoT Anda

    Screenshot of IoT Hub in the Azure portal that shows telemetry metrics for the migrated devices.