Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan perangkat Anda untuk menjalankan tes IDT
Untuk mengaktifkan IDT untuk menjalankan tes untuk kualifikasi perangkat, Anda harus mengonfigurasi komputer host Anda untuk mengakses perangkat Anda, dan mengonfigurasi izin pengguna pada perangkat Anda.
Instal Java pada komputer host
Dimulai dengan IDT v4.2.0, tes kualifikasi opsional untuk AWS IoT Greengrass memerlukan Java untuk dijalankan.
Anda dapat menggunakan Java versi 8 atau yang lebih besar. Kami menyarankan Anda menggunakan versi dukungan jangka panjang Amazon Corretto
Konfigurasikan komputer host Anda untuk mengakses perangkat yang sedang diuji
IDT berjalan pada komputer host Anda dan harus dapat menggunakan SSH untuk terhubung ke perangkat Anda. Terdapat dua pilihan untuk memungkinkan IDT untuk mendapatkan akses SSH ke perangkat Anda yang diuji:
-
Ikuti petunjuk di sini untuk membuat pasangan kunci SSH dan otorisasi kunci Anda untuk masuk ke perangkat Anda yang sedang diuji tanpa menyebutkan kata sandi.
-
Berikan nama pengguna dan kata sandi untuk setiap perangkat di file
device.json
. Untuk informasi selengkapnya, lihat Konfigurasikan device.json.
Anda dapat menggunakan implementasi SSL apa pun untuk membuat kunci SSH. Petunjuk berikut menunjukkan cara menggunakan SSH-KEYGEN
IDT menggunakan kunci SSH untuk diautentikasi dengan perangkat Anda yang sedang diuji.
Untuk membuat kunci SSH dengan SSH-KEYGEN
-
Buat kunci SSH
Anda dapat menggunakan perintah ssh-keygen Open SSH untuk membuat pasangan kunci SSH. Jika Anda sudah memiliki pasanagn kunci SSH pada komputer host Anda, adalah praktik terbaik untuk membuat pasangan kunci SSH khusus untuk IDT. Dengan cara ini, setelah Anda menyelesaikan tes, komputer host Anda tidak dapat lagi terhubung ke perangkat Anda tanpa memasukkan kata sandi. Hal ini juga memungkinkan Anda membatasi akses ke perangkat jarak jauh hanya untuk yang membutuhkannya.
catatan
Windows tidak memiliki klien SSH yang diinstal. Untuk informasi tentang cara menginstal klien SSH di Windows, lihat Unduh Perangkat Lunak Klien SSH
. Perintah ssh-keygen meminta Anda untuk memberikan nama dan path untuk menyimpan pasangan kunci tersebut. Secara default, file pasangan kunci diberi nama
id_rsa
(kunci privat) danid_rsa.pub
(kunci publik). Di macOS dan Linux, lokasi default file ini adalah~/.ssh/
. Di Windows, lokasi default untuk file ini adalahC:\Users\
.<user-name>\.ssh
Saat diminta, masukkan frase kunci untuk melindungi kunci SSH Anda. Untuk informasi lebih lanjut, lihat Buat Kunci SSH Baru
. -
Tambahkan kunci SSH yang diotorisasi pada perangkat Anda yang sedang diuji.
IDT harus menggunakan kunci privat SSH Anda untuk masuk ke perangkat Anda yang sedang diuji. Untuk mengotorisasi kunci privat SSH Anda untuk masuk ke perangkat Anda yang sedang diuji, gunakan perintah ssh-copy-id dari komputer host Anda. Perintah ini menambahkan kunci publik Anda ke dalam file
~/.ssh/authorized_keys
pada perangkat Anda yang sedang diuji. Sebagai contoh:$ ssh-copy-id
<remote-ssh-user>
@<remote-device-ip>
Di
remote-ssh-user
mana nama pengguna yang digunakan untuk masuk ke perangkat Anda yang sedang diuji danremote-device-ip
merupakan alamat IP perangkat yang diuji untuk menjalankan pengujian. Sebagai contoh:ssh-copy-id pi@192.168.1.5
Saat diminta, masukkan kata sandi untuk nama pengguna yang Anda tentukan di perintah ssh-copy-id.
ssh-copy-id mengasumsikan kunci publik tersebut bernama
id_rsa.pub
dan disimpan di lokasi default (pada macOS dan Linux,~/.ssh/
dan pada Windows,C:\Users\
). Jika Anda memberikan kunci publik nama yang berbeda atau menyimpannya di lokasi yang berbeda, Anda harus menentukan path yang memenuhi syarat untuk kunci publik SSH Anda dengan menggunakan -i untuk ssh-copy-id (misalnya, ssh-copy-id -i ~/my/path/myKey.pub). Untuk informasi lebih lanjut tentang cara membuat kunci SSH dan menyalin kunci publik, lihat SSH-COPY-ID<user-name>\.ssh
.
Untuk membuat kunci SSH dengan menggunakan PuTTYgen (hanya Windows)
-
Pastikan Anda mempunyai server dan klien OpenSSH yang terinstal pada perangkat Anda yang sedang diuji. Untuk informasi selengkapnya, lihat OpenSSH
. -
Instal PuTTYgen
di perangkat Anda yang sedang diuji. -
Buka PuTTYgen.
-
Pilih Buat dan gerakkan kursor mouse Anda di dalam kotak untuk menghasilkan kunci privat.
-
Dari menu Konversi, pilih Ekspor kunci OpenSSH, dan simpan kunci privat dengan ekstensi file
.pem
. -
Tambahkan kunci publik ke file
/home/
pada perangkat yang sedang diuji.<user>
/.ssh/authorized_keys-
Salin teks kunci publik dari jendela PuTTYgen.
-
Gunakan PuTTY untuk membuat sesi pada perangkat Anda yang sedang diuji.
-
Dari command prompt atau jendela Windows Powershell, jalankan perintah berikut:
C:/
<path-to-putty>
/putty.exe -ssh<user>
@<dut-ip-address>
-
Saat diminta, masukkan kata sandi perangkat Anda.
-
Gunakan vi atau editor teks lain untuk menambahkan kunci publik ke file
/home/
pada perangkat Anda yang sedang diuji.<user>
/.ssh/authorized_keys
-
-
-
Perbarui file
device.json
Anda dengan nama pengguna, alamat IP, dan path Anda ke file kunci privat yang baru saja Anda simpan di komputer host untuk setiap perangkat yang sedang diuji. Untuk informasi selengkapnya, lihat Konfigurasikan device.json. Pastikan Anda memberikan path dan nama file yang lengkap untuk kunci privat dan gunakan garis miring ('/'). Misalnya, untuk path WindowsC:\DT\privatekey.pem
, gunakanC:/DT/privatekey.pem
di filedevice.json
.
Konfigurasikan kredensional pengguna untuk perangkat Windows
Untuk memenuhi syarat perangkat berbasis Windows, Anda harus mengonfigurasi kredensional pengguna di LocalSystem akun pada perangkat yang sedang diuji untuk pengguna berikut:
-
Pengguna Greengrass default ().
ggc_user
-
Pengguna yang Anda gunakan untuk terhubung ke perangkat yang sedang diuji. Anda mengkonfigurasi pengguna ini dalam device.jsonfile.
Anda harus membuat setiap pengguna di LocalSystem akun pada perangkat yang sedang diuji, dan kemudian menyimpan nama pengguna dan kata sandi untuk pengguna dalam contoh Credential Manager untuk LocalSystem akun tersebut.
Untuk mengkonfigurasi pengguna di perangkat Windows
-
Buka Windows Command Prompt (
cmd.exe
) sebagai administrator. -
Buat pengguna di LocalSystem akun di perangkat Windows. Jalankan perintah berikut untuk setiap pengguna yang ingin Anda buat.
Untuk pengguna Greengrass default, ganti nama pengguna dengan.
ggc_user
Gantikata sandi
dengan kata sandi yang aman.net user /add
user-name
password
-
Unduh dan instal PsExecutilitas
dari Microsoft pada perangkat. -
Gunakan PsExec utilitas untuk menyimpan nama pengguna dan kata sandi untuk pengguna default dalam contoh Credential Manager untuk LocalSystem akun tersebut.
Jalankan perintah berikut untuk setiap pengguna yang ingin Anda konfigurasi di Credential Manager.
Untuk pengguna Greengrass default, ganti nama pengguna dengan.
ggc_user
Gantikata sandi
dengan kata sandi pengguna yang Anda tetapkan sebelumnya.psexec -s cmd /c cmdkey /generic:
user-name
/user:user-name
/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 informasi PsExec pengguna di akun. LocalSystem Menggunakan aplikasi Credential Manager menyimpan informasi ini di akun Windows dari pengguna yang saat ini masuk, bukan LocalSystem akun.
Konfigurasikan izin pengguna di perangkat Anda
IDT melakukan operasi pada berbagai direktori dan file dalam perangkat yang diuji. Beberapa operasi ini memerlukan izin yang ditinggikan (menggunakan sudo). Untuk mengotomatiskan operasi ini, IDT untuk AWS IoT Greengrass V2 harus dapat menjalankan perintah dengan sudo tanpa diminta kata sandi.
Ikuti langkah-langkah ini pada perangkat yang sedang diuji untuk mengizinkan akses sudo tanpa diminta memasukkan kata sandi.
catatan
username
mengacu pada pengguna SSH yang digunakan oleh IDT untuk mengakses perangkat yang diuji.
Tambahkan pengguna ke grup sudo.
-
Pada perangkat yang sedang diuji, jalankan
sudo usermod -aG sudo
.<username>
-
Keluar, lalu masuk kembali agar perubahan diterapkan.
-
Untuk memverifikasi nama pengguna Anda telah berhasil ditambahkan, jalankan sudo echo test. Jika Anda tidak diminta untuk memasukkan kata sandi, pengguna Anda telah dikonfigurasi dengan benar.
-
Buka file
/etc/sudoers
dan tambahkan baris berikut ke akhir file:<ssh-username>
ALL=(ALL) NOPASSWD: ALL
Konfigurasikan peran pertukaran token khusus
Anda dapat memilih untuk menggunakan peran IAM khusus sebagai peran pertukaran token yang diasumsikan perangkat yang diuji untuk berinteraksi dengan AWS sumber daya. Untuk informasi tentang membuat peran IAM, lihat Membuat peran IAM di Panduan Pengguna IAM.
Anda harus memenuhi persyaratan berikut untuk memungkinkan IDT menggunakan peran IAM kustom Anda. Kami sangat menyarankan agar Anda menambahkan hanya tindakan kebijakan minimum yang diperlukan untuk peran ini.
-
File konfigurasi userdata.json harus diperbarui untuk mengatur parameter ke.
GreengrassV2TokenExchangeRole
true
-
Peran IAM kustom harus dikonfigurasi dengan kebijakan kepercayaan minimum berikut:
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":[ "credentials.iot.amazonaws.com", "lambda.amazonaws.com", "sagemaker.amazonaws.com" ] }, "Action":"sts:AssumeRole" } ] }
-
Peran IAM kustom harus dikonfigurasi dengan kebijakan izin minimum berikut:
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "iot:DescribeCertificate", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "iot:Connect", "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:ListThingPrincipals", "iot:GetThingShadow", "iot:UpdateThingShadow", "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts" ], "Resource":"*" } ] }
-
Nama peran IAM kustom harus cocok dengan sumber daya peran IAM yang Anda tentukan dalam izin IAM untuk pengguna pengujian. Secara default, kebijakan pengguna pengujian mengizinkan akses ke peran IAM yang memiliki
idt-
awalan dalam nama peran mereka. Jika nama peran IAM Anda tidak menggunakan awalan ini, tambahkanarn:aws:iam::*:role/
sumber daya kecustom-iam-role-name
roleAliasResources
pernyataan danpassRoleForResources
pernyataan dalam kebijakan pengguna pengujian Anda, seperti yang ditunjukkan dalam contoh berikut:contoh
passRoleForResources
pernyataan{ "Sid":"passRoleForResources", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::*:role/
custom-iam-role-name
", "Condition":{ "StringEquals":{ "iam:PassedToService":[ "iot.amazonaws.com", "lambda.amazonaws.com", "greengrass.amazonaws.com" ] } } }contoh
roleAliasResources
pernyataan{ "Sid":"roleAliasResources", "Effect":"Allow", "Action":[ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:DeleteRoleAlias", "iot:TagResource", "iam:GetRole" ], "Resource":[ "arn:aws:iot:*:*:rolealias/idt-*", "arn:aws:iam::*:role/
custom-iam-role-name
" ] }
Konfigurasikan perangkat Anda untuk menguji fitur opsional
Bagian ini menjelaskan persyaratan perangkat untuk menjalankan tes IDT untuk fitur Docker dan machine learning (ML) opsional. Fitur ML hanya didukung di IDT v4.9.3. Anda harus memastikan perangkat Anda memenuhi persyaratan ini hanya jika Anda ingin menguji fitur ini. Jika tidak, lanjutkan ke Konfigurasikan pengaturan IDT untuk menjalankan rangkaian AWS IoT Greengrass kualifikasi.
Persyaratan kualifikasi Docker
IDT untuk AWS IoT Greengrass V2 menyediakan tes kualifikasi Docker untuk memvalidasi bahwa perangkat Anda dapat menggunakan komponen manajer aplikasi Docker AWS yang disediakan untuk mengunduh gambar kontainer Docker yang dapat Anda jalankan menggunakan komponen kontainer Docker khusus. Untuk informasi selengkapnya tentang cara membuat konten dokumen kustom, lihat Jalankan kontainer Docker.
Untuk menjalankan tes kualifikasi Docker, perangkat Anda yang sedang diuji harus memenuhi persyaratan berikut untuk men-deploy komponen manajer aplikasi Docker.
-
Docker Engine
1.9.1 atau yang lebih baru diinstal pada perangkat inti Greengrass. Versi 20.10 adalah versi terbaru yang diverifikasi untuk bekerja dengan perangkat lunak AWS IoT Greengrass Core. Anda harus menginstal Docker langsung pada perangkat inti sebelum Anda menyebarkan komponen yang menjalankan kontainer Docker. -
Daemon Docker dimulai dan berjalan pada perangkat inti sebelum Anda men-deploy komponen ini.
-
Pengguna sistem yang menjalankan komponen kontainer Docker harus memiliki izin root atau administrator, atau Anda harus mengonfigurasi Docker untuk menjalankannya sebagai pengguna non-root atau non-admistrator.
-
Pada perangkat Linux, Anda dapat menambahkan pengguna ke
docker
grup untuk memanggildocker
perintah tanpasudo
. -
Pada perangkat Windows, Anda dapat menambahkan pengguna ke
docker-users
grup untuk memanggildocker
perintah tanpa hak istimewa adminstrator.
-
Persyaratan kualifikasi ML
catatan
Fitur pembelajaran mesin hanya didukung di IDT v4.9.3.
IDT for AWS IoT Greengrass V2 menyediakan pengujian kualifikasi ML untuk memvalidasi bahwa perangkat Anda dapat menggunakan komponen machine learning yang AWS disediakan untuk melakukan inferensi ML secara lokal menggunakan kerangka kerja Deep Learning Runtime
Untuk menjalankan tes kualifikasi ML, perangkat Anda yang sedang diuji harus memenuhi persyaratan berikut untuk men-deploy komponen machine learning.
-
Pada perangkat inti Greengrass yang menjalankan Amazon Linux 2 atau Ubuntu 18.04, Pustaka GNU C
(glibc) versi 2.27 atau yang lebih baru diinstal pada perangkat tersebut. -
Pada perangkat ARMv7L, seperti Raspberry Pi, dependensi untuk OpenCV-Python diinstal pada perangkat. Jalankan perintah berikut untuk menginstal dependensi.
sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
-
Perangkat Raspberry Pi yang menjalankan Raspberry Pi OS Bullseye harus memenuhi persyaratan berikut:
-
NumPy 1.22.4 atau yang lebih baru diinstal pada perangkat. Raspberry Pi OS Bullseye menyertakan versi sebelumnya NumPy, sehingga Anda dapat menjalankan perintah berikut untuk meningkatkan NumPy pada perangkat.
pip3 install --upgrade numpy
-
Tumpukan kamera lama diaktifkan di perangkat. Raspberry Pi OS Bullseye menyertakan tumpukan kamera baru yang diaktifkan secara default dan tidak kompatibel, jadi Anda harus mengaktifkan tumpukan kamera lama.
Untuk mengaktifkan tumpukan kamera lama
-
Jalankan perintah berikut untuk membuka alat konfigurasi Raspberry Pi.
sudo raspi-config
-
Pilih Opsi Antarmuka.
-
Pilih Kamera lama untuk mengaktifkan tumpukan kamera lama.
-
Reboot Raspberry Pi.
-
-
Persyaratan kualifikasi HSM
AWS IoT Greengrass menyediakan komponen penyedia PKCS #11 untuk diintegrasikan dengan Modul Keamanan Perangkat Keras PKCS (HSM) pada perangkat. Pengaturan HSM tergantung pada perangkat Anda dan modul HSM yang telah Anda pilih. Selama konfigurasi HSM yang diharapkan, seperti yang didokumentasikan dalam pengaturan konfigurasi IDT, disediakan, IDT akan memiliki informasi yang diperlukan untuk menjalankan tes kualifikasi fitur opsional ini.