Langkah 4: Menyebarkan dan menguji komponen pada perangkat inti - AWS IoT Greengrass

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Langkah 4: Menyebarkan dan menguji komponen pada perangkat inti

Di bagian ini, Anda menyebarkan komponen ke perangkat inti untuk menguji fungsinya. Pada perangkat inti, Anda membuat file tingkat baterai virtual untuk meniru baterai nyata. Kemudian, Anda membuat penerapan tambahan dan mengamati file log komponen pada perangkat inti untuk melihat komponen menunda dan mengakui pembaruan.

Untuk menyebarkan dan menguji komponen Hello World yang menunda pembaruan
  1. Gunakan editor teks untuk membuat file tingkat baterai virtual. File ini meniru baterai sungguhan.

    • Pada perangkat inti Linux, buat file bernama/home/ggc_user/virtual_battery.json. Jalankan editor teks dengan sudo izin.

    • Pada perangkat inti Windows, buat file bernamaC:\Users\ggc_user\virtual_battery.json. Jalankan editor teks sebagai administrator.

    Misalnya, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.

    sudo nano /home/ggc_user/virtual_battery.json

    Salin JSON berikut ke dalam file.

    { "battery_level": 50 }
  2. Menyebarkan komponen Hello World ke perangkat inti. Lakukan hal-hal berikut:

    1. Pada menu navigasi konsol AWS IoT Greengrass tersebut, pilih Komponen.

    2. Pada halaman Components, pilih tab My components, lalu pilih com.example.BatteryAwareHelloWorld.

    3. Pada halaman com.example.BatteryAwareHelloWorld pilih Deploy.

    4. Dari Tambahkan ke penerapan, pilih penerapan yang ada untuk direvisi, atau pilih untuk membuat penerapan baru, lalu pilih Berikutnya.

    5. Jika Anda memilih untuk membuat penerapan baru, pilih perangkat inti target atau grup hal untuk penerapan. Pada halaman Tentukan target, di bawah target Deployment, pilih perangkat inti atau grup benda, lalu pilih Berikutnya.

    6. Pada halaman Pilih komponen, verifikasi bahwa com.example.BatteryAwareHelloWorldkomponen dipilih, pilih Berikutnya.

    7. Pada halaman Configure components, pilih com.example.BatteryAwareHelloWorld, lalu lakukan hal berikut:

      1. Pilih Konfigurasi komponen.

      2. Dalam konfigurasi com.example.BatteryAwareHelloWorld modal, di bawah Configuration update, di Configuration to merge, masukkan update konfigurasi berikut.

        { "BatteryThreshold": 70 }
      3. Pilih Konfirmasi untuk menutup modal, lalu pilih Berikutnya.

    8. Pada halaman Konfirmasi pengaturan lanjutan, di bagian Kebijakan penerapan, di bawah Kebijakan pembaruan komponen, konfirmasikan bahwa komponen Beri tahu dipilih. Notify komponen dipilih secara default saat Anda membuat penerapan baru.

    9. Di halaman Tinjau, pilih Deploy.

      Penyebaran dapat memakan waktu hingga satu menit untuk diselesaikan.

  3. Perangkat lunak AWS IoT Greengrass Core menyimpan stdout dari proses komponen ke file log di folder. logs Jalankan perintah berikut untuk memverifikasi bahwa komponen Hello World berjalan dan mencetak pesan status.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.BatteryAwareHelloWorld.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log
    PowerShell
    gc C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log -Tail 10 -Wait

    Anda akan melihat pesan yang mirip dengan contoh berikut ini.

    Hello, World! Battery level (50) is below threshold (70), so the component will defer updates.
    catatan

    Jika file tidak ada, penerapan mungkin belum lengkap. Jika file tidak ada dalam waktu 30 detik, penerapan kemungkinan gagal. Ini dapat terjadi jika perangkat inti tidak memiliki izin untuk mengunduh artefak komponen dari bucket S3, misalnya. Jalankan perintah berikut untuk melihat file log perangkat lunak AWS IoT Greengrass inti. File ini mencakup log dari layanan deployment perangkat inti Greengrass.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\greengrass.log

    typePerintah menulis konten file ke terminal. Jalankan perintah ini beberapa kali untuk mengamati perubahan dalam file.

    PowerShell
    gc C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  4. Buat penerapan baru ke perangkat inti untuk memverifikasi bahwa komponen menunda pembaruan. Lakukan hal-hal berikut:

    1. Di menu navigasi AWS IoT Greengrasskonsol, pilih Deployment.

    2. Pilih penerapan yang Anda buat atau revisi sebelumnya.

    3. Pada halaman penyebaran, pilih Revisi.

    4. Dalam modal Revise deployment, pilih Revise deployment.

    5. Pilih Berikutnya di setiap langkah, lalu pilih Deploy.

  5. Jalankan perintah berikut untuk melihat log komponen lagi, dan verifikasi bahwa itu menunda pembaruan.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.BatteryAwareHelloWorld.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log
    PowerShell
    gc C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log -Tail 10 -Wait

    Anda akan melihat pesan yang mirip dengan contoh berikut ini. Komponen menunda pembaruan selama 30 detik, sehingga komponen mencetak pesan ini berulang kali.

    Deferred update for deployment 50722a95-a05f-4e2a-9414-da80103269aa.
  6. Gunakan editor teks untuk mengedit file tingkat baterai virtual dan mengubah tingkat baterai ke nilai di atas ambang batas, sehingga penerapan dapat dilanjutkan.

    • Pada perangkat inti Linux, edit file bernama/home/ggc_user/virtual_battery.json. Jalankan editor teks dengan sudo izin.

    • Pada perangkat inti Windows, edit file bernamaC:\Users\ggc_user\virtual_battery.json. Jalankan editor teks sebagai administrator.

    Misalnya, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.

    sudo nano /home/ggc_user/virtual_battery.json

    Ubah level baterai menjadi80.

    { "battery_level": 80 }
  7. Jalankan perintah berikut untuk melihat log komponen lagi, dan verifikasi bahwa ia mengakui pembaruan.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.BatteryAwareHelloWorld.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log
    PowerShell
    gc C:\greengrass\v2\logs\com.example.BatteryAwareHelloWorld.log -Tail 10 -Wait

    Anda akan melihat pesan yang mirip dengan contoh berikut.

    Hello, World! Battery level (80) is above threshold (70), so the component will acknowledge updates. Acknowledged update for deployment f9499eb2-4a40-40a7-86c1-c89887d859f1.