Men-deploy AWS IoT Greengrass grup ke AWS IoT Greengrass core - AWS IoT Greengrass

AWS IoT Greengrass Version 1 memasuki fase umur panjang pada 30 Juni 2023. Untuk informasi selengkapnya, lihat kebijakan AWS IoT Greengrass V1 pemeliharaan. Setelah tanggal ini, tidak AWS IoT Greengrass V1 akan merilis pembaruan yang menyediakan fitur, penyempurnaan, perbaikan bug, atau patch keamanan. Perangkat yang berjalan AWS IoT Greengrass V1 tidak akan terganggu dan akan terus beroperasi dan terhubung ke cloud. Kami sangat menyarankan Anda bermigrasi ke AWS IoT Greengrass Version 2, yang menambahkan fitur baru yang signifikan dan dukungan untuk platform tambahan.

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

Men-deploy AWS IoT Greengrass grup ke AWS IoT Greengrass core

Gunakan AWS IoT Greengrass grup untuk mengatur entitas di dalam lingkungan edge Anda. Anda juga menggunakan grup untuk mengontrol cara entitas dalam grup berinteraksi satu sama lain dan dengan AWS Cloud. Sebagai contoh, hanya fungsi Lambda di dalam grup yang di-deploy untuk berjalan secara lokal, dan hanya perangkat di dalam grup yang dapat berkomunikasi menggunakan server MQTT lokal.

Sebuah grup harus menyertakan core, yang merupakan AWS IoT perangkat yang menjalankan AWS IoT Greengrass perangkat lunak Core. core bertindak sebagai edge gateway dan menyediakan AWS IoT Core kapabilitas di dalam lingkungan edge. Bergantung pada kebutuhan bisnis Anda, Anda juga dapat menambahkan entitas berikut ke grup:

Anda mengelola grup Greengrass Anda di AWS Cloud lalu men-deploy-nya ke core. Salinan deployment konfigurasi grup untuk file group.json pada perangkat core. File ini terletak di greengrass-root/ggc/deployments/group.

Definisi cloud dari grup Greengrass di-deploy ke perangkat core.
catatan

Selama deployment, proses Greengrass daemon pada perangkat core berhenti lalu dimulai kembali.

Men-deploy grup dari AWS IoT konsol

Anda dapat men-deploy grup dan mengelola deployment-nya dari halaman konfigurasi grup di AWS IoT konsol.

catatan

Untuk membuka halaman ini di konsol, pilih Perangkat Greengrass, lalu Grup (V1), dan kemudian di bawah Grup Greengrass, pilih grup Anda.

Untuk menyebarkan versi grup saat ini
  • Dari halaman konfigurasi grup, pilih Deploy.

Untuk melihat riwayat penyebaran grup

Riwayat deployment grup mencakup tanggal dan waktu, versi grup, dan status setiap upaya deployment.

  1. Dari halaman konfigurasi grup, pilih tab Deployment.

  2. Untuk melihat informasi selengkapnya tentang penerapan, termasuk pesan kesalahan, pilih Penerapan dari AWS IoT konsol, di bawah Perangkat Greengrass.

Untuk menerapkan ulang penyebaran grup

Anda mungkin ingin men-deploy ulang deployment jika deployment saat ini gagal atau kembali ke versi grup yang berbeda.

  1. Dari AWS IoT konsol, pilih perangkat Greengrass, lalu pilih Grup (V1).

  2. Pilih tab Deployment.

  3. Pilih penerapan yang ingin Anda gunakan kembali dan pilih Redeploy.

Untuk mengatur ulang penerapan grup

Anda mungkin ingin mengatur ulang deployment grup untuk memindahkan atau menghapus grup atau untuk menghapus informasi deployment. Untuk informasi selengkapnya, lihat Atur ulang deployment.

  1. Dari AWS IoT konsol, pilih perangkat Greengrass, lalu pilih Grup (V1).

  2. Pilih tab Deployment.

  3. Pilih penerapan yang ingin Anda atur ulang dan pilih Atur ulang penerapan.

Men-deploy grup dengan AWS IoT Greengrass API

API AWS IoT Greengrass menyediakan tindakan berikut untuk men-deploy grup AWS IoT Greengrass dan mengelola deployment grup. Anda dapat memanggil tindakan ini dari AWS CLI, AWS IoT Greengrass API, atau AWS SDK.

Tindakan Deskripsi

CreateDeployment

Membuat sebuah NewDeployment atau Redeployment deployment.

Anda mungkin ingin men-deploy ulang deployment jika deployment saat ini gagal. Atau Anda mungkin ingin men-deploy ulang untuk kembali ke versi grup yang berbeda.

GetDeploymentStatus

Mengembalikan status sebuah deployment: Building, InProgress, Success, atau Failure.

Anda dapat mengonfigurasi EventBridge acara Amazon untuk menerima pemberitahuan penerapan. Untuk informasi selengkapnya, lihat Dapatkan notifikasi deployment.

ListDeployments

Mengembalikan sejarah deployment untuk grup.

ResetDeployments

Mengatur ulang deployment untuk grup.

Anda mungkin ingin mengatur ulang deployment grup untuk memindahkan atau menghapus grup atau untuk menghapus informasi deployment. Untuk informasi selengkapnya, lihat Atur ulang deployment.

catatan

Untuk informasi tentang operasi deployment massal, lihat Buat deployment massal untuk grup.

Mendapatkan ID grup

ID grup umumnya digunakan dalam tindakan API. Anda dapat menggunakan ListGroupstindakan untuk menemukan ID grup target dari daftar grup Anda. Sebagai contoh, dalam AWS CLI, gunakan list-groups perintah.

aws greengrass list-groups

Anda juga dapat menyertakan query opsi untuk memfilter hasil. Sebagai contoh:

  • Untuk mendapatkan grup yang paling baru dibuat:

    aws greengrass list-groups --query "reverse(sort_by(Groups, &CreationTimestamp))[0]"
  • Untuk mendapatkan grup dengan nama:

    aws greengrass list-groups --query "Groups[?Name=='MyGroup']"

    Nama grup tidak perlu unik, sehingga beberapa grup mungkin ditampilkan.

Berikut ini adalah contoh list-groups respons. Informasi untuk setiap grup termasuk ID grup (di dalam Id properti) dan ID dari versi grup terbaru (dalam LatestVersion properti). Untuk mendapatkan ID versi lain untuk grup, gunakan ID grup dengan ListGroupVersions.

catatan

Anda juga dapat menemukan nilai-nilai ini di konsol AWS IoT tersebut. ID grup ditampilkan pada halaman Pengaturan grup. ID versi grup ditampilkan di tab Deployment grup.

{ "Groups": [ { "LatestVersionArn": "arn:aws:us-west-2:123456789012:/greengrass/groups/00dedaaa-ac16-484d-ad77-c3eedEXAMPLE/versions/4cbc3f07-fc5e-48c4-a50e-7d356EXAMPLE", "Name": "MyFirstGroup", "LastUpdatedTimestamp": "2019-11-11T05:47:31.435Z", "LatestVersion": "4cbc3f07-fc5e-48c4-a50e-7d356EXAMPLE", "CreationTimestamp": "2019-11-11T05:47:31.435Z", "Id": "00dedaaa-ac16-484d-ad77-c3eedEXAMPLE", "Arn": "arn:aws:us-west-2:123456789012:/greengrass/groups/00dedaaa-ac16-484d-ad77-c3eedEXAMPLE" }, { "LatestVersionArn": "arn:aws:us-west-2:123456789012:/greengrass/groups/036ceaf9-9319-4716-ba2a-237f9EXAMPLE/versions/8fe9e8ec-64d1-4647-b0b0-01dc8EXAMPLE", "Name": "GreenhouseSensors", "LastUpdatedTimestamp": "2020-01-07T19:58:36.774Z", "LatestVersion": "8fe9e8ec-64d1-4647-b0b0-01dc8EXAMPLE", "CreationTimestamp": "2020-01-07T19:58:36.774Z", "Id": "036ceaf9-9319-4716-ba2a-237f9EXAMPLE", "Arn": "arn:aws:us-west-2:123456789012:/greengrass/groups/036ceaf9-9319-4716-ba2a-237f9EXAMPLE" }, ... ] }

Jika Anda tidak menentukan Wilayah AWS, AWS CLI memerintahkan untuk menggunakan Wilayah default dari profil Anda. Untuk mengembalikan grup di dalam Wilayah yang berbeda, sertakan opsi wilayah ini. Sebagai contoh:

aws greengrass list-groups --region us-east-1

Ikhtisar tentang AWS IoT Greengrass model objek grup

Ketika memprogram dengan AWS IoT Greengrass API, sangat membantu untuk memahami model objek grup Greengrass.

Grup

Di AWS IoT Greengrass API, Group objek tingkat atas terdiri dari metadata dan daftar GroupVersion objek. GroupVersion obyek terkait dengan Group oleh ID.

Diagram grup, yang terdiri dari metadata dan daftar versi grup.

Versi grup

GroupVersion objek mendefinisikan keanggotaan grup. Masing-masing GroupVersion mereferensi CoreDefinitionVersion dan versi komponen lainnya oleh ARN. Referensi ini menentukan entitas mana yang akan disertakan di dalam grup.

Diagram dari versi grup yang mereferensi jenis versi lain oleh ARN.

Sebagai contoh, untuk menyertakan tiga fungsi Lambda, satu perangkat, dan dua langganan di dalam grup, GroupVersion referensi:

  • Sebuah CoreDefinitionVersion yang berisi core yang dibutuhkan.

  • Sebuah FunctionDefinitionVersion yang berisi tiga fungsi.

  • DeviceDefinitionVersionYang berisi perangkat klien.

  • Sebuah SubscriptionDefinitionVersion yang berisi dua langganan.

Men-deploy GroupVersion ke perangkat core menentukan entitas yang tersedia di lingkungan lokal dan cara mereka dapat berinteraksi.

Komponen grup

Komponen yang Anda tambahkan ke grup memiliki hirarki tiga tingkat:

  • Definisi yang mereferensikan daftar DefinitionVersionobjek dari jenis tertentu. Sebagai contoh, DeviceDefinition mereferensikan daftar DeviceDefinitionVersion objek.

  • A DefinitionVersionyang berisi satu set entitas dari tipe tertentu. Sebagai contoh, DeviceDefinitionVersion berisi sebuah daftar dari Device objek.

  • Entitas individu yang mendefinisikan properti dan perilaku mereka. Misalnya, a Device mendefinisikan ARN dari perangkat klien yang sesuai dalam registri, ARN sertifikat AWS IoT perangkatnya, dan apakah bayangan lokalnya disinkronkan secara otomatis dengan cloud.

    Anda dapat menambahkan jenis entitas berikut ke grup:

Contoh berikut DeviceDefinition mereferensikan tiga DeviceDefinitionVersion objek yang masing-masing berisi beberapa Device objek. Hanya satu DeviceDefinitionVersion pada suatu waktu digunakan di dalam grup.

Diagram hierarki perangkat, yang terdiri dari DeviceDefinition, DeviceDefinitionVersion, dan objek Perangkat.

Memperbarui grup

Di dalam API AWS IoT Greengrass tersebut, Anda menggunakan versi untuk memperbarui konfigurasi grup. Versi tidak dapat diubah, jadi untuk menambah, menghapus, atau mengubah komponen grup, Anda harus membuat DefinitionVersionobjek yang berisi entitas baru atau yang diperbarui.

Anda dapat mengaitkan DefinitionVersionsobjek baru dengan objek Definisi baru atau yang sudah ada. Sebagai contoh, Anda dapat menggunakan opsi CreateFunctionDefinition tindakan untuk membuat FunctionDefinition yang mencakup FunctionDefinitionVersion sebagai versi awal, atau Anda dapat menggunakan CreateFunctionDefinitionVersion tindakan dan mereferensi yang sudah ada FunctionDefinition.

Setelah Anda membuat komponen grup, Anda membuat sebuah GroupVersion yang berisi semua DefinitionVersionobjek yang ingin Anda sertakan dalam grup. Kemudian, Anda men-deploy GroupVersion.

Untuk men-deploy GroupVersion, hal itu harus mereferensi CoreDefinitionVersion yang berisi persis satu Core. Semua entitas yang direferensikan harus menjadi anggota grup. Juga, Peran layanan Greengrass harus dikaitkan dengan Akun AWS Anda dalam Wilayah AWS di mana Anda men-deploy GroupVersion.

catatan

Tindakan Update dalam API digunakan untuk mengubah nama dari Group atau komponen Definisi objek.

Memperbarui entitas yang mereferensikan AWS sumber daya

Fungsi Lambda Greengrass dan sumber daya rahasia mendefinisikan properti khusus Greengrass dan juga mereferensi sumber daya AWS yang sesuai. Untuk memperbarui entitas ini, Anda mungkin membuat perubahan pada AWS sumber daya yang sesuai sebagai ganti objek Greengrass Anda. Sebagai contoh, fungsi Lambda mereferensi fungsi di AWS Lambda dan juga mendefinisikan siklus hidup dan properti lainnya yang spesifik untuk grup Greengrass.

  • Untuk memperbarui kode fungsi Lambda atau dependensi yang dikemas, buat perubahan Anda di dalam AWS Lambda. Selama deployment grup berikutnya, perubahan ini diambil dari AWS Lambda dan disalin ke lingkungan lokal Anda.

  • Untuk memperbarui properti khusus Greengrass, Anda membuat FunctionDefinitionVersion yang berisi Function properti yang diperbarui.

catatan

Fungsi Greengrass Lambda dapat mereferensi fungsi Lambda dengan ARN alias atau ARN versi. Jika Anda mereferensikan ARN alias (disarankan), Anda tidak perlu memperbarui FunctionDefinitionVersion (atau SubscriptionDefinitionVersion) ketika Anda menerbitkan versi fungsi baru di dalam AWS Lambda. Untuk informasi selengkapnya, lihat Fungsi Referensi Lambda dengan alias atau versi.

Lihat juga