jetson nanoにgreengrass v2をインストールしてみた
マニュアルに書いてあるのをやってみた。
前提条件
- jetson nanoにsshできる
- jetson nanoの容量は16GBだときついので、せめて32GBにする。私は64GBのSDカードで実行。
java jdkを入れる
Greengrassにはjavaランタイムが必要なので、入れる。jetson nano上で実行
sudo apt install default-jdk
jdkのバージョン確認
$ java -version openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.18.04) OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.18.04, mixed mode)
AWS Greengrass Coreをインストール
curlでGreengrass Coreのモジュールをダウンロードする。ダウンロードにはcurlを使うので、curlがインストールされていない場合は、sudo apt install curl
を実行する。
cd ~ curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
解凍する。
unzip greengrass-nucleus-latest.zip -d jetson_nano_ggc && rm greengrass-nucleus-latest.zip
認証情報
AWSのIAMユーザーに割り当てられたアクセスキーIDとシークレットアクセスキーをexportする
export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Greengrass Coreのインストール
マニュアルそのまま実行
sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./jetson_nano_ggc/lib/Greengrass.jar \ --aws-region ap-northeast-1 \ --thing-name jetson_nano_ggc \ --thing-group-name jetson_nano_ggc_group \ --tes-role-name GreengrassV2TokenExchangeRole \ --tes-role-alias-name GreengrassCoreTokenExchangeRoleAlias \ --component-default-user ggc_user:ggc_group \ --provision true \ --setup-system-service true \ --deploy-dev-tools true
コンソールで確認
AWS コンソール画面からgreengrassの画面にいき、greengrassのコアデバイスが登録されていることを確認
コマンドラインからthingsを確認
$aws greengrassv2 list-effective-deployments --core-device-thing-name jetson_nano_ggc
出力はこのようになる。
{ "effectiveDeployments": [ { "deploymentId": "165qdadhgsh6htsthsdfsdhfsfdsh4654hoge", "deploymentName": "Deployment for jetson_nano_ggc_group", "iotJobId": "kdajsfopijw-jpoieawj-feajo-fweao-lkpo78755", "iotJobArn": "arn:aws:iot:ap-northeast-1:000000000001:job/", "targetArn": "arn:aws:iot:ap-northeast-1:000000000001:thinggroup/jetson_nano_ggc_group", "coreDeviceExecutionStatus": "SUCCEEDED", "reason": "SUCCESSFUL", "creationTimestamp": 1623025275.335, "modifiedTimestamp": 1623025275.335 } ] }
これでインストールは完了。次にレシピなどつくる。