Instal perangkat lunak AWS IoT Greengrass Core dengan penyediaan sumber daya khusus - AWS IoT Greengrass

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

Instal perangkat lunak AWS IoT Greengrass Core dengan penyediaan sumber daya khusus

Fitur ini tersedia untuk v2.4.0 dan yang lebih baru dari komponen inti Greengrass.

Penginstal perangkat lunak AWS IoT Greengrass Core menyediakan antarmuka Java yang dapat Anda terapkan dalam plugin khusus yang menyediakan AWS sumber daya yang diperlukan. Anda dapat mengembangkan plugin penyediaan untuk menggunakan sertifikat klien X.509 kustom atau untuk menjalankan langkah-langkah penyediaan kompleks yang tidak didukung oleh proses instalasi lainnya. Untuk informasi selengkapnya, lihat Membuat sertifikat klien Anda sendiri di Panduan AWS IoT Core Pengembang.

Untuk menjalankan plugin penyediaan khusus saat Anda menginstal perangkat lunak AWS IoT Greengrass Core, Anda membuat file JAR yang Anda berikan kepada penginstal. Penginstal menjalankan plugin, dan plugin mengembalikan konfigurasi penyediaan yang mendefinisikan sumber daya AWS untuk perangkat inti Greengrass. Penginstal menggunakan informasi ini untuk mengkonfigurasi perangkat lunak AWS IoT Greengrass Core pada perangkat. Untuk informasi selengkapnya, lihat Mengembangkan plugin penyediaan kustom.

penting

Sebelum Anda mengunduh perangkat lunak AWS IoT Greengrass Core, periksa apakah perangkat inti Anda memenuhi persyaratan untuk menginstal dan menjalankan perangkat lunak AWS IoT Greengrass Core v2.0.

Prasyarat

Untuk menginstal perangkat lunak AWS IoT Greengrass Core dengan penyediaan khusus, Anda harus memiliki yang berikut:

  • File JAR untuk plugin penyediaan khusus yang mengimplementasikan file. DeviceIdentityInterface Plugin penyediaan khusus harus mengembalikan nilai untuk setiap sistem dan parameter konfigurasi inti. Jika tidak, Anda harus memberikan nilai-nilai tersebut dalam file konfigurasi selama instalasi. Untuk informasi selengkapnya, lihat Mengembangkan plugin penyediaan kustom.

Mengatur lingkungan perangkat

Ikuti langkah-langkah di bagian ini untuk menyiapkan perangkat Linux atau Windows untuk digunakan sebagai perangkat AWS IoT Greengrass inti Anda.

Siapkan perangkat Linux

Untuk mengatur perangkat Linux untuk AWS IoT Greengrass V2
  1. Instal runtime Java, yang dibutuhkan perangkat lunak AWS IoT Greengrass Core untuk dijalankan. Kami menyarankan Anda menggunakan versi dukungan jangka panjang Amazon Corretto atau OpenJDK. Versi 8 atau lebih tinggi diperlukan. Perintah berikut menunjukkan cara menginstal OpenJDK di perangkat Anda.

    • Untuk distribusi berbasis Debian atau berbasis Ubuntu:

      sudo apt install default-jdk
    • Untuk distribusi berbasis Red Hat:

      sudo yum install java-11-openjdk-devel
    • Untuk Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • Untuk Amazon Linux 2023:

      sudo dnf install java-11-amazon-corretto -y

    Ketika instalasi selesai, jalankan perintah berikut untuk memverifikasi bahwa Java berjalan pada perangkat Linux Anda.

    java -version

    Perintah mencetak versi Java yang berjalan pada perangkat. Misalnya, pada distribusi berbasis Debian, output mungkin terlihat mirip dengan sampel berikut.

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (Opsional) Buat pengguna dan grup sistem default yang menjalankan komponen pada perangkat. Anda juga dapat memilih untuk membiarkan penginstal perangkat lunak AWS IoT Greengrass Core membuat pengguna dan grup ini selama instalasi dengan argumen --component-default-user installer. Untuk informasi selengkapnya, lihat Argumen penginstal.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Verifikasi bahwa pengguna yang menjalankan perangkat lunak AWS IoT Greengrass Core (biasanyaroot), memiliki izin untuk menjalankan sudo dengan pengguna dan grup apa pun.

    1. Jalankan perintah berikut untuk membuka /etc/sudoers file.

      sudo visudo
    2. Verifikasi bahwa izin untuk pengguna terlihat seperti contoh berikut.

      root ALL=(ALL:ALL) ALL
  4. (Opsional) Untuk menjalankan fungsi Lambda kontainer, Anda harus mengaktifkan cgroups v1, dan Anda harus mengaktifkan dan memasang memori dan perangkat cgroups. Jika Anda tidak berencana untuk menjalankan fungsi Lambda kontainer, Anda dapat melewati langkah ini.

    Untuk mengaktifkan opsi cgroups ini, boot perangkat dengan parameter kernel Linux berikut.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Untuk informasi tentang melihat dan menyetel parameter kernel untuk perangkat Anda, lihat dokumentasi untuk sistem operasi dan boot loader Anda. Ikuti instruksi untuk mengatur parameter kernel secara permanen.

  5. Instal semua dependensi lain yang diperlukan pada perangkat Anda seperti yang ditunjukkan oleh daftar persyaratan di. Persyaratan perangkat

Siapkan perangkat Windows

Untuk mengatur perangkat Windows untuk AWS IoT Greengrass V2
  1. Instal runtime Java, yang dibutuhkan perangkat lunak AWS IoT Greengrass Core untuk dijalankan. Kami menyarankan Anda menggunakan versi dukungan jangka panjang Amazon Corretto atau OpenJDK. Versi 8 atau lebih tinggi diperlukan.

  2. Periksa apakah Java tersedia pada variabel sistem PATH, dan tambahkan jika tidak. LocalSystem Akun menjalankan perangkat lunak AWS IoT Greengrass Core, jadi Anda harus menambahkan Java ke variabel sistem PATH alih-alih variabel pengguna PATH untuk pengguna Anda. Lakukan hal-hal berikut:

    1. Tekan tombol Windows untuk membuka menu mulai.

    2. Ketik environment variables untuk mencari opsi sistem dari menu mulai.

    3. Di hasil pencarian menu mulai, pilih Edit variabel lingkungan sistem untuk membuka jendela Properti sistem.

    4. Pilih variabel Lingkungan... untuk membuka jendela Variabel Lingkungan.

    5. Di bawah Variabel sistem, pilih Path, lalu pilih Edit. Di jendela variabel Edit lingkungan, Anda dapat melihat setiap jalur pada baris terpisah.

    6. Periksa apakah jalur ke bin folder instalasi Java ada. Jalannya mungkin terlihat mirip dengan contoh berikut.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Jika bin folder instalasi Java hilang dari Path, pilih Baru untuk menambahkannya, lalu pilih OK.

  3. Buka Windows Command Prompt (cmd.exe) sebagai administrator.

  4. Buat pengguna default di LocalSystem akun di perangkat Windows. Ganti kata sandi dengan kata sandi yang aman.

    net user /add ggc_user password
    Tip

    Bergantung pada konfigurasi Windows Anda, kata sandi pengguna mungkin diatur untuk kedaluwarsa pada tanggal di masa mendatang. Untuk memastikan aplikasi Greengrass Anda terus beroperasi, lacak kapan kata sandi kedaluwarsa, dan perbarui sebelum kedaluwarsa. Anda juga dapat mengatur kata sandi pengguna agar tidak pernah kedaluwarsa.

    • Untuk memeriksa kapan pengguna dan kata sandinya kedaluwarsa, jalankan perintah berikut.

      net user ggc_user | findstr /C:expires
    • Untuk mengatur kata sandi pengguna agar tidak pernah kedaluwarsa, jalankan perintah berikut.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Jika Anda menggunakan Windows 10 atau yang lebih baru di mana wmicperintah tidak digunakan lagi, jalankan perintah berikut. PowerShell

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Unduh dan instal PsExecutilitas dari Microsoft pada perangkat.

  6. Gunakan PsExec utilitas untuk menyimpan nama pengguna dan kata sandi untuk pengguna default dalam contoh Credential Manager untuk LocalSystem akun tersebut. Ganti kata sandi dengan kata sandi pengguna yang Anda tetapkan sebelumnya.

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    Jika PsExec License Agreementterbuka, pilih Acceptuntuk menyetujui lisensi dan jalankan perintah.

    catatan

    Pada perangkat Windows, LocalSystem akun menjalankan inti Greengrass, dan Anda harus menggunakan utilitas untuk menyimpan PsExec informasi pengguna default di akun. LocalSystem Menggunakan aplikasi Credential Manager menyimpan informasi ini di akun Windows dari pengguna yang saat ini masuk, bukan LocalSystem akun.

Unduh perangkat lunak AWS IoT Greengrass Inti

Anda dapat mengunduh versi terbaru perangkat lunak AWS IoT Greengrass Core dari lokasi berikut:

catatan

Anda dapat mengunduh versi tertentu dari perangkat lunak AWS IoT Greengrass Core dari lokasi berikut. Ganti versi dengan versi yang akan diunduh.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Untuk mengunduh perangkat lunak AWS IoT Greengrass Core
  1. Di perangkat inti Anda, unduh perangkat lunak AWS IoT Greengrass Core ke file bernamagreengrass-nucleus-latest.zip.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip

    Dengan mengunduh perangkat lunak ini, Anda menyetujui Perjanjian Lisensi Perangkat Lunak Greengrass Core.

  2. (Opsional) Untuk memverifikasi tanda tangan perangkat lunak inti Greengrass

    catatan

    Fitur ini tersedia dengan Greengrass nucleus versi 2.9.5 dan yang lebih baru.

    1. Gunakan perintah berikut untuk memverifikasi tanda tangan artefak inti Greengrass Anda:

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      Nama file mungkin terlihat berbeda tergantung pada versi JDK yang Anda instal. Ganti jdk17.0.6_10dengan versi JDK yang Anda instal.

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      Nama file mungkin terlihat berbeda tergantung pada versi JDK yang Anda instal. Ganti jdk17.0.6_10dengan versi JDK yang Anda instal.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. jarsignerPemanggilan menghasilkan output yang menunjukkan hasil verifikasi.

      1. Jika file zip inti Greengrass ditandatangani, output berisi pernyataan berikut:

        jar verified.
      2. Jika file zip inti Greengrass tidak ditandatangani, output berisi pernyataan berikut:

        jar is unsigned.
    3. Jika Anda memberikan -certs opsi Jarsigner bersama dengan -verify dan -verbose opsi, output juga menyertakan informasi sertifikat penandatangan terperinci.

  3. Buka zip perangkat lunak AWS IoT Greengrass Core ke folder di perangkat Anda. Ganti GreengrassInstallerdengan folder yang ingin Anda gunakan.

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
  4. (Opsional) Jalankan perintah berikut untuk melihat versi perangkat lunak AWS IoT Greengrass Core.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
penting

Jika Anda menginstal versi inti Greengrass lebih awal dari v2.4.0, jangan hapus folder ini setelah Anda menginstal perangkat lunak Core. AWS IoT Greengrass Perangkat lunak AWS IoT Greengrass Core menggunakan file dalam folder ini untuk dijalankan.

Jika Anda mengunduh versi terbaru perangkat lunak, Anda menginstal v2.4.0 atau yang lebih baru, dan Anda dapat menghapus folder ini setelah Anda menginstal perangkat lunak AWS IoT Greengrass Core.

Instal perangkat lunak AWS IoT Greengrass Core

Jalankan penginstal dengan argumen yang menentukan tindakan berikut:

  • Instal dari file konfigurasi sebagian yang menetapkan untuk menggunakan plugin penyediaan kustom Anda untuk menyediakan sumber daya. AWS Perangkat lunak AWS IoT Greengrass Core menggunakan file konfigurasi yang menentukan konfigurasi setiap komponen Greengrass pada perangkat. Penginstal membuat file konfigurasi lengkap dari file konfigurasi paral yang Anda sediakan dan AWS sumber daya yang dibuat oleh plugin penyediaan khusus.

  • Tentukan untuk menggunakan pengguna ggc_user sistem untuk menjalankan komponen perangkat lunak pada perangkat inti. Pada perangkat Linux, perintah ini juga menentukan untuk menggunakan grup ggc_group sistem, dan penginstal membuat pengguna dan grup sistem untuk Anda.

  • Siapkan perangkat lunak AWS IoT Greengrass Core sebagai layanan sistem yang berjalan saat boot. Pada perangkat Linux, ini membutuhkan sistem init Systemd.

    penting

    Pada perangkat inti Windows, Anda harus mengatur perangkat lunak AWS IoT Greengrass inti sebagai layanan sistem.

Untuk informasi lebih lanjut tentang argumen yang dapat Anda tentukan, lihat Argumen penginstal.

catatan

Jika Anda menjalankan AWS IoT Greengrass perangkat dengan memori terbatas, Anda dapat mengontrol jumlah memori yang digunakan perangkat lunak AWS IoT Greengrass Core. Untuk mengontrol alokasi memori, Anda dapat mengatur pilihan ukuran tumpukan JVM di konfigurasi parameter jvmOptions dalam komponen nukleus anda. Untuk informasi selengkapnya, lihat Kontrol alokasi memori dengan opsi JVM.

Untuk menginstal perangkat lunak AWS IoT Greengrass Core (Linux)
  1. Periksa versi perangkat lunak AWS IoT Greengrass inti.

    • Ganti GreengrassInstallerdengan path ke folder yang berisi perangkat lunak.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Gunakan editor teks untuk membuat file konfigurasi bernama config.yaml yang akan disediakan ke penginstal.

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

    nano GreengrassInstaller/config.yaml

    Salin konten YAML berikut ke dalam file.

    --- system: rootpath: "/greengrass/v2" # The following values are optional. Return them from the provisioning plugin or set them here. # certificateFilePath: "" # privateKeyPath: "" # rootCaPath: "" # thingName: "" services: aws.greengrass.Nucleus: version: "2.12.6" configuration: # The following values are optional. Return them from the provisioning plugin or set them here. # awsRegion: "" # iotRoleAlias: "" # iotDataEndpoint: "" # iotCredEndpoint: "" com.example.CustomProvisioning: configuration: # You can specify configuration parameters to provide to your plugin. # pluginParameter: ""

    Kemudian, lakukan hal berikut:

    • Ganti 2.12.6 dengan versi perangkat lunak AWS IoT Greengrass Core.

    • Ganti setiap instance /greengrass/v2 dengan folder root Greengrass.

    • (Opsional) Tentukan nilai konfigurasi sistem dan inti. Anda harus menetapkan nilai-nilai ini jika plugin penyediaan Anda tidak menyediakannya.

    • (Opsional) Tentukan parameter konfigurasi yang akan diberikan ke plugin penyediaan Anda.

    catatan

    Dalam file konfigurasi ini, Anda dapat menyesuaikan opsi konfigurasi lainnya, seperti port dan proxy jaringan yang akan digunakan, seperti yang ditunjukkan pada contoh berikut. Untuk informasi selengkapnya, lihat konfigurasi nukleus Greengrass.

    --- system: rootpath: "/greengrass/v2" # The following values are optional. Return them from the provisioning plugin or set them here. # certificateFilePath: "" # privateKeyPath: "" # rootCaPath: "" # thingName: "" services: aws.greengrass.Nucleus: version: "2.12.6" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" # The following values are optional. Return them from the provisioning plugin or set them here. # awsRegion: "" # iotRoleAlias: "" # iotDataEndpoint: "" # iotCredEndpoint: "" com.example.CustomProvisioning: configuration: # You can specify configuration parameters to provide to your plugin. # pluginParameter: ""
  3. Jalankan pemasang. Tentukan --trusted-plugin untuk menyediakan plugin penyediaan kustom Anda, dan tentukan --init-config untuk menyediakan file konfigurasi.

    • Ganti /greengrass/v2 atau C:\greengrass\v2 dengan folder root Greengrass.

    • Ganti setiap instance GreengrassInstallerdengan folder tempat Anda membongkar penginstal.

    • Ganti jalur ke file JAR plugin penyediaan khusus dengan jalur ke file JAR plugin Anda.

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin /path/to/com.example.CustomProvisioning.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --trusted-plugin /path/to/com.example.CustomProvisioning.jar ^ --init-config ./GreengrassInstaller/config.yaml ^ --component-default-user ggc_user ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --trusted-plugin /path/to/com.example.CustomProvisioning.jar ` --init-config ./GreengrassInstaller/config.yaml ` --component-default-user ggc_user ` --setup-system-service true
    penting

    Pada perangkat inti Windows, Anda harus menentukan --setup-system-service true untuk mengatur perangkat lunak AWS IoT Greengrass inti sebagai layanan sistem.

    Jika Anda menentukan --setup-system-service true, penginstal akan mencetak Successfully set up Nucleus as a system service jika ia mengatur dan menjalankan perangkat lunak sebagai layanan. Jika tidak, installer tersebut tidak akan menghasilkan pesan apa pun jika ia berhasil menginstal perangkat lunak tersebut.

    catatan

    Anda tidak dapat menggunakan argumen deploy-dev-tools untuk men-deploy alat pengembangan lokal ketika Anda menjalankan penginstal tersebut tanpa argumen --provision true. Untuk informasi tentang cara men-deploy Greengrass CLI secara langsung pada perangkat Anda, lihat Antarmuka Baris Perintah Greengrass.

  4. Verifikasi instalasi dengan melihat file di folder root.

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2

    Jika penginstalan berhasil, folder akar berisi beberapa folder, seperti config, packages, dan logs.

Jika Anda menginstal perangkat lunak AWS IoT Greengrass Core sebagai layanan sistem, penginstal menjalankan perangkat lunak untuk Anda. Jika tidak, Anda harus menjalankan perangkat lunak itu secara manual. Untuk informasi selengkapnya, lihat Jalankan perangkat lunak inti AWS IoT Greengrass.

Untuk informasi selengkapnya tentang cara mengkonfigurasi dan menggunakan perangkat lunak dan AWS IoT Greengrass, lihat berikut ini: