Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Instal perangkat lunak inti AWS IoT Greengrass dengan penyediaan sumber daya manual
Perangkat lunak inti AWS IoT Greengrass mencakup penginstal yang mengatur perangkat Anda sebagai perangkat inti Greengrass. Untuk mengatur perangkat secara manual, Anda dapat membuat AWS IoT dan sumber daya IAM untuk perangkat yang akan digunakan. Jika Anda membuat sumber daya ini secara manual, Anda tidak perlu menyediakan kredensial AWS untuk installer.
Ketika Anda secara manual menginstal perangkat lunak inti AWS IoT Greengrass, Anda juga dapat mengonfigurasi perangkat tersebut untuk menggunakan proksi jaringan atau terhubung ke AWS pada port 443. Anda mungkin perlu menentukan opsi konfigurasi ini jika perangkat berjalan di belakang firewall atau proksi jaringan, misalnya. Untuk informasi selengkapnya, lihat Hubungkan pada port 443 atau melalui proksi jaringan.
Anda juga dapat mengonfigurasi perangkat lunakAWS IoT Greengrass inti untuk menggunakan hardware security module (HSM) melalui antarmuka PKCS #11
penting
Sebelum Anda mengunduh perangkat lunak inti AWS IoT Greengrass, periksa apakah perangkat inti Anda memenuhi persyaratan untuk menginstal dan menjalankan perangkat lunak inti v2.0 AWS IoT Greengrass.
Topik
Ambil titik akhir AWS IoT
Dapatkan titik akhir AWS IoT untuk Akun AWS, dan simpan untuk digunakan nanti. Perangkat Anda menggunakan titik akhir ini untuk tersambung ke AWS IoT. Lakukan hal berikut:
-
Dapatkan titik akhir data AWS IoT untuk perangkat Akun AWS Anda.
aws iot describe-endpoint --endpoint-type iot:Data-ATS
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "endpointAddress": "
device-data-prefix
-ats.iot.us-west-2.amazonaws.com" } -
Dapatkan titik akhir kredensial AWS IoT untuk Akun AWS Anda.
aws iot describe-endpoint --endpoint-type iot:CredentialProvider
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "endpointAddress": "
device-credentials-prefix
.credentials.iot.us-west-2.amazonaws.com" }
Buat objek AWS IoT
Objek AWS IoT mewakili perangkat dan entitas logis yang terhubung ke AWS IoT. Perangkat inti Greengrass merupakan objek AWS IoT. Saat Anda mendaftarkan suatu perangkat sebagai objek AWS IoT, perangkat itu dapat menggunakan sertifikat digital untuk diautentikasi dengan AWS.
Di bagian ini, Anda akan membuatAWS IoT objek yang mewakili perangkat Anda.
Untuk membuat objek AWS IoT
-
Buat objek AWS IoT untuk perangkat Anda. Pada komputer pengembangan Anda, jalankan perintah berikut.
-
Ganti
MyGreengrassCore
dengan nama objek yang akan digunakan. Nama ini juga merupakan nama perangkat inti Greengrass Anda.catatan
Nama objek tidak dapat berisi karakter titik dua (
:
).
aws iot create-thing --thing-name
MyGreengrassCore
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
-
-
(Opsional) Tambahkan AWS IoT pada grup objek baru atau yang sudah ada. Anda menggunakan grup objek untuk mengelola armada perangkat inti Greengrass. Saat men-deploy komponen perangkat lunak ke perangkat, Anda dapat menargetkan perangkat individual atau grup perangkat. Anda dapat menambahkan suatu perangkat ke grup objek dengan deployment Greengrass aktif untuk men-deploy komponen perangkat lunak grup objek tersebut ke perangkat. Lakukan hal berikut:
-
(Opsional) Buat grup objek AWS IoT.
-
Ganti
MyGreengrassCoreGroup
dengan nama grup objek yang akan dibuat.catatan
Nama grup objek tidak dapat berisi karakter titik dua (
:
).
aws iot create-thing-group --thing-group-name
MyGreengrassCoreGroup
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
-
-
Tambahkan objek AWS IoT pada grup objek.
-
Ganti
MyGreengrassCore
dengan nama objekAWS IoT Anda. -
Ganti
MyGreengrassCoreGroup
dengan nama grup objek.
aws iot add-thing-to-thing-group --thing-name
MyGreengrassCore
--thing-group-nameMyGreengrassCoreGroup
Perintah tersebut tidak memiliki output apa pun jika permintaan berhasil.
-
-
Buat sertifikat objek
Saat Anda mendaftarkan perangkat sebagai objek AWS IoT, perangkat itu dapat menggunakan sertifikat digital untuk diautentikasi dengan AWS. Sertifikat ini memungkinkan perangkat untuk berkomunikasi dengan AWS IoT dan AWS IoT Greengrass.
Di bagian ini, Anda akan membuat dan mengunduh sertifikat yang dapat digunakan oleh perangkat Anda untuk tersambung keAWS.
Jika Anda ingin mengkonfigurasi perangkat lunakAWS IoT Greengrass Core untuk menggunakan modul keamanan perangkat keras (HSM) untuk menyimpan kunci pribadi dan sertifikat dengan aman, ikuti langkah-langkah untuk membuat sertifikat dari kunci pribadi di HSM. Jika tidak, ikuti langkah-langkah untuk membuat sertifikat dan kunci pribadi dalamAWS IoT layanan. Fitur keamanan perangkat keras hanya tersedia di perangkat Linux. Untuk informasi selengkapnya tentang keamanan perangkat keras dan persyaratan untuk menggunakannya, lihatIntegrasi keamanan perangkat keras.
Untuk membuat sertifikat hal
-
Buat folder di mana Anda mengunduh sertifikat untuk objek AWS IoT.
mkdir greengrass-v2-certs
-
Buat dan unduh sertifikat tersebut untuk objek AWS IoT.
aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile greengrass-v2-certs/device.pem.crt --public-key-outfile greengrass-v2-certs/public.pem.key --private-key-outfile greengrass-v2-certs/private.pem.key
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\nMMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\n59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\nhJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\nFQIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nkey omitted for security reasons\n-----END RSA PRIVATE KEY-----\n" } }
Simpan Amazon Resource Name (ARN) sertifikat yang akan digunakan untuk mengonfigurasi sertifikat nanti.
catatan
Fitur ini tersedia untuk v2.5.3 dan versi kemudian dari komponen inti Greengrass. AWS IoT GreengrassSaat ini tidak mendukung fitur ini pada perangkat inti Windows.
Untuk membuat sertifikat hal
-
Pada perangkat inti, inisialisasi token PKCS #11 di HSM, dan buat kunci pribadi. Kunci privat harus berupa kunci RSA dengan ukuran kunci RSA-2048 (atau lebih besar) atau kunci ECC.
catatan
Untuk menggunakan modul keamanan perangkat keras dengan kunci ECC, Anda harus menggunakan Greengrass nucleus v2.5.6 atau yang lebih baru.
Untuk menggunakan modul keamanan perangkat keras dan manajer rahasia, Anda harus menggunakan modul keamanan perangkat keras dengan kunci RSA.
Periksa dokumentasi untuk HSM Anda untuk mempelajari cara menginisialisasi token dan menghasilkan kunci pribadi. Jika HSM Anda mendukung ID objek, tentukan ID objek saat Anda membuat kunci pribadi. Simpan ID slot, PIN pengguna, label objek, ID objek (jika HSM Anda menggunakannya) yang Anda tentukan saat Anda menginisialisasi token dan menghasilkan kunci pribadi. Anda menggunakan nilai-nilai ini nanti ketika Anda mengimpor sertifikat hal ke HSM dan mengkonfigurasi perangkat lunakAWS IoT Greengrass inti.
-
Buat permintaan penandatanganan sertifikat (CSR) dari kunci privat. AWS IoTmenggunakan CSR ini untuk membuat sertifikat hal untuk kunci pribadi yang Anda buat di HSM. Untuk informasi tentang cara membuat CSR dari kunci privat, lihat dokumentasi untuk HSM Anda. CSR adalah file, seperti
iotdevicekey.csr
. -
Salin CSR dari perangkat ke komputer pengembangan. Jika SSH dan SCP diaktifkan di komputer pengembangan dan perangkat, Anda dapat menggunakan
scp
perintah di komputer pengembangan Anda untuk mentransfer CSR. Gantidevice-ip-address
dengan alamat IP perangkat Anda, dan ganti~/iotdevicekey.csr
dengan path ke file CSR di perangkat.scp
device-ip-address
:~/iotdevicekey.csr
iotdevicekey.csr -
Di komputer pengembangan Anda, buat folder tempat Anda mengunduh sertifikat untukAWS IoT objek.
mkdir greengrass-v2-certs
-
Gunakan file CSR untuk membuat dan mengunduh sertifikat untukAWS IoT hal tersebut ke komputer pengembangan Anda.
aws iot create-certificate-from-csr --set-as-active --certificate-signing-request=file://iotdevicekey.csr --certificate-pem-outfile greengrass-v2-certs/device.pem.crt
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----" }
Simpan ARN sertifikat yang akan digunakan untuk mengonfigurasi sertifikat nanti.
Konfigurasikan sertifikat hal
Lampirkan sertifikat hal keAWS IoT hal yang Anda buat sebelumnya, dan tambahkanAWS IoT kebijakan ke sertifikat untuk menentukanAWS IoT izin untuk perangkat inti.
Untuk mengkonfigurasi sertifikat benda
-
Lampirkan sertifikat pada objek AWS IoT.
-
Ganti
MyGreengrassCore
dengan nama objekAWS IoT Anda. -
Ganti Amazon Resource Name (ARN) sertifikat dengan ARN sertifikat yang Anda buat pada langkah sebelumnya.
aws iot attach-thing-principal --thing-name
MyGreengrassCore
--principalarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Perintah tersebut tidak memiliki output apa pun jika permintaan berhasil.
-
-
Buat dan lampirkan kebijakan AWS IoT yang menentukan izin AWS IoT untuk perangkat inti Greengrass Anda. Kebijakan berikut memungkinkan akses ke semua topik MQTT dan operasi Greengrass, sehingga perangkat Anda bekerja dengan aplikasi kustom dan perubahan di masa mendatang yang memerlukan operasi Greengrass baru. Anda dapat membatasi kebijakan ini berdasarkan kasus penggunaan Anda. Untuk informasi selengkapnya, lihat Kebijakan AWS IoT minimal untuk perangkat inti AWS IoT Greengrass V2.
Jika Anda telah menyiapkan perangkat inti Greengrass sebelumnya, Anda dapat melampirkan kebijakan AWS IoT alih-alih menciptakan kebijakan baru.
Lakukan hal berikut:
-
Buat file yang berisi dokumenAWS IoT kebijakan yang diperlukan oleh perangkat inti Greengrass.
Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano greengrass-v2-iot-policy.json
Salin JSON berikut ke dalam file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect", "greengrass:*" ], "Resource": [ "*" ] } ] }
-
BuatAWS IoT kebijakan dari dokumen kebijakan.
-
Ganti
GreengrassV2IoTThingPolicy
dengan nama kebijakan yang akan dibuat.
aws iot create-policy --policy-name
GreengrassV2IoTThingPolicy
--policy-document file://greengrass-v2-iot-policy.jsonRespons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "policyName": "GreengrassV2IoTThingPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassV2IoTThingPolicy", "policyDocument": "{ \"Version\": \"2012-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Action\": [ \"iot:Publish\", \"iot:Subscribe\", \"iot:Receive\", \"iot:Connect\", \"greengrass:*\" ], \"Resource\": [ \"*\" ] } ] }", "policyVersionId": "1" }
-
-
Lampirkan kebijakan AWS IoT ke sertifikat objek AWS IoT.
-
Ganti
GreengrassV2IoTThingPolicy
dengan nama kebijakan yang akan dibuat. -
Ganti ARN target dengan ARN sertifikat untuk objek AWS IoT Anda.
aws iot attach-policy --policy-name
GreengrassV2IoTThingPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Perintah tersebut tidak memiliki output apa pun jika permintaan berhasil.
-
-
Buat peran pertukaran token
Perangkat inti Greengrass menggunakan peran layanan IAM, yang disebut peran pertukaran token, untuk mengotorisasi panggilan ke layanan AWS. Perangkat tersebut menggunakan penyediaAWS IoT kredenial untuk mendapatkanAWS kredensitas sementara untuk peranan ini, yang membolehkan perangkat berinteraksi denganAWS IoT, mengirim log ke AmazonCloudWatch Logs, dan mengunduh artefak komponen khusus dari Amazon S3. Untuk informasi selengkapnya, lihat Otorisasi perangkat inti untuk berinteraksi dengan AWS layanan.
Anda menggunakan aliasAWS IoT peran untuk mengonfigurasi peran pertukaran token untuk perangkat inti Greengrass. Alias peran memungkinkan Anda mengubah peran pertukaran token untuk suatu perangkat tetapi menjaga konfigurasi perangkat tetap sama. Untuk informasi selengkapnya, lihat Mengotorisasi panggilan langsung ke layanan AWS di Panduan Developer AWS IoT Core.
Pada bagian ini, Anda membuat pertukaran token IAM role dan alias peran AWS IoT yang menunjuk ke peran tersebut. Jika Anda telah menyiapkan perangkat inti Greengrass, Anda dapat menggunakan peran pertukaran token dan alias peran alih-alih membuat yang baru. Kemudian, Anda mengonfigurasi objek AWS IoT untuk menggunakan peran dan alias itu.
Buat peran pertukaran token IAM role
-
Buat IAM role yang dapat digunakan oleh perangkat Anda sebagai peran pertukaran token. Lakukan hal berikut:
-
Buat file yang berisi dokumen kebijakan kepercayaan yang memerlukan peran pertukaran token.
Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano device-role-trust-policy.json
Salin JSON berikut ke dalam file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Buat peran pertukaran token dengan dokumen kebijakan kepercayaan.
-
Ganti
GreengrassV2TokenExchangeRole
dengan nama IAM role yang akan dibuat.
aws iam create-role --role-name
GreengrassV2TokenExchangeRole
--assume-role-policy-document file://device-role-trust-policy.jsonRespons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "Role": { "Path": "/", "RoleName": "GreengrassV2TokenExchangeRole", "RoleId": "AROAZ2YMUHYHK5OKM77FB", "Arn": "arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole", "CreateDate": "2021-02-06T00:13:29+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }
-
-
Buat file yang berisi dokumen kebijakan akses yang diperlukan oleh peran pertukaran token.
Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano device-role-access-policy.json
Salin JSON berikut ke dalam file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "s3:GetBucketLocation" ], "Resource": "*" } ] }
catatan
Kebijakan akses ini tidak mengizinkan akses ke artefak komponen dalam bucket S3. Untuk men-deploy komponen kustom yang menentukan artefak di Amazon S3, Anda harus menambahkan izin untuk peran tersebut untuk memungkinkan perangkat inti Anda untuk mengambil artefak komponen. Untuk informasi selengkapnya, lihat Izinkan akses ke bucket S3 untuk artefak komponen.
Jika Anda belum memiliki bucket S3 untuk artefak komponen, Anda dapat menambahkan izin ini nanti setelah membuat bucket.
-
Buat kebijakan IAM dari dokumen kebijakan.
-
Ganti
GreengrassV2TokenExchangeRoleAccess
dengan nama kebijakan IAM yang akan dibuat.
aws iam create-policy --policy-name
GreengrassV2TokenExchangeRoleAccess
--policy-document file://device-role-access-policy.jsonRespons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "Policy": { "PolicyName": "GreengrassV2TokenExchangeRoleAccess", "PolicyId": "ANPAZ2YMUHYHACI7C5Z66", "Arn": "arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2021-02-06T00:37:17+00:00", "UpdateDate": "2021-02-06T00:37:17+00:00" } }
-
-
Lampirkan kebijakan IAM untuk peran pertukaran token.
-
Ganti
GreengrassV2TokenExchangeRole
dengan nama IAM role. -
Ganti ARN peran dengan ARN dari kebijakan IAM yang Anda buat di langkah sebelumnya.
aws iam attach-role-policy --role-name
GreengrassV2TokenExchangeRole
--policy-arnarn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess
Perintah tersebut tidak memiliki output apa pun jika permintaan berhasil.
-
-
-
Buat aliasAWS IoT peran yang menunjuk ke peran pertukaran token.
-
Ganti
GreengrassCoreTokenExchangeRoleAlias
dengan nama alias peran yang akan dibuat. -
Ganti ARN peran dengan ARN dari IAM role yang Anda buat di langkah sebelumnya.
aws iot create-role-alias --role-alias
GreengrassCoreTokenExchangeRoleAlias
--role-arnarn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole
Respons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "roleAlias": "GreengrassCoreTokenExchangeRoleAlias", "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" }
catatan
Untuk membuat alias peran, Anda harus memiliki izin untuk melewati IAM role pertukaran token ke AWS IoT. Jika Anda menerima pesan kesalahan saat Anda mencoba membuat alias peran, periksa bahwaAWS pengguna memiliki izin ini. Untuk informasi lebih lanjut, lihat Memberikan izin pengguna untuk meneruskan peran ke layanan AWS di Panduan Pengguna AWS Identity and Access Management.
-
-
Buat dan lampirkan kebijakan AWS IoT yang memungkinkan perangkat inti Greengrass Anda untuk menggunakan alias peran untuk meneruskan peran pertukaran token. Jika Anda telah menyiapkan perangkat inti Greengrass sebelumnya, Anda dapat melampirkan kebijakan AWS IoT pada alias perannya alih-alih menciptakan kebijakan baru. Lakukan hal berikut:
-
(Opsional) Buat file yang berisi dokumen kebijakan AWS IoT yang diperlukan oleh alias peran tersebut.
Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano greengrass-v2-iot-role-alias-policy.json
Salin JSON berikut ke dalam file.
-
Ganti ARN sumber daya dengan ARN alias peran Anda.
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "
arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias
" } ] } -
-
BuatAWS IoT kebijakan dari dokumen kebijakan.
-
Ganti
GreengrassCoreTokenExchangeRoleAliasPolicy
dengan namaAWS IoT kebijakan yang akan dibuat.
aws iot create-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--policy-document file://greengrass-v2-iot-role-alias-policy.jsonRespons tersebut serupa dengan contoh berikut ini, jika permintaannya berhasil.
{ "policyName": "GreengrassCoreTokenExchangeRoleAliasPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassCoreTokenExchangeRoleAliasPolicy", "policyDocument": "{ \"Version\":\"2012-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Action\": \"iot:AssumeRoleWithCertificate\", \"Resource\": \"arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias\" } ] }", "policyVersionId": "1" }
-
-
Lampirkan kebijakan AWS IoT ke sertifikat objek AWS IoT.
-
Ganti
GreengrassCoreTokenExchangeRoleAliasPolicy
dengan namaAWS IoT kebijakan yang akan dibuat. -
Ganti ARN target dengan ARN sertifikat untuk objek AWS IoT Anda.
aws iot attach-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Perintah tersebut tidak memiliki output apa pun jika permintaan berhasil.
-
-
Unduh sertifikat ke perangkat
Sebelumnya, Anda telah mengunduh sertifikat perangkat ke komputer pengembangan. Di bagian ini, Anda akan menyalin sertifikat ke perangkat inti untuk mengatur perangkat dengan sertifikat yang digunakan untuk tersambung keAWS IoT. Anda juga akan mengunduh sertifikat otoritas sertifikat (CA) akar Amazon. Jika Anda menggunakan HSM, Anda juga mengimpor file sertifikat ke HSM di bagian ini.
-
Jika Anda membuat sertifikat dan kunci pribadi diAWS IoT layanan sebelumnya, ikuti langkah-langkah untuk mengunduh sertifikat dengan kunci pribadi dan file sertifikat.
-
Jika Anda membuat sertifikat hal dari kunci pribadi di modul keamanan perangkat keras (HSM) sebelumnya, ikuti langkah-langkah untuk mengunduh sertifikat dengan kunci pribadi dan sertifikat dalam HSM.
Untuk mengunduh sertifikat ke perangkat
-
SalinAWS IoT sertifikat objek dari komputer pengembangan Anda ke perangkat. Jika SSH dan SCP diaktifkan pada komputer pengembangan dan perangkat, Anda dapat menggunakan
scp
perintah di komputer pengembangan Anda untuk mentransfer sertifikat. Gantidevice-ip-address
dengan alamat IP perangkat Anda.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Buat folder akar Greengrass pada perangkat tersebut. Anda nanti akan menginstal perangkat lunakAWS IoT Greengrass inti pada folder ini.
-
(Hanya Linux) Atur izin dari induk dari folder akar Greengrass.
-
Ganti
/greengrass
dengan induk dari folder akar.
sudo chmod 755
/greengrass
-
-
Salin sertifikat objek AWS IoT ke folder akar Greengrass.
-
Unduh sertifikat otoritas sertifikat (CA) akar Amazon. AWS IoTsertifikat terkait dengan sertifikat CA akar Amazon secara default.
catatan
Fitur ini tersedia untuk v2.5.3 dan versi kemudian dari komponen inti Greengrass. AWS IoT GreengrassSaat ini tidak mendukung fitur ini pada perangkat inti Windows.
Untuk mengunduh sertifikat ke perangkat
-
SalinAWS IoT sertifikat objek dari komputer pengembangan Anda ke perangkat. Jika SSH dan SCP diaktifkan pada komputer pengembangan dan perangkat, Anda dapat menggunakan
scp
perintah di komputer pengembangan Anda untuk mentransfer sertifikat. Gantidevice-ip-address
dengan alamat IP perangkat Anda.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Buat folder akar Greengrass pada perangkat tersebut. Anda nanti akan menginstal perangkat lunakAWS IoT Greengrass inti pada folder ini.
-
(Hanya Linux) Atur izin dari induk dari folder akar Greengrass.
-
Ganti
/greengrass
dengan induk dari folder akar.
sudo chmod 755
/greengrass
-
-
Impor file sertifikat hal,
~/greengrass-v2-certs/device.pem.crt
, ke dalam HSM. Periksa dokumentasi untuk HSM Anda untuk mempelajari cara mengimpor sertifikat ke dalamnya. Impor sertifikat menggunakan token, ID slot, PIN pengguna, label objek, dan ID objek yang sama (jika HSM Anda menggunakannya) tempat Anda membuat kunci privat di HSM sebelumnya.catatan
Jika Anda membuat kunci pribadi sebelumnya tanpa ID objek, dan sertifikat memiliki ID objek, setel ID objek kunci pribadi ke nilai yang sama dengan sertifikat. Periksa dokumentasi untuk HSM Anda untuk mempelajari cara mengatur ID objek untuk objek kunci pribadi.
-
(Opsional) Hapus file sertifikat hal, sehingga hanya ada di HSM.
rm ~/greengrass-v2-certs/device.pem.crt
-
Unduh sertifikat otoritas sertifikat (CA) akar Amazon. AWS IoTsertifikat terkait dengan sertifikat CA akar Amazon secara default.
Siapkan Lingkungan perangkat
Ikuti langkah-langkah di bagian ini untuk mengatur perangkat Linux atau Windows yang akan digunakan sebagai perangkatAWS IoT Greengrass inti Anda.
Mengatur perangkat LinuxAWS IoT Greengrass V2
-
Pasang waktu aktif Java, yang diperlukan oleh perangkat lunak inti AWS IoT Greengrass agar berjalan. Kami menyarankan Anda menggunakan Amazon Corretto 11
atau OpenJDK 11 . Perintah berikut menunjukkan kepada Anda bagaimana 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
Saat 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)
-
-
(Opsional) Buat pengguna sistem default dan grup yang menjalankan komponen pada perangkat. Anda juga dapat memilih untuk membiarkan penginstal perangkat lunakAWS IoT Greengrass inti membuat pengguna dan grup ini selama instalasi dengan argumen
--component-default-user
penginstal. Untuk informasi selengkapnya, lihat Argumen penginstal.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Verifikasi bahwa pengguna yang menjalankan perangkat lunakAWS IoT Greengrass inti (biasanya
root
) memiliki izin untuk menjalankansudo
dengan pengguna dan grup apa pun.-
Jalankan perintah berikut untuk membuka
/etc/sudoers
file.sudo visudo
-
Verifikasi bahwa izin untuk pengguna terlihat seperti contoh berikut.
root ALL=(ALL:ALL) ALL
-
-
(Opsional) Untuk menjalankan fungsi Lambda dalam kontainer, Anda harus mengaktifkan cgroup
v1, dan Anda harus mengaktifkan dan me-mount cgroup memori dan perangkat. Jika Anda tidak berencana untuk menjalankan fungsi Lambda yang terkemas, 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 mengatur parameter kernel untuk perangkat Anda, lihat dokumentasi untuk sistem operasi dan boot loader Anda. Ikuti petunjuk untuk mengatur parameter kernel secara permanen.
-
Instal semua dependensi lain yang diperlukan pada perangkat Anda seperti yang ditunjukkan oleh daftar persyaratan diPersyaratan perangkat.
catatan
Fitur ini tersedia untuk v2.5.0 dan versi kemudian dari komponen inti Greengrass.
Mengatur perangkat WindowsAWS IoT Greengrass V2
-
Pasang waktu aktif Java, yang diperlukan oleh perangkat lunak inti AWS IoT Greengrass agar berjalan. Kami menyarankan Anda menggunakan Amazon Corretto 11
atau OpenJDK 11 . -
Periksa apakah Java tersedia pada variabel sistem PATH
, dan menambahkannya jika tidak. LocalSystemAkun menjalankan perangkat lunakAWS IoT Greengrass Core, jadi Anda harus menambahkan Java ke variabel sistem PATH, bukan variabel pengguna PATH untuk pengguna Anda. Lakukan hal berikut: -
Tekan tombol Windows untuk membuka menu mulai.
-
Ketik
environment variables
untuk mencari opsi sistem dari menu mulai. -
Di hasil pencarian menu mulai, pilih Edit variabel lingkungan sistem untuk membuka jendela Properti sistem.
-
Pilih Variabel lingkungan... untuk membuka jendela Variabel Lingkungan.
-
Di bawah Variabel sistem, pilih Jalur, lalu pilih Edit. Di jendela variabel lingkungan Edit, Anda dapat melihat setiap jalur pada baris terpisah.
-
Periksa apakah path ke
bin
folder instalasi Java hadir. Path akan terlihat serupa dengan contoh berikut.C:\Program Files\Amazon Corretto\jdk11.0.13_8\bin
-
Jika
bin
folder instalasi Java hilang dari Path, pilih New untuk menambahkannya, dan kemudian pilih OK.
-
-
Buka Windows Command Prompt (
cmd.exe
) sebagai administrator. -
Buat pengguna default diLocalSystem akun pada perangkat Windows. Ganti
kata sandi
dengan kata sandi yang aman.net user /add ggc_user
password
Tip
Tergantung pada konfigurasi Windows Anda, kata sandi pengguna mungkin diatur untuk kedaluwarsa pada tanggal di masa future. 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
-
-
Unduh dan instal PsExecutilitas
dari Microsoft pada perangkat. -
GunakanPsExec utilitas untuk menyimpan nama pengguna dan kata sandi untuk pengguna default di instance Credential Manager untukLocalSystem 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 menggunakanPsExec utilitas untuk menyimpan informasi pengguna default diLocalSystem akun. Menggunakan aplikasi Credential Manager menyimpan informasi ini di akun Windows pengguna yang saat ini masuk, bukanLocalSystem akun.
Unduh perangkat lunak inti AWS IoT Greengrass
Anda dapat mengunduh versi terbaru perangkat lunak inti AWS IoT Greengrass dari lokasi berikut:
catatan
Anda dapat mengunduh versi tertentu perangkat lunak inti AWS IoT Greengrass dari lokasi berikut. Ganti versi
dengan versi yang akan diunduh.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Untuk mengunduh perangkat lunakAWS IoT Greengrass Inti
-
Di perangkat inti Anda, unduh perangkat lunakAWS IoT Greengrass inti ke file bernama
greengrass-nucleus-latest.zip
.Dengan mengunduh perangkat lunak ini, Anda menyetujui Perjanjian Lisensi Perangkat Lunak Greengrass Core
. -
Unzip perangkat lunak inti AWS IoT Greengrass ke folder di perangkat Anda. Ganti
GreengrassInstaller
dengan folder yang ingin Anda gunakan. -
(Opsional) Jalankan perintah berikut untuk melihat versi perangkat lunak inti AWS IoT Greengrass.
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 lunakAWS IoT Greengrass Core. Perangkat lunak inti AWS IoT Greengrass menggunakan file di folder ini yang akan dijalankan.
Jika Anda mengunduh versi terbaru dari perangkat lunak, Anda menginstal v2.4.0 atau yang lebih baru, dan Anda dapat menghapus folder ini setelah menginstal perangkat lunakAWS IoT Greengrass inti.
(Opsional) Untuk memverifikasi tanda tangan perangkat lunak inti Greengrass
catatan
Fitur ini tersedia dengan Greengrass nucleus versi 2.9.5 dan yang lebih baru.
-
Gunakan perintah berikut untuk memverifikasi tanda tangan Greengrass nucleus artefak Anda:
-
jarsigner
Pemanggilan menghasilkan output yang menunjukkan hasil verifikasi.-
Jika file zip inti Greengrass ditandatangani, output berisi pernyataan berikut:
jar verified.
-
Jika file zip inti Greengrass tidak ditandatangani, output berisi pernyataan berikut:
jar is unsigned.
-
-
Jika Anda memberikan
-certs
opsi Jarsigner bersama dengan-verify
dan-verbose
opsi, output juga menyertakan informasi sertifikat penandatangan terperinci.
Instal perangkat lunak inti AWS IoT Greengrass
Jalankan penginstal dengan argumen yang menentukan tindakan berikut:
-
Instal dari file konfigurasi parsial yang menentukan untuk menggunakan sumber daya AWS dan sertifikat yang Anda buat sebelumnya. Perangkat lunak inti AWS IoT Greengrass menggunakan file konfigurasi yang menentukan konfigurasi setiap komponen Greengrass pada perangkat. Installer membuat file konfigurasi lengkap dari file konfigurasi parsial yang Anda berikan.
-
Tentukan untuk menggunakan pengguna
ggc_user
sistem untuk menjalankan komponen perangkat lunak pada perangkat inti. Pada perangkat Linux, perintah ini juga menentukan untuk menggunakan grupggc_group
sistem, dan installer membuat pengguna sistem dan grup untuk Anda. -
Siapkan perangkat lunakAWS IoT Greengrass inti sebagai layanan sistem yang berjalan saat boot. Pada perangkat Linux, ini membutuhkan sistem init Systemd
. penting
Di perangkat inti Windows, Anda harus mengatur perangkat lunakAWS 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 pada perangkat dengan memori terbatas, Anda dapat mengontrol jumlah memori yang digunakan oleh perangkat lunak inti AWS IoT Greengrass. 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.
-
Jika Anda membuat sertifikat dan kunci pribadi dalamAWS IoT layanan sebelumnya, ikuti langkah-langkah untuk menginstal perangkat lunakAWS IoT Greengrass Inti dengan kunci pribadi dan file sertifikat.
-
Jika Anda membuat sertifikat hal dari kunci pribadi di modul keamanan perangkat keras (HSM) sebelumnya, ikuti langkah-langkah untuk menginstal perangkat lunakAWS IoT Greengrass Core dengan kunci pribadi dan sertifikat dalam HSM.
Untuk menginstal AWS IoT Greengrass perangkat lunak Core
-
Periksa versi perangkat lunak inti AWS IoT Greengrass.
-
Ganti
GreengrassInstaller
dengan jalur menuju folder yang berisi perangkat lunak.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Gunakan editor teks untuk membuat file konfigurasi bernama
config.yaml
yang akan disediakan ke penginstal.Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano
GreengrassInstaller
/config.yamlSalin konten YAML berikut ke dalam file. File konfigurasi parsial ini menentukan parameter sistem dan parameter inti Greengrass.
--- system: certificateFilePath: "
/greengrass/v2
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.10.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
"Kemudian, lakukan hal berikut:
-
Ganti setiap instans
/greengrass/v2
dengan folder akar Greengrass. -
Ganti
MyGreengrassCore
dengan namaAWS IoT objek. -
Ganti
2.10.0
dengan versi perangkat lunakAWS IoT Greengrass inti. -
Ganti
us-west-2
dengan Wilayah AWS tempat Anda menciptakan membuat sumber daya. -
Ganti
GreengrassCoreTokenExchangeRoleAlias
dengan nama alias peran pertukaran token. -
Ganti
iotDataEndpoint
dengan titik akhir data AWS IoT Anda. -
Ganti
iotCredEndpoint
dengan titik akhir kredensial AWS IoT Anda.
catatan
Dalam file konfigurasi ini, Anda dapat menyesuaikan opsi konfigurasi nukleus lain seperti port dan proksi jaringan yang akan digunakan, seperti yang ditunjukkan dalam contoh berikut. Untuk informasi selengkapnya, lihat konfigurasi nukleus Greengrass.
--- system: certificateFilePath: "
/greengrass/v2
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.10.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotCredEndpoint: "device-credentials-prefix
.credentials.iot.us-west-2
.amazonaws.com" iotDataEndpoint: "device-data-prefix
-ats.iot.us-west-2
.amazonaws.com" mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "https://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" -
-
Jalankan penginstal, dan tentukan
--init-config
untuk menyediakan file konfigurasi.-
Ganti
/greengrass/v2
atauC:\greengrass\v2
dengan folder akar Greengrass. -
Ganti setiap instans
GreengrassInstaller
dengan folder tempat Anda membongkar penginstal.
penting
Di perangkat inti Windows, Anda harus menentukan
--setup-system-service true
untuk mengatur perangkat lunakAWS IoT Greengrass inti sebagai layanan sistem.Jika Anda menentukan
--setup-system-service true
, penginstal akan mencetakSuccessfully 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. -
-
Verifikasi penginstalan dengan melihat file di folder akar.
Jika penginstalan berhasil, folder akar berisi beberapa folder, seperti
config
,packages
, danlogs
.
catatan
Fitur ini tersedia untuk v2.5.3 dan versi kemudian dari komponen inti Greengrass. AWS IoT GreengrassSaat ini tidak mendukung fitur ini pada perangkat inti Windows.
Untuk menginstal AWS IoT Greengrass perangkat lunak Core
-
Periksa versi perangkat lunak inti AWS IoT Greengrass.
-
Ganti
GreengrassInstaller
dengan jalur menuju folder yang berisi perangkat lunak.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Untuk mengaktifkan perangkat lunakAWS IoT Greengrass Core menggunakan kunci pribadi dan sertifikat di HSM, instal komponen penyedia PKCS #11 saat Anda menginstal perangkat lunakAWS IoT Greengrass Core. Komponen penyedia PKCS #11 adalah plugin yang dapat Anda konfigurasikan selama instalasi. Anda dapat mengunduh versi terbaru dari komponen penyedia PKCS #11 dari lokasi berikut:
Unduh plugin penyedia PKCS #11 ke file bernama
aws.greengrass.crypto.Pkcs11Provider.jar
. GantiGreengrassInstaller
dengan folder yang ingin Anda gunakan.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar >
GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jarDengan mengunduh perangkat lunak ini, Anda menyetujui Perjanjian Lisensi Perangkat Lunak Greengrass Core
. -
Gunakan editor teks untuk membuat file konfigurasi bernama
config.yaml
yang akan disediakan ke penginstal.Sebagai contoh, pada sistem berbasis Linux, Anda dapat menjalankan perintah berikut untuk menggunakan GNU nano untuk membuat file.
nano
GreengrassInstaller
/config.yamlSalin konten YAML berikut ke dalam file. File konfigurasi paral ini menentukan parameter sistem, parameter inti Greengrass, dan parameter penyedia PKCS #11.
--- system: certificateFilePath: "pkcs11:object=
iotdevicekey
;type=cert" privateKeyPath: "pkcs11:object=iotdevicekey
;type=private" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.10.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
" aws.greengrass.crypto.Pkcs11Provider: configuration: name: "softhsm_pkcs11
" library: "/usr/local/Cellar/softhsm/2.6.1/lib/softhsm/libsofthsm2.so
" slot:1
userPin: "1234
"Kemudian, lakukan hal berikut:
-
Ganti setiap instance
iotdevicekey
di URI PKCS #11 dengan label objek tempat Anda membuat kunci privat dan mengimpor sertifikat. -
Ganti setiap instans
/greengrass/v2
dengan folder akar Greengrass. -
Ganti
MyGreengrassCore
dengan namaAWS IoT objek. -
Ganti
2.10.0
dengan versi perangkat lunakAWS IoT Greengrass inti. -
Ganti
us-west-2
dengan Wilayah AWS tempat Anda menciptakan membuat sumber daya. -
Ganti
GreengrassCoreTokenExchangeRoleAlias
dengan nama alias peran pertukaran token. -
Ganti
iotDataEndpoint
dengan titik akhir data AWS IoT Anda. -
Ganti
iotCredEndpoint
dengan titik akhir kredensial AWS IoT Anda. -
Ganti parameter konfigurasi untuk
aws.greengrass.crypto.Pkcs11Provider
komponen dengan nilai untuk konfigurasi HSM pada perangkat inti.
catatan
Dalam file konfigurasi ini, Anda dapat menyesuaikan opsi konfigurasi nukleus lain seperti port dan proksi jaringan yang akan digunakan, seperti yang ditunjukkan dalam contoh berikut. Untuk informasi selengkapnya, lihat konfigurasi nukleus Greengrass.
--- system: certificateFilePath: "pkcs11:object=
iotdevicekey
;type=cert" privateKeyPath: "pkcs11:object=iotdevicekey
;type=private" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.10.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
" mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "https://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.crypto.Pkcs11Provider: configuration: name: "softhsm_pkcs11
" library: "/usr/local/Cellar/softhsm/2.6.1/lib/softhsm/libsofthsm2.so
" slot:1
userPin: "1234
" -
-
Jalankan penginstal, dan tentukan
--init-config
untuk menyediakan file konfigurasi.-
Ganti
/greengrass/v2
dengan folder akar Greengrass. -
Ganti setiap instans
GreengrassInstaller
dengan folder tempat Anda membongkar penginstal.
sudo -E java -Droot="
/greengrass/v2
" -Dlog.store=FILE \ -jar ./GreengrassInstaller
/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jar \ --init-config ./GreengrassInstaller
/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service truepenting
Di perangkat inti Windows, Anda harus menentukan
--setup-system-service true
untuk mengatur perangkat lunakAWS IoT Greengrass inti sebagai layanan sistem.Jika Anda menentukan
--setup-system-service true
, penginstal akan mencetakSuccessfully 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. -
-
Verifikasi penginstalan dengan melihat file di folder akar.
Jika penginstalan berhasil, folder akar berisi beberapa folder, seperti
config
,packages
, danlogs
.
Jika Anda telah menginstal perangkat lunak inti AWS IoT Greengrass sebagai layanan sistem, installer akan menjalankan perangkat lunak tersebut 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 lebih lanjut tentang cara mengonfigurasi dan menggunakan perangkat lunak dan AWS IoT Greengrass, lihat hal berikut: