ボーっとしたい

ボーっとするためにメモします。

jetson nanoにgreengrass v2をインストールしてみた

マニュアルに書いてあるのをやってみた。

docs.aws.amazon.com

前提条件

  • 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のコアデバイスが登録されていることを確認
f:id:kohira_1980:20210607092656p:plainf:id:kohira_1980:20210607092734p:plain

コマンドラインから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
        }
    ]
}

これでインストールは完了。次にレシピなどつくる。