Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

通信をテストする - AWS IoT Greengrass

2023 年 6 月 30 日に AWS IoT Greengrass Version 1 は延長ライフサイクルフェーズに入りました。詳細については、「AWS IoT Greengrass V1 メンテナンスポリシー」を参照してください。この日付以降、AWS IoT Greengrass V1 の機能、拡張機能、バグ修正、またはセキュリティパッチを提供するアップデートはリリースされません。AWS IoT Greengrass V1 で稼働中のデバイスは中断されず、引き続き動作し、クラウドに接続できます。重要な新機能新たなプラットフォームのサポートが追加された AWS IoT Greengrass Version 2 への移行を強くお勧めします。

2023 年 6 月 30 日に AWS IoT Greengrass Version 1 は延長ライフサイクルフェーズに入りました。詳細については、「AWS IoT Greengrass V1 メンテナンスポリシー」を参照してください。この日付以降、AWS IoT Greengrass V1 の機能、拡張機能、バグ修正、またはセキュリティパッチを提供するアップデートはリリースされません。AWS IoT Greengrass V1 で稼働中のデバイスは中断されず、引き続き動作し、クラウドに接続できます。重要な新機能新たなプラットフォームのサポートが追加された AWS IoT Greengrass Version 2 への移行を強くお勧めします。

通信をテストする

  1. コンピュータおよび AWS IoT Greengrass Core デバイスが、インターネットに接続されていて同じネットワークを使用していることを確認します。

    1. AWS IoT Greengrass Core デバイスで、次のコマンドを実行して IP アドレスを見つけます。

      hostname -I
    2. コンピュータで、コアの IP アドレスを使用して次のコマンドを実行します。ping コマンドを停止するには、Ctrl + C を使用できます。

      ping IP-address

      出力が以下のような場合、コンピュータと AWS IoT Greengrass Core デバイス間の通信は正常です (パケット損失 0%)。

      正常な ping コマンドの出力。
      注記

      AWS IoT Greengrass を実行している EC2 インスタンスに ping できない場合は、インスタンスのインバウンドセキュリティグループルールが エコーリクエストメッセージの ICMP トラフィックを許可するようにしてください。詳細については、「Amazon EC2 ユーザーガイド」の「セキュリティグループへのルールの追加」を参照してください。

      Windows ホストコンピュータでは、セキュリティが強化された Windows ファイアウォールアプリケーションで、インバウンドエコーリクエストを許可するインバウンドルール ([File and Printer Sharing (Echo Request - ICMPv4-In)] など) を有効にするか作成することが必要になる場合もあります。

  2. AWS IoT エンドポイントを取得します。

    1. AWS IoT コンソールのナビゲーションペインから、[Settings] (設定) を選択します。

    2. [Device data endpoint] (デバイスデータエンドポイント) にある[Endpoint] (エンドポイント) の値を書き留めておきます。次の手順では、この値を使用してコマンド内の AWS_IOT_ENDPOINT プレースホルダーを置き換えます。

      注記
  3. コンピュータ (AWS IoT Greengrass Core デバイス以外) で、2 つのコマンドライン (ターミナルまたはコマンドプロンプト) ウィンドウを開きます。1 つのウィンドウは HelloWorld_Publisher クライアントデバイスを、もう 1 つは HelloWorld_Subscriber クライアントデバイスを表します。

    実行時に、basicDiscovery.py は、そのエンドポイントで AWS IoT Greengrass コアの場所に関する情報の収集を試みます。この情報は、クライアントデバイスがコアを検出して正常に接続すると、保存されます。これで、この先のメッセージとオペレーションがローカル (インターネット接続なし) で実行されるようになります。

    注記

    MQTT 接続に使用されるクライアント ID は、クライアントデバイスのモノ名と一致する必要があります。basicDiscovery.py スクリプトによって、MQTT 接続のクライアント ID が、スクリプト実行時に指定したモノ名に設定されます。

    スクリプトの詳しい使用方法を確認するには、basicDiscovery.py ファイルのあるフォルダから次のコマンドを実行してください。

    python basicDiscovery.py --help
  4. HelloWorld_Publisher クライアントデバイスのウィンドウから、次のコマンドを実行します。

    • path-to-certs-folder を、証明書、キー、および basicDiscovery.py を含むフォルダへのパスに置き換えます。

    • AWS_IOT_ENDPOINT をエンドポイントに置き換えます。

    • 2 つの publisherCertId インスタンスを、HelloWorld_Publisher クライアントデバイスのファイル名に含まれるクライアント ID に置き換えます。

    cd path-to-certs-folder python basicDiscovery.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert publisherCertId-certificate.pem.crt --key publisherCertId-private.pem.key --thingName HelloWorld_Publisher --topic 'hello/world/pubsub' --mode publish --message 'Hello, World! Sent from HelloWorld_Publisher'

    Published topic 'hello/world/pubsub': {"message": "Hello, World! Sent from HelloWorld_Publisher", "sequence": 1} のような、エントリを含む出力が表示されるはずです。

    注記

    スクリプトが error: unrecognized arguments メッセージを返した場合は、--topic および --message パラメータの一重引用符を二重引用符に変更して、コマンドを再実行します。

    接続の問題のトラブルシューティングを行うには、手動で IP の検出を試すことができます。

    発行者の出力のスクリーンショット。
  5. HelloWorld_Subscriber クライアントデバイスのウィンドウから、次のコマンドを実行します。

    • path-to-certs-folder を、証明書、キー、および basicDiscovery.py を含むフォルダへのパスに置き換えます。

    • AWS_IOT_ENDPOINT をエンドポイントに置き換えます。

    • 2 つの subscriberCertId インスタンスを、HelloWorld_Subscriber クライアントデバイスのファイル名に含まれるクライアント ID に置き換えます。

    cd path-to-certs-folder python basicDiscovery.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert subscriberCertId-certificate.pem.crt --key subscriberCertId-private.pem.key --thingName HelloWorld_Subscriber --topic 'hello/world/pubsub' --mode subscribe

    Received message on topic hello/world/pubsub: {"message": "Hello, World! Sent from HelloWorld_Publisher", "sequence": 1} のような、エントリを含む出力が表示されるはずです。

    受信者の出力のスクリーンショット。

HelloWorld_Publisher ウィンドウを閉じて、メッセージが HelloWorld_Subscriber ウィンドウに表示されないようにします。

企業ネットワークでテストを実行すると、コアへの接続を妨げる可能性があります。回避策として、エンドポイントを手動で入力できます。これにより、basicDiscovery.py スクリプトが AWS IoT Greengrass コアデバイスの正しい IP アドレスに接続されます。

エンドポイントを手動で入力するには
  1. AWS IoT コンソールのナビゲーションペインの [Manage] (管理) で、[Greengrass devices] (Greengrass デバイス) を展開して、[Groups (V1)] (グループ (V1))を選択します。

  2. [Greengrass グループ] で、目的のグループを選択します。

  3. MQTT ブローカーのエンドポイントを手動で管理するようにコアを設定します。以下の操作を実行します。

    1. グループ設定ページで、[Lambda functions] (Lambda 関数) タブを選択します。

    2. [System Lambda functions] (システム Lambda 関数) から、[IP detector] (IP ディテクター)、[Edit] (編集) の順に選択します。

    3. [Edit IP detector settings] (IP ディテクター設定の編集) で、[Manually manage MQTT broker endpoints] (MQTT ブローカーのエンドポイントを手動で管理する)、[Save] (保存) の順に選択します。

  4. コアの MQTT ブローカーエンドポイントを入力します。以下の操作を実行します。

    1. [Overview] (概要) で、 [Greengrass core] (Greengrass コア) を選択します。

    2. [MQTT broker endpoints] (MQTT ブローカーエンドポイント) で、 [Manage endpoints] (エンドポイントの管理) を選択します。

    3. [Add endpoint] (エンドポイントの追加) を選択し、エンドポイントの値が 1 つだけであることを確認します。この値は、AWS IoT Greengrass コアデバイスがポート 8883 に使用する、エンドポイントの IP アドレス (192.168.1.4 など) でなければなりません。

    4. [Update] (更新) を選択します。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.