AWS IoT Greengrass のトラブルシューティング - AWS IoT Greengrass

のドキュメントを表示していますAWS IoT Greengrass Version 1。AWS IoT Greengrass Version 2の最新のメジャーバージョンです。AWS IoT Greengrass。の使用方法の詳細については、「」を参照してください。AWS IoT Greengrass V2の詳細については、AWS IoT Greengrass Version 2開発者ガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS IoT Greengrass のトラブルシューティング

このセクションでは、AWS IoT Greengrass の問題の解決に役立つトラブルシューティング情報と考えられる解決策を示しています。

の詳細については、AWS IoT Greengrassクォータ (制限) については、サービスクォータ()Amazon Web Services 全般のリファレンス

AWS IoT Greengrass Core に関する問題

そのファイルにAWS IoT Greengrassコアソフトウェアが起動しない場合は、以下の一般的なトラブルシューティング手順を試してください。

以下の症状とエラーを検索して、の問題のトラブルシューティングに役立つ情報を見つけます。AWS IoT Greengrassコア。

問題点

 

エラー: 設定ファイルには、Capath、CertPath、またはKeyPath がありません。Greengrass デーモンは、[pid = <pid>] 死んだ。

解決策: このエラーが表示されることがあります。crash.logがのときAWS IoT Greengrassコアソフトウェアが起動しない。このエラーが発生する場合、v1.6 以前を実行している可能性があります。次のいずれかを行ってください。

  • v1.7 以降にアップグレードします。常に最新バージョンの AWS IoT Greengrass Core ソフトウェアを実行することをお勧めします。ダウンロード情報については、「AWS IoT Greengrass Core ソフトウェア」を参照してください。

  • AWS IoT Greengrass Core ソフトウェアバージョンに正しい config.json 形式を使用します。詳細については、「AWS IoT Greengrass Core 設定ファイル」を参照してください。

    注記

    コアデバイスにインストールされている AWS IoT Greengrass Core ソフトウェアのバージョンを確認するには、ターミナルデバイスで次のコマンドを実行します。

    cd /greengrass-root/ggc/core/ sudo ./greengrassd --version

 

エラー: /<greengrass-root> /config/config.jsonの解析に失敗しました。

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。Greengrass 設定ファイルが有効な JSON 形式であることを確認します。

config.json (/greengrass-root/config から) を開き、JSON 形式を検証します。たとえば、カンマが正しく使用されていることを確認してください。

 

エラー: TLS 設定の生成中にエラーが発生しました: ErrUnknownURIScheme

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。Greengrass 設定ファイルの crypto セクションのプロパティが有効であることを確認します。エラーメッセージに詳細が説明されています。

config.json (/greengrass-root/config にある) を開き、crypto セクションを確認します。たとえば、証明書とキーのパスは正しい URI 形式を使用し、正しい場所を参照している必要があります。

 

エラー: ランタイムが起動できませんでした。Workers: container test timed out.

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。設定:postStartHealthCheckTimeoutのプロパティGreengrass 設定ファイル。このオプションのプロパティは、ヘルスチェックが開始してから終了するまで Greengrass デーモンが待機する時間 (ミリ秒単位) を設定します。デフォルト値は 30 秒 (30000 ミリ秒) です。

config.json (/greengrass-root/config から) を開きます。runtime オブジェクトで postStartHealthCheckTimeout プロパティを追加し、30,000 を超える値を設定します。有効な JSON ドキュメントを作成するために必要な場所にカンマを追加します。次に例を示します。

... "runtime" : { "cgroup" : { "useSystemd" : "yes" }, "postStartHealthCheckTimeout" : 40000 }, ...

 

エラー: ローカルクラウドウォッチ、logGroup で PutLogEvents を呼び出せませんでした: /GreengrassSystem/connection_manager, エラー: RequestError: 送信要求が失敗した理由: http: //<path>/クラウドウォッチ/ログ/: ダイヤルtcp <address>: getsockopt: 接続が拒否されました, 応答:{}.

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。このエラーが発生する場合、Raspberry Pi で AWS IoT Greengrass を実行していて、必要なメモリの設定が完了していない可能性があります。詳細については、このステップを参照してください。

 

エラー: 次のエラーが発生したため、サーバーを作成できません:chmod/<greengrass-root> /ggc/deployment/lambda/arn: aws: lambda: <region>:: 関数 <account-id>: <function-name> <version>/ <file-name>:そのようなファイルやディレクトリはありません。

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。デプロイした場合、Lambda 実行ファイルをコアに追加するには、関数のHandlerのプロパティgroup.jsonファイル (/Greengrass ルート/gc/デプロイメント/グループ)。ハンドラがコンパイルした実行可能ファイルの正確な名前でない場合、group.json ファイルのコンテンツを空の JSON オブジェクト ({}) に置き換え、以下のコマンドを実行して AWS IoT Greengrass を開始します。

cd /greengrass/ggc/core/ sudo ./greengrassd start

次に、AWS Lambda API を使用して関数設定の handler パラメータを更新し、新しい関数バージョンを発行してエイリアスを更新します。詳細については、「AWS Lambda 関数のバージョニングとエイリアス」を参照してください。

Greengrass グループにエイリアスで関数を追加したと想定すると (推奨)、これでグループを再デプロイできるようになります。(そうでない場合は、グループをデプロイする前に、グループ定義とサブスクリプションで新しい関数バージョンあるいはエイリアスを指定する必要があります。)

 

コンテナ化なしの実行から Greengrass コンテナでの実行に変更した後、AWS IoT Greengrass Core ソフトウェアが起動しない。

解決策: コンテナの依存関係が失われていないことを確認します。

 

エラー: スプールのサイズは 262144 バイト以上でなければなりません。

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。group.json ファイル (/greengrass-root/ggc/deployment/group にある) を開き、このファイルの内容を空の JSON オブジェクト ({}) に置き換え、以下のコマンドを実行して AWS IoT Greengrass を起動します。

cd /greengrass/ggc/core/ sudo ./greengrassd start

次に、「ローカルストレージでメッセージをキャッシュするには」のステップに従います。GGCloudSpooler 関数で、GG_CONFIG_MAX_SIZE_BYTES 値が 262144 以上に指定されていることを確認します。

 

エラー: [エラー]-クラウドメッセージングエラー: メッセージを発行しようとしてエラーが発生しました。 {"エラー文字列」:「操作がタイムアウトしました"}

解決策: このエラーが表示されることがあります。GGCloudSpooler.logGreengrass コアが MQTT メッセージを AWS IoT Core 。これは、コア環境の帯域幅が制限され、待ち時間が長くなる場合に発生します。あなたが実行している場合AWS IoT Greengrassv1.10.2 以降の場合は、mqttOperationTimeoutの値config.jsonファイルを開きます。このプロパティが存在しない場合は、coreThing オブジェクトに追加します。次に例を示します。

{ "coreThing": { "mqttOperationTimeout": 10, "caPath": "root-ca.pem", "certPath": "hash.cert.pem", "keyPath": "hash.private.key", ... }, ... }

デフォルト値は 5 で、最小値は 5 です。

 

次のエラーが発生する。container_linux.go: 344: コンテナプロセスの開始が「process_linux.go: 424: コンテナ初期化が\" rootfs_linux.go: 64: mount\\\\」/greengrass/gc/socket/greengrass/gc/packages/<version>/rootfs/mered\\\\」at\\\\」/greengrass_ipc.sock\\」due to\\\ "stat /greengrass/gc/socket/greengrass_ipc.sock: permission denied\\"\ "\"」.

解決策: このエラーが表示されることがあります。runtime.logがのときAWS IoT Greengrassコアソフトウェアが起動しない。このエラーは、umask0022 よりも高い場合に発生します。この問題を解決するには、umask0022 以下に設定する必要があります。値 0022 では、デフォルトで新しいファイルに対する読み取りアクセス許可がすべてのユーザーに付与されます。

 

エラー: Greengrass daemon with PID: <process-id>. Some system components failed to start. Check 'runtime.log' for errors.

解決策: このエラーが表示されることがあります。AWS IoT Greengrassコアソフトウェアが起動しない。特定のエラー情報については、runtime.logcrash.log を確認してください。詳細については、「ログでのトラブルシューティング」を参照してください。

 

デバイスのシャドウがクラウドと同期していない。

解決策: 次のことを確認してください。AWS IoT Greengrassには、iot:UpdateThingShadowおよびiot:GetThingShadowのアクションGreengrass サービスロール。サービスロールで AWSGreengrassResourceAccessRolePolicy 管理ポリシーを使用している場合は、これらのアクセス許可はデフォルトで含まれています。

「」を参照してくださいシャドウ同期タイムアウト問題のトラブルシューティング

 

次のエラーが発生する。unable to accept TCP connection. accept tcp [::]:8000: accept4: too many open files.

解決策: このエラーが表示されることがあります。greengrassdスクリプト出力。このエラーが発生する場合、AWS IoT Greengrass Core ソフトウェアのファイル記述子の制限がしきい値に達している可能性があります。その制限を引き上げる必要があります。

以下のコマンドを使用して AWS IoT Greengrass Core ソフトウェアを再起動します。

ulimit -n 2048
注記

この例では、制限を 2048 に引き上げています。ユースケースに適した値を選択してください。

 

エラー: ランタイム実行エラー:ラムダコンテナを開始できません。container_linux.go: 259: コンテナプロセスの開始が「process_linux.go: 345: コンテナの初期化が「rootfs_linux.go: 50: rootfs _linux.go: 50: rootfs を準備すると、\\"\ "\"」\ "」.

解決策: インストールのいずれかAWS IoT Greengrassをルートディレクトリの直下に配置するか、AWS IoT Greengrassコアソフトウェアがインストールされ、その親ディレクトリにはexecuteすべてのユーザーに対するアクセス許可。

 

注意: [警告]-[5] GKリモート: 公開鍵データの取得中にエラーが発生しました: ErrPrincipalNotConfigured uration: MqttCertificate 秘密キーが設定されていません。

解決策: AWS IoT Greengrass は一般的なハンドラを使用してすべてのセキュリティプリンシパルのプロパティを検証します。runtime.log でのこの警告は、ローカル MQTT サーバー用のカスタムプライベートキーを指定した場合を除き、予期されるものです。詳細については、「AWS IoT Greengrass Core セキュリティプリンシパル」を参照してください。

 

エラー: ロール arn: aws: iam: role/ <account-id> を使用して<role-name> s3 url https: //<region>-greengrass-updates.s3. <region>.amazonaws.com/core /<architecture>/greengrass-core-<distribution-version> .tar.gz.

解決策: このエラーが発生するのは、無線 (OTA) での更新に失敗した場合です。署名者ロールポリシーで、ターゲットの AWS リージョン としてResource。この署名者ロールは、AWS IoT Greengrass ソフトウェア更新の S3 URL の事前署名に使用されます。詳細については、「S3 URL の署名者ロール」を参照してください。

 

-AWS IoT Greengrassコアは、ネットワークプロキシLambda 関数で送信接続を行うことはできません。

解決策: 接続を行うために Lambda 関数で使用されるランタイムと実行可能ファイルによっては、接続タイムアウトのエラーが発生する場合があります。Lambda 関数が適切なプロキシ設定を使用して、ネットワークプロキシ経由で接続することを確認します。AWS IoT Greengrassは、プロキシ設定をユーザー定義の Lambda 関数に渡します。http_proxy,https_proxy, およびno_proxy環境変数。これらの変数には、以下の Python スニペットに示す方法でアクセスできます。

import os print(os.environ['http_proxy'])

大文字と小文字の区別を、ご使用環境で定義されている変数に合わせます。たとえば、すべて小文字 http_proxy またはすべて大文字 HTTP_PROXY にすることができます。これらの変数については、AWS IoT Greengrass では両方がサポートされます。

注記

接続を行うために使用されるほとんどの共通ライブラリ (boto3 や cURL など、および python requests パッケージ) は、デフォルトでこれらの環境変数を使用します。

 

このコアは、無限の接続 - 切断ループにあります。runtime.log ファイルには、継続的な一連の接続と切断のエントリが含まれています。

解決策: これは、AWS IoT への MQTT 接続用に別のデバイスがクライアント ID をコアのモノ名を使用するようにハードコードされている場合に発生します。同じで同時接続 AWS リージョン および AWS アカウント は、一意のクライアント ID を使用する必要があります。デフォルトでは、コアは上記の接続にコアのモノ名をクライアント ID として使用します。

この問題を解結するには、他のデバイスが接続用に使用するクライアント ID を変更するか、またはコアのデフォルトの値を上書きできます。

コアデバイスのデフォルトのクライアント ID を上書きするには

  1. 次のコマンドを実行して Greengrass デーモンを停止します。

    cd /greengrass-root/ggc/core/ sudo ./greengrassd stop
  2. greengrass-root/config/config.json を編集するために su ユーザーとして開きます。

  3. coreThing オブジェクトで coreClientId プロパティを追加し、この値をカスタムのクライアント ID に設定します。値は 1 ~ 128 文字で指定します。これは、現在の AWS リージョン 向けの AWS アカウント 。

    "coreClientId": "MyCustomClientId"
  4. デーモンを開始します。

    cd /greengrass-root/ggc/core/ sudo ./greengrassd start

 

次のエラーが発生する。unable to start lambda container. container_linux.go:259: starting container process caused "process_linux.go:345: container init caused \"rootfs_linux.go:62: mounting \\\"proc\\\" to rootfs \\\"

解決策: 一部のプラットフォームでは、このエラーはruntime.logのときAWS IoT Greengrassをマウントしようとする/procファイルシステムを使用して Lambda コンテナを作成します。または、operation not permittedEPERM などの同様のエラーが表示される場合があります。これらのエラーは、依存関係チェッカーのスクリプトパスによってプラットフォーム上でテストが実行された場合でも発生する可能性があります。

以下のいずれかの解決策を試してください。

  • Linux カーネルで CONFIG_DEVPTS_MULTIPLE_INSTANCES オプションを有効にします。

  • ホストの /proc マウントオプションを rw,relatim のみに設定します。

  • Linux カーネルを 4.9 以降にアップグレードします。

注記

この問題は、ローカルリソースアクセスの /proc マウントに関連していません。

 

[ERROR]-ランタイム実行エラー:ラムダコンテナを開始できません。 {"ErrororString」:「コンテナマウントの初期化に失敗しました:オーバーレイ上側のディレクトリにGreengrass ルートをマスクできませんでした:file exists dir にマスクデバイスの作成に失敗しました <ggc-path>: file exists"}

解決策: デプロイに失敗した場合に、runtime.log でこのエラーが表示されることがあります。このエラーが発生するのは、Lambda 関数でAWS IoT Greengrassグループは、アクセスできない/usrディレクトリーにコピーします。

この問題を解決するには、ローカルボリュームリソースをグループに追加し、グループをデプロイします。このリソースは次の条件を満たす必要があります。

  • /usr を [Source path (ソースパス)] および [Destination path (送信先パス)] として指定します。

  • リソースを所有する Linux グループの OS グループアクセス許可を自動的に追加する

  • Lambda 関数と関連付けて、読み取り専用アクセスを許可します。

 

[エラー]-展開に失敗しました。 {"deploymentId」: "<deployment-id>「,「エラー文字列」:「pid のコンテナテストプロセス <pid> 失敗:コンテナプロセスの状態:終了ステータス 1"}

解決策: デプロイに失敗した場合に、runtime.log でこのエラーが表示されることがあります。このエラーが発生するのは、Lambda 関数でAWS IoT Greengrassグループは、アクセスできない/usrディレクトリーにコピーします。

これが当てはまることを確認するには、GGCanary.log追加のエラーのために。Lambda 関数が/usrディレクトリ、GGCanary.logには、次のエラーが含まれます。

[ERROR]-standard_init_linux.go:207: exec user process caused "no such file or directory"

この問題を解決するには、ローカルボリュームリソースをグループに追加し、グループをデプロイします。このリソースは次の条件を満たす必要があります。

  • /usr を [Source path (ソースパス)] および [Destination path (送信先パス)] として指定します。

  • リソースを所有する Linux グループの OS グループアクセス許可を自動的に追加する

  • Lambda 関数と関連付けて、読み取り専用アクセスを許可します。

 

解決策: このエラーが表示されることがあります。runtime.logファイルがAWS IoT Greengrassコアソフトウェアは起動しません。この問題は、Debian オペレーティングシステムで生じやすい問題です。

この問題を解決するには、以下の手順を実行します。

  1. のアップグレードAWS IoT GreengrassCore ソフトウェア v1.9.3 以降。これにより、この問題を解決できます。

  2. アップグレード後もこのエラーが発生する場合は、AWS IoT Greengrassコアソフトウェアを使用するには、system.useOverlayWithTmpfsプロパティtrue()config.jsonファイルを開きます。

    例 Example

    { "system": { "useOverlayWithTmpfs": true }, "coreThing": { "caPath": "root-ca.pem", "certPath": "cloud.pem.crt", "keyPath": "cloud.pem.key", ... }, ... }
注記

AWS IoT Greengrass コアソフトウェアバージョンがエラーメッセージに表示されます。Linux カーネルのバージョンを確認するには、uname -r を実行します。

 

エラー: [DEBUG]-ルートを取得できませんでした。メッセージを破棄します。

解決策: グループのサブスクリプションを確認し、[[DEBUG]メッセージが存在します。

 

エラー: [Errno 24] 開いているが多すぎます <lambda-function>, [Errno 24] 開いているファイルが多すぎます

解決策: 関数がインスタンス化する場合、Lambda 関数ログにこのエラーが表示されることがあります。StreamManagerClient関数ハンドラーで。ハンドラの外部にクライアントを作成することをお勧めします。詳細については、「ストリームを操作するために StreamManagerClient を使用する」を参照してください。

 

デプロイに関する問題

以下の情報は、デプロイの問題のトラブルシューティングに役立ちます。

問題点

 

現在のデプロイは機能せず、以前の正常なデプロイに戻す必要があります。

解決策: の使用AWS IoTコンソールまたはAWS IoT GreengrassAPI を使用して、以前の作業デプロイを再デプロイします。これにより、対応するグループバージョンが Core デバイスにデプロイされます。

デプロイを再デプロイするには (コンソール)

  1. グループの設定ページで、[デプロイ] を選択します。このページには、日付と時刻、グループバージョン、各デプロイ試行のステータスなど、グループのデプロイ履歴が表示されます。

  2. 再デプロイするデプロイが含まれている行を見つけます。左ステータス列で、省略記号 (...) を選択してから、[再デプロイ

    デプロイの [再デプロイ] アクションを示す [デプロイ] ページ。

デプロイを再デプロイするには (CLI)

  1. [ListDeployments] を使用して、再デプロイするデプロイの ID を見つけます。次に例を示します。

    aws greengrass list-deployments --group-id 74d0b623-c2f2-4cad-9acc-ef92f61fcaf7

    このコマンドは、グループのデプロイのリストを返します。

    { "Deployments": [ { "DeploymentId": "8d179428-f617-4a77-8a0c-3d61fb8446a6", "DeploymentType": "NewDeployment", "GroupArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/8dd1d899-4ac9-4f5d-afe4-22de086efc62", "CreatedAt": "2019-07-01T20:56:49.641Z" }, { "DeploymentId": "f8e4c455-8ac4-453a-8252-512dc3e9c596", "DeploymentType": "NewDeployment", "GroupArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/4ad66e5d-3808-446b-940a-b1a788898382", "CreatedAt": "2019-07-01T20:41:47.048Z" }, { "DeploymentId": "e4aca044-bbd8-41b4-b697-930ca7c40f3e", "DeploymentType": "NewDeployment", "GroupArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/1f3870b6-850e-4c97-8018-c872e17b235b", "CreatedAt": "2019-06-18T15:16:02.965Z" } ] }
    注記

    これらの AWS CLI コマンドでは、グループとデプロイ ID の値の例を使用します。コマンドを実行するときは、サンプル値を置き換えてください。

  2. CreateDeployment を使用して、ターゲットデプロイを再デプロイします。デプロイタイプを Redeployment に設定します。次に例を示します。

    aws greengrass create-deployment --deployment-type Redeployment \ --group-id 74d0b623-c2f2-4cad-9acc-ef92f61fcaf7 \ --deployment-id f8e4c455-8ac4-453a-8252-512dc3e9c596

    コマンドは、新しいデプロイの ARN と ID を返します。

    { "DeploymentId": "f9ed02b7-c28e-4df6-83b1-e9553ddd0fc2", "DeploymentArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/deployments/f9ed02b7-c28e-4df6-83b1-e9553ddd0fc2" }
  3. GetDeploymentStatus を使用して、デプロイのステータスを取得します。

 

デプロイに関する 403 Forbidden エラーがログに表示される。

解決策: ポリシーを確認してください。AWS IoT Greengrassクラウドのコアには、"greengrass:*"を許可するアクションとして指定します。

 

create-deployment コマンドを初めて実行すると、ConcurrentDeployment エラーが発生する。

解決策: デプロイが進行中である可能性があります。get-deployment-status を実行して、デプロイが作成されたかどうかを確認できます。作成済みでない場合は、デプロイを作成し直します。

 

エラー: Greengrass is not authorized with this account, or the error: 失敗: TES サービスロールはこのアカウントに関連付けられていません。

解決策: デプロイに失敗した場合に、このエラーが表示されることがあります。Greengrass サービスロールが AWS アカウント 現在ので AWS リージョン 。詳細については、「Greengrass サービスロールの管理 (CLI)」または「Greengrass サービスロールの管理 (コンソール)」を参照してください。

 

エラー: デプロイのダウンロードステップを実行できません。ダウンロード中のエラー: グループ定義ファイルのダウンロード中のエラー: ... x509: 証明書の有効期限が切れているか、まだ有効ではありません

解決策: このエラーが表示されることがあります。runtime.logデプロイに失敗した場合に。x509: certificate has expired or is not yet valid というメッセージが含まれた Deployment failed エラーが表示された場合は、デバイスのクロックを確認してください。TLS 証明書と X.509 証明書は、IoT システムを構築するための安全な基盤を提供しますが、サーバーとクライアントでの正確な時間を必要とします。IoT デバイスは、サーバー証明書を使用する AWS IoT Greengrass や他の TLS サービスへの接続を試行する前に、正しい時間 (15 分以内) を必要とします。詳細については、「」を参照してください。デバイス時間を使用した検証AWS IoTサーバー証明書でのIoTAWS公式ブログ

 

エラー: 署名の検証中にエラーが発生しました。リポジトリは更新されず、以前のインデックスファイルが使用されます。GPG エラー:https://dnw9lb6lzp2d8.cloudfront.net 安定版 inRelease: パブリックキーが使用できないため、次の署名を検証できませんでした: PUBKEY 68D644ABDEXAMPLE

解決策: このエラーは、信頼されたキーが APT リポジトリパッケージの認証に使用された場合に表示されます。AWS IoT Greengrassが存在しないか、有効期限が切れているか、無効です。この問題を解決するには、キーリングパッケージをインストールします。

wget -O aws-iot-greengrass-keyring.deb https://d1onfpft10uf5o.cloudfront.net/greengrass-apt/downloads/aws-iot-greengrass-keyring.deb sudo dpkg -i aws-iot-greengrass-keyring.deb

詳細については、「apt を使用してをインストールするAWS IoT GreengrassCore ソフトウェア」を参照してください。

 

デプロイが完了しない。

解決策: 次の作業を行います。

  • コアデバイスで AWS IoT Greengrass デーモンが実行されていることを確認します。コアデバイスのターミナルで、以下のコマンドを実行し、デーモンが実行されているかどうかを確認します。必要な場合はデーモンを起動します。

    1. デーモンが実行中であるかどうかを確認するには

      ps aux | grep -E 'greengrass.*daemon'

      出力に root/greengrass/ggc/packages/1.11.3/bin/daemon エントリが含まれる場合、デーモンは実行されています。

      パスのバージョンは、コアデバイスにインストールされている AWS IoT Greengrass Core ソフトウェアのバージョンによって異なります。

    2. デーモンを開始するには:

      cd /greengrass/ggc/core/ sudo ./greengrassd start
  • Core デバイスが接続され Core 接続エンドポイントが適切に設定されていることを確認します。

 

エラー: Java または Java 8 の実行可能ファイルが見つかりません。または、エラー: NewDeploy<deployment-id> ment of type NewDeployment for group <group-id> <worker-id> failed error: worker with failed to initialize with reason Inst

解決策: ストリームマネージャーがAWS IoT Greengrassコアを使用する場合、グループをデプロイする前に、コアデバイスに Java 8 ランタイムをインストールする必要があります。詳細については、ストリームマネージャーの要件を参照してください。ストリームマネージャーは、デフォルトで有効になっています。デフォルトのグループ作成ワークフローでAWS IoTコンソールを使用してグループを作成します。

または、ストリームマネージャーを無効にしてから、グループをデプロイします。詳細については、「ストリームマネージャーの設定 (コンソール)」を参照してください。

 

デプロイが完了せず、runtime.log に複数の「wait 1s for container to stop」エントリが含まれる。

解決策: コアデバイスのターミナルで以下のコマンドを実行して、AWS IoT Greengrass デーモンを再起動します。

cd /greengrass/ggc/core/ sudo ./greengrassd stop sudo ./greengrassd start

 

デプロイが完了せず、runtime.log「[ERROR]-Greengrass デプロイのエラー:クラウドにデプロイのステータスを報告できませんでした {" deploymentId」: "<deployment-id>「,「ErrororString」: 「PUT、エンドポイント:https://<deployment-status>、エラー: https://<deployment-status>: プロキシ接続 tcp: x509: 不明な認証局によって署名された証明書 "}」

解決策: このエラーが表示されることがあります。runtime.logGreengrass コアが HTTPS プロキシ接続を使用するように設定されていて、プロキシサーバーの証明書チェーンがシステムで信頼されていない場合に表示されます。この問題を解決するには、ルート CA 証明書に証明書チェーンを追加します。Greengrass コアは、AWS IoT Greengrass との HTTPS および MQTT 接続で TLS 認証に使用される証明書プールに、このファイルの証明書を追加します。

次の例は、ルート CA 証明書ファイルに追加されたプロキシサーバー CA 証明書を示しています。

# My proxy CA -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIQWgIVAMHSAzWG/5YVRYtRQOxXUTEpHuEmApzGCSqGSIb3DQEK \nCwUAhuL9MQswCQwJVUzEPMAVUzEYMBYGA1UECgwP1hem9uLmNvbSBJbmMuMRww ... content of proxy CA certificate ... +vHIRlt0e5JAm5\noTIZGoFbK82A0/nO7f/t5PSIDAim9V3Gc3pSXxCCAQoFYnui GaPUlGk1gCE84a0X\n7Rp/lND/PuMZ/s8YjlkY2NmYmNjMCAXDTE5MTEyN2cM216 gJMIADggEPADf2/m45hzEXAMPLE= -----END CERTIFICATE----- # Amazon Root CA 1 -----BEGIN CERTIFICATE----- MIIDQTCCAimgF6AwIBAgITBmyfz/5mjAo54vB4ikPmljZKyjANJmApzyMZFo6qBg ADA5MQswCQYDVQQGEwJVUzEPMA0tMVT8QtPHRh8jrdkGA1UEChMGDV3QQDExBBKW ... content of root CA certificate ... o/ufQJQWUCyziar1hem9uMRkwFwYVPSHCb2XV4cdFyQzR1KldZwgJcIQ6XUDgHaa 5MsI+yMRQ+hDaXJiobldXgjUka642M4UwtBV8oK2xJNDd2ZhwLnoQdeXeGADKkpy rqXRfKoQnoZsG4q5WTP46EXAMPLE -----END CERTIFICATE-----

デフォルトでは、ルート CA 証明書ファイルは /greengrass-root/certs/root.ca.pem にあります。コアデバイス上の場所を見つけるには、crypto.caPathのプロパティconfig.json

注記

greengrass-root は、デバイスで AWS IoT Greengrass Core ソフトウェアがインストールされているパスを表します。通常、これは /greengrass ディレクトリです。

 

エラー: <deployment-id>新しいタイプの展開グループの展開<group-id> が失敗しました: 処理中にエラーが発生しました。Group config is invalid: 112 or [119 0] don't rw permission to file: <path>。

解決策: の所有者グループを確認します。<path>ディレクトリには、そのディレクトリに対する読み書きアクセス権限があります。

 

エラー:<list-of-function-arns> はルートとして実行するように設定されていますが、Greengrass はルートアクセス権限で Lambda 関数を実行するように設定されていません。

解決策: このエラーが表示されることがあります。runtime.logデプロイに失敗した場合に。設定されていることを確認します。AWS IoT Greengrassを使用して Lambda 関数を root アクセス許可で実行できるようにします。値を変更するにはallowFunctionsToRunAsRootgreengrass_root/config/config.jsonyesLambda 関数を別のユーザー/グループとして実行するように Lambda 関数を変更します。詳細については、「Lambda 関数をルートとして実行する」を参照してください。

 

エラー: <deployment-id>新しいタイプの展開グループの展開<group-id> が失敗しました: Greengrass デプロイのエラー:デプロイでダウンロードステップを実行できません。処理中のエラー:ダウンロードされたグループファイルをロードできません:ユーザー名に基づくUIDが見つかりませんでした、userName: ggc_user: ユーザー:ggc_user: ユーザー:不明なユーザー ggc_user.

解決策: そのファイルにデフォルトのアクセス識別子のAWS IoT Greengrassグループが標準のシステムアカウントを使用する場合、ggc_userユーザーとユーザーggc_groupグループがデバイスに存在する必要があります。ユーザーとグループを追加する方法については、このステップを参照してください。表示されているとおりに正確に名前を入力してください。

 

エラー: [ERROR]-ランタイム実行エラー:ラムダコンテナを開始できません。 {"ErrororString」:「コンテナマウントの初期化に失敗しました:オーバーレイ上側のディレクトリにGreengrass ルートをマスクできませんでした:file exists dir にマスクデバイスの作成に失敗しました <ggc-path>: file exists"}

解決策: このエラーが表示されることがあります。runtime.logデプロイに失敗した場合に。このエラーが発生するのは、Greengrass グループの Lambda 関数が/usrディレクトリーにコピーします。この問題を解決するには、ローカルボリュームリソースをグループに追加し、グループをデプロイします。リソースは次の条件を満たす必要があります。

  • /usr を [Source path (ソースパス)] および [Destination path (送信先パス)] として指定します。

  • リソースを所有する Linux グループの OS グループアクセス許可を自動的に追加する

  • Lambda 関数と関連付けて、読み取り専用アクセスを許可します。

 

エラー: Deployment <deployment-id> of type NewDeployment for group failed <group-id> error: プロセスの開始に失敗しました:container_linux.go: 259: コンテナプロセスの開始が「process_linux.go: 250: init の exec setns プロセスの実行が「wait: 子プロセスなし」を引き起こしました。

解決策: デプロイに失敗した場合に、このエラーが表示されることがあります。デプロイを再試行します。

 

エラー: [警告]-MQTT [クライアント] ダイヤル tcp: ルックアップ <host-prefix>-ats.iot. <region>.amazonaws.com:そのようなホストはありません... [ERROR]-Greengrass デプロイのエラー:クラウドへのデプロイの報告に失敗しました... net/http: 接続を待っている間にリクエストがキャンセルされました (ヘッダーを待っている間にClient.Timeoutが超過しました)

解決策: このエラーが表示されることがあります。systemd-resolvedが有効になります。これにより、DNSSECデフォルトでに設定されます。その結果、多くのパブリックドメインは認識されません。AWS IoT Greengrass エンドポイントに到達しようとするとホストが見つからないため、デプロイは In Progress 状態のままです。

この問題をテストするには、次のコマンドと出力を使用できます。を置き換えるリージョンプレースホルダーを、エンドポイントの AWS リージョン 。

$ ping greengrass-ats.iot.region.amazonaws.com ping: greengrass-ats.iot.region.amazonaws.com: Name or service not known
$ systemd-resolve greengrass-ats.iot.region.amazonaws.com greengrass-ats.iot.region.amazonaws.com: resolve call failed: DNSSEC validation failed: failed-auxiliary

考えられる解決策の 1 つは、DNSSEC を無効にすることです。DNSSECfalse の場合、DNS ルックアップは DNSSEC で検証されません。詳細については、この「」を参照してください。既知の問題forsystemd

  1. DNSSEC=false/etc/systemd/resolved.conf に追加します。

  2. 再起動 systemd-resolved.

resolved.conf および DNSSEC の詳細については、ターミナルで man resolved.conf を実行します。

 

グループの作成と関数の作成に関する問題

以下の情報は、作成に関する問題のトラブルシューティングに役立ちます。AWS IoT GreengrassグループまたはGreengrass Lambda 関数です。

 

エラー: このグループの 'IsolationMode' 設定が無効です。

解決策: このエラーは、function-definition-versionDefaultConfigIsolationMode 値がサポートされていない場合に表示されます。サポートされている値は、GreengrassContainer および NoContainer です。

 

エラー: arn での関数の 'IsolationMode' configuration <function-arn> is invalid.

解決策: このエラーは、IsolationMode<function-arn>の値をfunction-definition-versionはサポートされていません。サポートされている値は、GreengrassContainer および NoContainer です。

 

エラー: <function-arn>IsolationMode=NoContainer では、arn 関数に対するMemorySize の設定は許可されていません。

解決策: このエラーは、指定した場合に発生します。MemorySize値を格納し、コンテナー化せずに実行することを選択します。コンテナ化を使用しないで Lambda 関数には、メモリ制限は使用できません。制限を削除するか、Lambda 関数を変更して、AWS IoT Greengrassコンテナ。

 

エラー: <function-arn>IsolationMode=NoContainer では、arn 関数に対する sysfs 設定にアクセスすることはできません。

解決策: このエラーは、trueforAccessSysfsコンテナ化せずに実行することを選択しました。コンテナ化を使用しないで実行する Lambda 関数では、コードを更新してファイルシステムに直接アクセスする必要があります。また、AccessSysfs。値を指定することもできます。falseforAccessSysfsで実行するように Lambda 関数を変更できます。AWS IoT Greengrassコンテナ。

 

エラー: MemorySize GreengrassContainer, <function-arn> IsolationMode=GreengrassContainer.

解決策: このエラーは、指定しなかったために発生します。MemorySizeで実行している Lambda 関数の制限をAWS IoT Greengrassコンテナ。エラーを解決するには MemorySize の値を指定します。

 

エラー: Function <function-arn> <resource-type> is not allowed in IsolationMode=NoContainer.

解決策: アクセスできませんLocal.Device,Local.Volume,ML_Model.SageMaker.Job,ML_Model.S3_Object, またはS3_Object.Generic_Archiveリソースタイプは、コンテナ化を使用しないで Lambda 関数を実行する場合に表示されます。これらのリソースタイプが必要な場合は、AWS IoT Greengrass コンテナで実行する必要があります。コンテナ化を使用しないで実行する場合は、Lambda 関数のコードを変更して、ローカルデバイスに直接アクセスすることもできます。

 

エラー: arn を使用した関数の実行設定<function-arn> は使用できません。

解決策: このエラーが発生するのは、システム Lambda 関数を作成する場合です。GGIPDetectorまたはGGCloudSpoolerを指定し、IsolationModeまたはRunAsの設定 省略する必要があります、Executionこのシステム Lambda 関数のパラメータを作成します。

 

検出の問題

AWS IoT Greengrass Discovery Service の問題のトラブルシューティングには、以下の情報が役立ちます。

 

エラー: デバイスがメンバーになっているグループの数が多すぎます。デバイスを 10 個を超えるグループに含めることはできません。

解決策: これは既知の制限です。Greengrass デバイスは、最大 10 個のグループのメンバーにすることができます。

 

機械学習リソースの問題

次の情報を使用して、機械学習リソースの問題のトラブルシューティングに役立ててください。

 

InvalidMLModelOwner - GroupOwnerSetting は ML モデルリソースに提供されていますが、GroupOwner または GroupPermission がありません

解決策: このエラーは、機械学習リソースにResourceDownloadOwnerSettingオブジェクトではなく、必要なGroupOwnerまたはGroupPermissionプロパティが定義されていません。この問題を解決するには、不足しているプロパティを定義します。

 

NoContainer 関数は、機械学習リソースをアタッチするときにアクセス権限を設定できません。<function-arn> は、リソースアクセスポリシーでアクセス権限 <ro/rw> を持つ機械学習リソース <resource-id> を参照します。

解決策: コンテナ化されていない Lambda 関数が機械学習リソースに対する関数レベルのアクセス権限を指定した場合、このエラーが表示されます。コンテナ化されていない関数は、機械学習リソースに定義されているリソース所有者のアクセス権限からアクセス権限を継承する必要があります。この問題を解決するには、[] を選択します。リソース所有者のアクセス許可を継承する(コンソール) またはLambda 関数のリソースアクセスポリシーからアクセス許可を削除する(API) である。

 

関数 <function-arn> は、ResourceAccessPolicy と resource OwnerSetting の両方でアクセス権限がない機械学習リソース <resource-id> を参照します。

解決策: このエラーは、機械学習リソースへのアクセス権限が、アタッチされた Lambda 関数またはリソースに対して設定されていない場合に表示されます。この問題を解決するには、アクセス許可を構成します。ResourceAccessPolicyLambda 関数のプロパティまたはOwnerSettingプロパティを。

 

関数 <function-arn> は、権限 \「rw\」の機械学習リソース <resource-id> を参照し、リソース所有者設定 GroupPermission は \「ro\」のみを許可します。

解決策: このエラーは、アタッチされた Lambda 関数に定義されたアクセス権限が、機械学習リソースに対して定義されたリソース所有者のアクセス権限を超えた場合に表示されます。この問題を解決するには、Lambda 関数の制限のより厳しいアクセス権限を設定するか、リソース所有者の制限がより低いアクセス権限を設定します。

 

NoContainer 関数 <function-arn> は、ネストされた送信先パスのリソースを参照します。

解決策: コンテナ化されていない Lambda 関数にアタッチされた複数の機械学習リソースが同じ送信先パスまたはネストされた送信先パスを使用している場合に、このエラーが表示されます。この問題を解決するには、リソースに別の送信先パスを指定します。

 

Lambda <function-arn> は、同じグループ所有者 ID を共有することでリソース <resource-id> にアクセスします。

解決策: このエラーは、runtime.logと同じOSグループが Lambda 関数のとして実行ID との ID とリソース所有者を使用しますが、リソースは Lambda 関数にアタッチされていません。この設定では、Lambda 関数に暗黙のアクセス権限が付与されます。このアクセス権限は、AWS IoT Greengrass承認。

この問題を解決するには、プロパティの 1 つに別の OS グループを使用するか、機械学習リソースを Lambda 関数にアタッチします。

Docker での AWS IoT Greengrass Core に関する問題

以下の情報は、実行に関する問題のトラブルシューティングに役立ちます。AWS IoT GreengrassDocker コンテナでのコアを。

 

エラー: 不明なオプション ፦no-include-email。

解決策: このエラーは、実行すると表示されます。aws ecr get-loginコマンド。最新のAWS CLIバージョンがインストールされています (たとえば、を実行します)。pip install awscli --upgrade --user). Windows を使用していて、MSI インストーラを使用して CLI をインストールした場合、インストールプロセスを繰り返す必要があります。詳細については、「」を参照してください。をインストールするAWS Command Line InterfaceMicrosoft Windows Windows Windows()AWS Command Line Interfaceユーザーガイド

 

注意: IPv4 はディセーブルです。ネットワークは機能しません。

解決策: この警告または類似のメッセージが表示されることがあります。AWS IoT GreengrassLinux コンピュータで。このステップで説明しているように、IPv4 ネットワーク転送を有効にします。IPv4 転送が有効ではない場合、AWS IoT Greengrass クラウドデプロイと MQTT 通信は機能しません。詳細については、Docker ドキュメントの「Configure namespaced kernel parameters (sysctls) at runtime」を参照してください。

 

エラー: ファイアウォールは、ウィンドウとコンテナ間のファイルの共有をブロックしています。

解決策: このエラーが表示されるか、Firewall DetectedWindows コンピュータで Docker の実行中にというメッセージが表示される。このエラーは、仮想プライベートネットワーク (VPN) にサインインしているときにも発生する場合があり、ネットワーク設定が原因で共有ドライブをマウントできないことがあります。このような場合は、VPN をオフにし、Docker コンテナを再実行します。

 

エラー: GetAuthorizationToken オペレーションを呼び出すときにエラーが発生しました (AccessDenieDException): ユーザー:arn: aws: iam: user/<account-id> <user-name> は実行できません:ECR: GetAuthorizationToken on resource: *

このエラーが発生するのは、aws ecr get-login-passwordコマンドを使用して、Amazon ECR リポジトリにアクセスするための十分な権限がない場合に選択します。詳細については、「」を参照してください。Amazon ECR リポジトリポリシーの例および1 つの Amazon ECR リポジトリへのアクセス()Amazon ECR ユーザーガイド

 

エラー: 次のエラーが発生する。Greengrass: Conflict. The container name "/aws-iot-greengrass" is already in use.

解決策: これは、古いコンテナでコンテナ名が使用されている場合に表示される場合があります。この問題を解決するには、以下のコマンドを実行して古い Docker コンテナを削除します。

docker rm -f $(docker ps -a -q -f "name=aws-iot-greengrass")

 

エラー: [FATAL]-Failed to reset thread's mount namespace due to an unexpected error 整合性を維持するには、GGC がクラッシュするため手動で再起動する必要があります。

解決策: このエラーはruntime.logデプロイしようとすると表示されます。GreengrassContainerLambda 関数をAWS IoT GreengrassDocker コンテナでを実行する。現在は、のみNoContainerLambda 関数は、Greengrass Docker コンテナにデプロイできます。

この問題を解決するには、次の手順に従います。すべてのLambda 関数がNoContainermode新しいデプロイを開始します。次に、コンテナを起動するときに、既存のdeploymentディレクトリにAWS IoT GreengrassDocker コンテナ。代わりに、空の deployment ディレクトリを所定の場所に作成して、Docker コンテナでそのディレクトリをバインドマウントします。これにより、新しい Docker コンテナは、Lambda 関数がNoContainerモード。

詳細については、「Docker コンテナでの AWS IoT Greengrass の実行」を参照してください。

ログでのトラブルシューティング

Greengrass グループのログ設定を構成できます。ログを CloudWatch Logs に送信するか、ログをローカルファイルシステムに保存するか、またはその両方です。問題のトラブルシューティングを行う場合に詳細情報を取得するには、ログレベルを一時的に DEBUG に変更します。ログ設定の変更は、グループをデプロイするときに有効になります。詳細については、「AWS IoT Greengrass のログ記録の設定」を参照してください。

ローカルファイルシステムでは、AWS IoT Greengrass は次の場所にログを保存します。ファイルシステムのログを確認するには、ルート権限が必要です。

greengrass-root/ggc/var/log/crash.log

生成されたメッセージを示します。AWS IoT Greengrassコアクラッシュ。

greengrass-root/ggc/var/log/system/runtime.log

失敗したコンポーネントに関するメッセージを示します。

greengrass-root/ggc/var/log/system/

証明書マネージャーや接続マネージャーなど、AWS IoT Greengrass システムコンポーネントのすべてのログが含まれます。ggc/var/log/system/ggc/var/log/system/runtime.log のメッセージを使用して、AWS IoT Greengrass システムコンポーネントでどのエラーが発生したかを知ることができます。

greengrass-root/ggc/var/log/system/localwatch/

のログが含まれています、AWS IoT GreengrassCloudWatch Logs への Greengrass ログのアップロードを処理するコンポーネントです。CloudWatch で Greengrass ログを表示できない場合は、トラブルシューティングにこれらのログを使用できます。

greengrass-root/ggc/var/log/user/

ユーザー定義 Lambda 関数のすべてのログが含まれています。このフォルダを確認して、ローカル Lambda 関数のエラーメッセージを検索します。

注記

デフォルトでは、greengrass-root/greengrass ディレクトリです。書き込みディレクトリが設定されている場合には、ログはこのディレクトリにあります。

ログの保存先としてクラウドを設定している場合は、CloudWatch Logs を使用してログメッセージを確認します。crash.logは、ファイルシステムログでのみ検出されます。AWS IoT Greengrassコアデバイス。

もしAWS IoTログを CloudWatch に書き込むようにを設定している場合、システムコンポーネントがに接続しようとしたときに接続エラーが発生したら、それらのログを確認してくださいAWS IoT。

AWS IoT Greengrass ログ記録の詳細については、「AWS IoT Greengrass ログでのモニタリング」を参照してください。

注記

AWS IoT Greengrass Core ソフトウェア v1.0 のログは、greengrass-root/var/log ディレクトリに保存されます。

ストレージ問題のトラブルシューティング

ローカルファイルストレージがいっぱいになると、一部のコンポーネントが正常に動作しなくなる場合があります。

  • ローカルシャドウの更新は、実行されません。

  • 新規AWS IoT Greengrassコア MQTT サーバー証明書がローカルにダウンロードできなくなります。

  • デプロイが失敗します。

ローカルで使用可能な空き領域のサイズを常に把握しておく必要があります。空き領域は、デプロイした Lambda 関数のサイズ、ログ記録の設定 (ログでのトラブルシューティング)、ローカルに保存されるシャドウの数を指定します。

メッセージのトラブルシューティング

AWS IoT Greengrass でローカルに送信されるすべてのメッセージは、QoS 0 で送信されます。デフォルトでは、AWS IoT Greengrass はメッセージをメモリ内のキューに保存します。したがって、グループのデプロイ後やデバイスの再起動後などに Greengrass コアを再起動すると、未処理のメッセージは失われます。ただし、設定することができます。AWS IoT Greengrass(v1.6 以降) を使用してファイルシステムにメッセージをキャッシュして、コアの再起動でも保持されるようにします。また、キューサイズを設定することもできます。キューサイズを設定する場合、262144 バイト (256 KB) 以上の値になるように注意してください。そうしない場合、AWS IoT Greengrass が正しく起動しなくなることがあります。詳細については、「クラウドターゲットの MQTT メッセージキュー」を参照してください。

注記

デフォルトのインメモリキューを使用する場合、サービスの中断が低いときにグループのデプロイあるいはデバイスの再起動を行うことが推奨されます。

また、AWS IoT との永続セッションを確立するようにコアを設定することもできます。これにより、コアは、 AWS クラウド コアがオフラインで。詳細については、「 AWS IoT Core を使用した MQTT 永続セッション」を参照してください。

シャドウ同期タイムアウト問題のトラブルシューティング

Greengrass コアデバイスとクラウドとの間で通信が大幅に遅延すると、タイムアウトによりシャドウの同期が失敗する場合があります。この場合は、次のようなログエントリが表示されます。

[2017-07-20T10:01:58.006Z][ERROR]-cloud_shadow_client.go:57,Cloud shadow client error: unable to get cloud shadow what_the_thing_is_named for synchronization. Get https://1234567890abcd.iot.us-west-2.amazonaws.com:8443/things/what_the_thing_is_named/shadow: net/http: request canceled (Client.Timeout exceeded while awaiting headers) [2017-07-20T10:01:58.006Z][WARN]-sync_manager.go:263,Failed to get cloud copy: Get https://1234567890abcd.iot.us-west-2.amazonaws.com:8443/things/what_the_thing_is_named/shadow: net/http: request canceled (Client.Timeout exceeded while awaiting headers) [2017-07-20T10:01:58.006Z][ERROR]-sync_manager.go:375,Failed to execute sync operation {what_the_thing_is_named VersionDiscontinued []}"

解決方法としては、コアデバイスでホストのレスポンスを待機する時間を設定します。を開くconfig.jsonファイルのファイルgreengrass-root/configを追加し、system.shadowSyncTimeoutフィールドを、秒単位のタイムアウト値で設定します。次に例を示します。

{ "system": { "shadowSyncTimeout": 10 }, "coreThing": { "caPath": "root-ca.pem", "certPath": "cloud.pem.crt", "keyPath": "cloud.pem.key", ... }, ... }

config.jsonshadowSyncTimeout 値を指定しない場合は、デフォルト値の 5 秒が使用されます。

注記

AWS IoT Greengrass Core ソフトウェア v1.6 以前では、デフォルトの shadowSyncTimeout は 1 秒です。

AWS IoT Greengrass フォーラムを確認します。

このトピックのトラブルシューティング情報を使用しても問題を解決できない場合は、AWS IoT Greengrass フォーラムで関連する問題を検索するか、新しいフォーラムスレッドを投稿できます。AWS IoT Greengrass チームのメンバーは、フォーラムをアクティブにモニタリングします。