Pengelola bayangan - AWS IoT Greengrass

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

Pengelola bayangan

Komponen shadow manager (aws.greengrass.ShadowManager) memungkinkan layanan bayangan lokal pada perangkat inti Anda. Layanan bayangan lokal memungkinkan komponen untuk menggunakan komunikasi antar proses untuk berinteraksi dengan bayangan lokal. Komponen pengelola bayangan mengelola penyimpanan dokumen bayangan lokal, dan juga menangani sinkronisasi keadaan bayangan lokal dengan layanan Bayangan Perangkat AWS IoT.

Untuk informasi lebih lanjut tentang bagaimana perangkat inti Greengrass dapat berinteraksi dengan bayangan, lihatBerinteraksilah dengan bayangan perangkat.

Versi

Komponen ini memiliki versi berikut:

  • 2.2.x

  • 2.1.x

  • 2.0.x

Tipe

Komponen ini adalah komponen plugin (aws.greengrass.plugin). Inti Greengrass menjalankan komponen plugin dalam Java Virtual Machine (JVM) yang sama sebagai inti. Nucleus dimulai ulang saat Anda mengubah versi komponen ini di perangkat inti.

Komponen plugin menggunakan file log yang sama seperti inti Greengrass. Untuk informasi selengkapnya, lihat PemantauanAWS IoT Greengrasslog.

Untuk informasi selengkapnya, lihat Jenis komponen.

Sistem operasi

Komponen ini dapat diinstal pada perangkat inti yang menjalankan sistem operasi berikut:

  • Linux

  • Windows

Persyaratan

Komponen ini memiliki persyaratan sebagai berikut:

  • (Opsional) Untuk menyinkronkan bayangan keAWS IoTLayanan Device Shadow, perangkat inti GreengrassAWS IoTkebijakan harus memungkinkan berikutAWS IoT Coretindakan kebijakan bayangan:

    • iot:GetThingShadow

    • iot:UpdateThingShadow

    • iot:DeleteThingShadow

    Untuk informasi selengkapnya tentang kebijakan AWS IoT Core ini, lihat tindakan kebijakan AWS IoT Core di Panduan Developer AWS IoT.

    Untuk informasi lebih lanjut tentang kebijakan AWS IoT minimal, lihat Kebijakan AWS IoT minimal untuk perangkat inti AWS IoT Greengrass V2.

Dependensi

Saat Anda men-deploy komponen, AWS IoT Greengrass juga men-deploy versi dependensinya yang kompatibel. Ini berarti bahwa Anda harus memenuhi persyaratan untuk komponen dan semua dependensinya untuk berhasil men-deploy komponen. Bagian ini berisi daftar dependensi untuk versi yang dirilis dari komponen ini dan kendala versi semantik yang menentukan versi komponen untuk setiap dependensi. Anda juga dapat melihat dependensi untuk setiap versi komponen di konsol AWS IoT Greengrass tersebut. Pada halaman detail komponen, cari daftar Dependensi.

2.2.1

Tabel berikut mencantumkan dependensi untuk versi 2.2.1 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.8.0 Lunak
2.1.1 and 2.2.0

Tabel berikut mencantumkan dependensi untuk versi 2.1.1 dan 2.2.0 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.7.0 Lunak
2.0.5 - 2.1.0

Tabel berikut mencantumkan dependensi untuk versi 2.0.5 hingga 2.1.0 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.6.0 Lunak
2.0.3 and 2.0.4

Tabel berikut mencantumkan dependensi untuk versi 2.0.3 dan 2.0.4 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.5.0 Lunak
2.0.1 and 2.0.2

Tabel berikut mencantumkan dependensi untuk versi 2.0.1 dan 2.0.2 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.4.0 Lunak
2.0.0

Tabel berikut mencantumkan dependensi untuk versi 2.0.0 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.2.0 <2.3.0 Lunak

Untuk informasi selengkapnya tentang dependensi komponen, lihat referensi resep komponen.

Konfigurasi

Komponen ini menyediakan parameter konfigurasi berikut yang dapat Anda sesuaikan ketika Anda men-deploy komponen.

2.2.x
strategy

(Opsional) Strategi yang digunakan komponen ini untuk menyinkronkan bayangan antaraAWS IoT Coredan perangkat inti.

Objek ini berisi informasi berikut.

type

(Opsional) Jenis strategi yang digunakan oleh komponen ini untuk menyinkronkan bayangan di antaraAWS IoT Coredan perangkat inti. Pilih dari salah satu pilihan berikut:

  • realTime- Sinkronkan bayangan denganAWS IoT Coresetiap kali pembaruan bayangan terjadi.

  • periodic- Sinkronkan bayangan denganAWS IoT Corepada interval reguler yang Anda tentukan dengandelayparameter konfigurasi

Default: realTime

delay

(Opsional) Interval dalam detik dimana komponen ini menyinkronkan bayanganAWS IoT Core, saat menentukanperiodicstrategi sinkronkan.

catatan

Parameter ini diperlukan jika Anda menentukanperiodicstrategi sinkronkan.

synchronize

(Opsional) Pengaturan sinkronisasi yang menentukan bagaimana bayangan disinkronkan dengan AWS Cloud.

catatan

Anda harus membuat pembaruan konfigurasi dengan properti ini untuk menyinkronkan bayangan denganAWS Cloud.

Objek ini berisi informasi berikut.

coreThing

(Opsional) Perangkat inti bayangan yang akan disinkronkan. Objek ini berisi informasi berikut.

classic

(Opsional) Secara default, manajer bayangan menyinkronkan keadaan lokal bayangan klasik untuk perangkat inti Anda denganAWS Cloud. Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik, atur ini ke false.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang akan disinkronkan.

Awas

YangAWS IoT Greengrassmenggunakan layananAWSManagedGreengrassV2Deploymentbernama shadow untuk mengelola penyebaran yang menargetkan perangkat inti individual. Bayangan bernama ini dicadangkan untuk digunakan olehAWS IoT Greengrasslayanan. Jangan perbarui atau hapus bayangan bernama ini.

shadowDocuments

(Opsional) Daftar bayangan perangkat tambahan yang akan disinkronkan. Setiap objek dalam daftar ini berisi informasi berikut.

thingName

Nama objek perangkat untuk menyinkronkan bayangan.

classic

(Opsional) Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik untukthingNameperangkat, atur ini kefalse.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang ingin Anda sinkronkan.

direction

(Opsional) Arah untuk menyinkronkan bayangan antara layanan bayangan lokal danAWS Cloud. Anda dapat mengonfigurasi opsi ini untuk mengurangi bandwidth dan koneksi keAWS Cloud. Pilih dari salah satu pilihan berikut:

  • betweenDeviceAndCloud- Sinkronisasi bayangan antara layanan bayangan lokal danAWS Cloud.

  • deviceToCloud- Kirim pembaruan bayangan dari layanan bayangan lokal keAWS Cloud, dan abaikan pembaruan bayangan dariAWS Cloud.

  • cloudToDevice- Menerima pembaruan bayangan dariAWS Cloud, dan jangan mengirim pembaruan bayangan dari layanan bayangan lokal keAWS Cloud.

Default: BETWEEN_DEVICE_AND_CLOUD

rateLimits

(Opsional) Pengaturan yang menentukan batas tingkat untuk permintaan layanan bayangan.

Objek ini berisi informasi berikut.

maxOutboundSyncUpdatesPerSecond

(Opsional) Jumlah maksimum permintaan sinkronisasi per detik yang ditransmisikan oleh perangkat.

Default: 100 permintaan/detik

maxTotalLocalRequestsRate

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim ke perangkat inti.

Default: 200 permintaan/detik

maxLocalRequestsPerSecondPerThing

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim untuk setiap objek IoT yang terhubung.

Default: 20 permintaan/detik untuk setiap objek

catatan

Parameter batas tingkat ini menentukan jumlah maksimum permintaan per detik untuk layanan bayangan lokal. Jumlah maksimum permintaan per detik untuk layanan Device Shadow AWS IoT bergantung pada perangkat Wilayah AWS. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

shadowDocumentSizeLimitBytes

(Opsional) Ukuran maksimum yang diizinkan dari setiap dokumen keadaan JSON untuk bayangan lokal.

Jika Anda meningkatkan nilai ini, Anda juga harus meningkatkan batas sumber daya untuk dokumen keadaan JSON untuk bayangan cloud. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

Default: 8192 byte

Maksimum: 30720 byte

contoh Contoh: Pembaruan gabungan konfigurasi

Contoh berikut menunjukkan pembaruan gabungan konfigurasi sampel dengan semua parameter konfigurasi yang tersedia untuk komponen manajer bayangan.

{ "strategy": { "type": "periodic", "delay": 300 }, "synchronize": { "coreThing": { "classic": true, "namedShadows": [ "MyCoreShadowA", "MyCoreShadowB" ] }, "shadowDocuments": [ { "thingName": "MyDevice1", "classic": false, "namedShadows": [ "MyShadowA", "MyShadowB" ] }, { "thingName": "MyDevice2", "classic": true, "namedShadows": [] } ], "direction": "betweenDeviceAndCloud" }, "rateLimits": { "maxOutboundSyncUpdatesPerSecond": 100, "maxTotalLocalRequestsRate": 200, "maxLocalRequestsPerSecondPerThing": 20 }, "shadowDocumentSizeLimitBytes": 8192 }
2.1.x
strategy

(Opsional) Strategi yang digunakan komponen ini untuk menyinkronkan bayangan antaraAWS IoT Coredan perangkat inti.

Objek ini berisi informasi berikut.

type

(Opsional) Jenis strategi yang digunakan oleh komponen ini untuk menyinkronkan bayangan di antaraAWS IoT Coredan perangkat inti. Pilih dari salah satu pilihan berikut:

  • realTime- Sinkronkan bayangan denganAWS IoT Coresetiap kali pembaruan bayangan terjadi.

  • periodic- Sinkronkan bayangan denganAWS IoT Corepada interval reguler yang Anda tentukan dengandelayparameter konfigurasi

Default: realTime

delay

(Opsional) Interval dalam detik dimana komponen ini menyinkronkan bayanganAWS IoT Core, saat menentukanperiodicstrategi sinkronkan.

catatan

Parameter ini diperlukan jika Anda menentukanperiodicstrategi sinkronkan.

synchronize

(Opsional) Pengaturan sinkronisasi yang menentukan bagaimana bayangan disinkronkan dengan AWS Cloud.

catatan

Anda harus membuat pembaruan konfigurasi dengan properti ini untuk menyinkronkan bayangan denganAWS Cloud.

Objek ini berisi informasi berikut.

coreThing

(Opsional) Perangkat inti bayangan yang akan disinkronkan. Objek ini berisi informasi berikut.

classic

(Opsional) Secara default, manajer bayangan menyinkronkan keadaan lokal bayangan klasik untuk perangkat inti Anda denganAWS Cloud. Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik, atur ini ke false.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang akan disinkronkan.

Awas

YangAWS IoT Greengrassmenggunakan layananAWSManagedGreengrassV2Deploymentbernama shadow untuk mengelola penyebaran yang menargetkan perangkat inti individual. Bayangan bernama ini dicadangkan untuk digunakan olehAWS IoT Greengrasslayanan. Jangan perbarui atau hapus bayangan bernama ini.

shadowDocuments

(Opsional) Daftar bayangan perangkat tambahan yang akan disinkronkan. Setiap objek dalam daftar ini berisi informasi berikut.

thingName

Nama objek perangkat untuk menyinkronkan bayangan.

classic

(Opsional) Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik untukthingNameperangkat, atur ini kefalse.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang ingin Anda sinkronkan.

rateLimits

(Opsional) Pengaturan yang menentukan batas tingkat untuk permintaan layanan bayangan.

Objek ini berisi informasi berikut.

maxOutboundSyncUpdatesPerSecond

(Opsional) Jumlah maksimum permintaan sinkronisasi per detik yang ditransmisikan oleh perangkat.

Default: 100 permintaan/detik

maxTotalLocalRequestsRate

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim ke perangkat inti.

Default: 200 permintaan/detik

maxLocalRequestsPerSecondPerThing

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim untuk setiap objek IoT yang terhubung.

Default: 20 permintaan/detik untuk setiap objek

catatan

Parameter batas tingkat ini menentukan jumlah maksimum permintaan per detik untuk layanan bayangan lokal. Jumlah maksimum permintaan per detik untuk layanan Device Shadow AWS IoT bergantung pada perangkat Wilayah AWS. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

shadowDocumentSizeLimitBytes

(Opsional) Ukuran maksimum yang diizinkan dari setiap dokumen keadaan JSON untuk bayangan lokal.

Jika Anda meningkatkan nilai ini, Anda juga harus meningkatkan batas sumber daya untuk dokumen keadaan JSON untuk bayangan cloud. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

Default: 8192 byte

Maksimum: 30720 byte

contoh Contoh: Pembaruan gabungan konfigurasi

Contoh berikut menunjukkan pembaruan gabungan konfigurasi sampel dengan semua parameter konfigurasi yang tersedia untuk komponen manajer bayangan.

{ "strategy": { "type": "periodic", "delay": 300 }, "synchronize": { "coreThing": { "classic": true, "namedShadows": [ "MyCoreShadowA", "MyCoreShadowB" ] }, "shadowDocuments": [ { "thingName": "MyDevice1", "classic": false, "namedShadows": [ "MyShadowA", "MyShadowB" ] }, { "thingName": "MyDevice2", "classic": true, "namedShadows": [] } ] }, "rateLimits": { "maxOutboundSyncUpdatesPerSecond": 100, "maxTotalLocalRequestsRate": 200, "maxLocalRequestsPerSecondPerThing": 20 }, "shadowDocumentSizeLimitBytes": 8192 }
2.0.x
synchronize

(Opsional) Pengaturan sinkronisasi yang menentukan bagaimana bayangan disinkronkan dengan AWS Cloud.

catatan

Anda harus membuat pembaruan konfigurasi dengan properti ini untuk menyinkronkan bayangan denganAWS Cloud.

Objek ini berisi informasi berikut.

coreThing

(Opsional) Perangkat inti bayangan yang akan disinkronkan. Objek ini berisi informasi berikut.

classic

(Opsional) Secara default, manajer bayangan menyinkronkan keadaan lokal bayangan klasik untuk perangkat inti Anda denganAWS Cloud. Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik, atur ini ke false.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang akan disinkronkan.

Awas

YangAWS IoT Greengrassmenggunakan layananAWSManagedGreengrassV2Deploymentbernama shadow untuk mengelola penyebaran yang menargetkan perangkat inti individual. Bayangan bernama ini dicadangkan untuk digunakan olehAWS IoT Greengrasslayanan. Jangan perbarui atau hapus bayangan bernama ini.

shadowDocuments

(Opsional) Daftar bayangan perangkat tambahan yang akan disinkronkan. Setiap objek dalam daftar ini berisi informasi berikut.

thingName

Nama objek perangkat untuk menyinkronkan bayangan.

classic

(Opsional) Jika Anda tidak ingin menyinkronkan bayangan perangkat klasik untukthingNameperangkat, atur ini kefalse.

Default: true

namedShadows

(Opsional) Daftar bayangan perangkat inti bernama yang ingin Anda sinkronkan.

rateLimits

(Opsional) Pengaturan yang menentukan batas tingkat untuk permintaan layanan bayangan.

Objek ini berisi informasi berikut.

maxOutboundSyncUpdatesPerSecond

(Opsional) Jumlah maksimum permintaan sinkronisasi per detik yang ditransmisikan oleh perangkat.

Default: 100 permintaan/detik

maxTotalLocalRequestsRate

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim ke perangkat inti.

Default: 200 permintaan/detik

maxLocalRequestsPerSecondPerThing

(Opsional) Jumlah maksimum permintaan IPC lokal per detik yang dikirim untuk setiap objek IoT yang terhubung.

Default: 20 permintaan/detik untuk setiap objek

catatan

Parameter batas tingkat ini menentukan jumlah maksimum permintaan per detik untuk layanan bayangan lokal. Jumlah maksimum permintaan per detik untuk layanan Device Shadow AWS IoT bergantung pada perangkat Wilayah AWS. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

shadowDocumentSizeLimitBytes

(Opsional) Ukuran maksimum yang diizinkan dari setiap dokumen keadaan JSON untuk bayangan lokal.

Jika Anda meningkatkan nilai ini, Anda juga harus meningkatkan batas sumber daya untuk dokumen keadaan JSON untuk bayangan cloud. Untuk informasi selengkapnya, lihat batas API Layanan Bayangan Perangkat AWS IoT di Referensi Umum Amazon Web Services.

Default: 8192 byte

Maksimum: 30720 byte

contoh Contoh: Pembaruan gabungan konfigurasi

Contoh berikut menunjukkan pembaruan gabungan konfigurasi sampel dengan semua parameter konfigurasi yang tersedia untuk komponen manajer bayangan.

{ "synchronize": { "coreThing": { "classic": true, "namedShadows": [ "MyCoreShadowA", "MyCoreShadowB" ] }, "shadowDocuments": [ { "thingName": "MyDevice1", "classic": false, "namedShadows": [ "MyShadowA", "MyShadowB" ] }, { "thingName": "MyDevice2", "classic": true, "namedShadows": [] } ] }, "rateLimits": { "maxOutboundSyncUpdatesPerSecond": 100, "maxTotalLocalRequestsRate": 200, "maxLocalRequestsPerSecondPerThing": 20 }, "shadowDocumentSizeLimitBytes": 8192 }

File log lokal

Komponen plugin menggunakan file log yang sama sepertiInti Greengrasskomponen.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log

Untuk melihat log komponen ini

  • Jalankan perintah berikut pada perangkat inti untuk melihat file log komponen ini secara real time. Ganti/greengrass/v2atauC:\greengrass\v2dengan jalur keAWS IoT Greengrassfolder akar.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

Tabel berikut menjelaskan perubahan dalam setiap versi komponen.

Versi

Perubahan

2.2.1

Versi yang diperbarui untuk rilis inti Greengrass versi 2.7.0

2.2.0

Fitur baru
  • Menambahkan dukungan untuk layanan bayangan lokal melalui lokal antarmuka publish/subscribe. Anda sekarang dapat berkomunikasi dengan broker publish/subscribetopik bayangan MQTTuntuk mendapatkan, memperbarui, dan menghapus bayangan pada perangkat inti. Fitur ini memungkinkan Anda untuk menghubungkan perangkat klien untuk layanan bayangan lokal dengan menggunakan jembatan MQTT untuk merelai pesan pada topik bayangan antara perangkat klien dan antarmuka publish/subscribe.

    Fitur ini memerlukan v2.6.0 atau lebih baruKomponen inti Greengrass. Untuk menghubungkan perangkat klien untuk layanan bayangan lokal, Anda juga harus menggunakan v2.2.0 atau yang lebih baru dariKomponen jembatan MQTT.

  • Menambahkandirectionopsi yang dapat Anda konfigurasikan untuk menyesuaikan arah untuk menyinkronkan bayangan antara layanan bayangan lokal danAWS Cloud. Anda dapat mengonfigurasi opsi ini untuk mengurangi bandwidth dan koneksi keAWS Cloud.

2.1.1

Perbaikan bug dan peningkatan
  • Memperbaiki masalah di mana kedalaman maksimum didesireddanreportedbagian dari dokumen status bayangan perangkat JSON adalah 4 level, bukan 5 level.

  • Versi yang diperbarui untuk rilis inti Greengrass versi 2.6.0.

2.1.0

Fitur baru
  • Menambahkan dukungan untuk interval sinkronisasi bayangan berkala, sehingga Anda dapat mengonfigurasi perangkat inti untuk mengurangi penggunaan bandwidth dan biaya.

2.0.6

Versi ini berisi perbaikan bug dan perbaikan

2.0.5

Versi yang diperbarui untuk rilis inti Greengrass versi 2.5.0.

2.0.4

Perbaikan bug dan peningkatan
  • Memperbaiki masalah yang menyebabkan manajer bayangan menghapus versi bayangan yang baru dibuat yang sebelumnya dihapus.

  • PembaruanDeleteThingShadowOperasi IPC untuk kenaikan versi bayangan saat dipanggil.

2.0.3

Versi yang diperbarui untuk rilis inti Greengrass versi 2.4.0.

2.0.2

Perbaikan bug dan peningkatan
  • Memperbaiki masalah yang menyebabkan manajer bayangan tidak mengenali properti delta ketika menyinkronkan bayangan keadaan dari AWS IoT Core.

  • Memperbaiki masalah yang terkadang menyebabkan permintaan sinkronisasi agar bayangan digabung secara tidak tepat.

2.0.1

Versi yang diperbarui untuk rilis inti Greengrass versi 2.3.0.

2.0.0

Versi awal.