AWS IoT Greengrass
開発者ガイド

コアデバイスでの AWS IoT Greengrass の起動

注記

このチュートリアルでは、Raspberry Pi で AWS IoT Greengrass を起動する方法について説明しますが、サポートされている任意のデバイスを使用できます。

前のステップでは、コンピュータに 2 つのファイルをダウンロードしました。

  • greengrass-OS-architecture-1.9.2.tar.gz。この圧縮ファイルには、コアデバイスで実行される AWS IoT Greengrass Core ソフトウェアが含まれています。

  • hash-setup.tar.gz。この圧縮ファイルには、AWS IoT との安全な通信を可能にするセキュリティ証明書と、AWS IoT Greengrass コア および AWS IoT エンドポイントに固有の設定情報を含む config.json が含まれています。

  1. AWS IoT Greengrass コア デバイスの IP アドレスがわからない場合は、AWS IoT Greengrass コア デバイスでターミナルを開き、次のコマンドを実行します。

    注記

    このコマンドは、一部のデバイスでは正しい IP アドレスを返さない可能性があります。デバイスの IP アドレスを取得する方法については、デバイスのドキュメントを参照してください。

    hostname -I
  2. 2 つの圧縮ファイルをコンピュータから AWS IoT Greengrass コア デバイスに転送します。ファイルを Raspberry Pi デバイスに転送する方法を示すステップについて、オペレーティングシステムを選択します。ファイル転送のステップは、デバイスまたは EC2 インスタンスによって異なります。

    注記

    Raspberry Pi では、デフォルトのユーザー名は pi、デフォルトのパスワードは raspberry です。

    NVIDIA Jetson TX2 では、デフォルトのユーザー名は nvidia、デフォルトのパスワードは nvidia です。

    WindowsmacOSUNIX-like systemRaspberry Pi web browser
    Windows

    圧縮ファイルをコンピュータから Raspberry Pi AWS IoT Greengrass コア デバイスに転送するには、WinSCP などのツールまたは PuTTYpscp コマンドを使用してください。pscp コマンドを使用するには、コンピュータでコマンドプロンプトウィンドウを開き、次のコマンドを実行します。

    cd path-to-downloaded-files pscp -pw Pi-password greengrass-OS-architecture-1.9.2.tar.gz pi@IP-address:/home/pi pscp -pw Pi-password hash-setup.tar.gz pi@IP-address:/home/pi

    例:

    
                                        使用中の PuTTY の pscp コマンド。
    macOS

    圧縮ファイルを Mac から Raspberry Pi AWS IoT Greengrass コア デバイスに転送するには、コンピュータでターミナルウィンドウを開き、以下のコマンドを実行します。path-to-downloaded-files は、通常 ~/Downloads です。

    注記

    2 つのパスワードの入力を要求される場合があります。その場合、最初のパスワードは Mac の sudo コマンド用で、2 番目は Raspberry Pi のパスワードです。

    cd path-to-downloaded-files scp greengrass-OS-architecture-1.9.2.tar.gz pi@IP-address:/home/pi scp hash-setup.tar.gz pi@IP-address:/home/pi
    UNIX-like system

    コンピュータから Raspberry Pi AWS IoT Greengrass コア デバイスに圧縮ファイルを転送するには、コンピュータでターミナルウィンドウを開き、以下のコマンドを実行します。

    cd path-to-downloaded-files scp greengrass-OS-architecture-1.9.2.tar.gz pi@IP-address:/home/pi scp hash-setup.tar.gz pi@IP-address:/home/pi
    Raspberry Pi web browser

    Raspberry Pi のウェブブラウザを使用して圧縮ファイルをダウンロードした場合、ファイルは Pi の ~/Downloads フォルダ (/home/pi/Downloads など) にあります。それ以外の場合、圧縮ファイルは Pi の ~ フォルダ (/home/pi など) にあります。

  3. AWS IoT Greengrass コア デバイスでターミナルを開き、圧縮ファイルが含まれているフォルダ (例: cd /home/pi) に移動します。

    cd path-to-compressed-files
  4. AWS IoT Greengrass Core ソフトウェアおよびセキュリティリソースを解凍します。

    • 最初のコマンドでは、AWS IoT Greengrass コア デバイスのルートフォルダに /greengrass ディレクトリが作成されます (-C / 引数を使用)。

    • 2 番目のコマンドでは、証明書が /greengrass/certs フォルダにコピーされ、config.json ファイルが /greengrass/config フォルダにコピーされます (-C /greengrass 引数を使用)。

    sudo tar -xzvf greengrass-OS-architecture-1.9.2.tar.gz -C / sudo tar -xzvf hash-setup.tar.gz -C /greengrass
  5. AWS IoT Core のサーバー認証」のドキュメントを参照し、適切なルート CA 証明書を選択します。Amazon Trust Services (ATS) エンドポイントおよび ATS ルート CA 証明書を使用することをお勧めします。 証明書を使用すると、デバイスは TLS で MQTT メッセージングプロトコルを使用して AWS IoT と通信できます。

    AWS IoT Greengrass コア デバイスがインターネットに接続されていることを確認し、ルート CA 証明書をコアデバイスにダウンロードします。

    重要

    ルート CA 証明書タイプは、エンドポイントと一致する必要があります。ATS ルート CA 証明書を ATS エンドポイントで使用するか (推奨)、Verisign ルート CA 証明書をレガシーエンドポイントで使用します。レガシーエンドポイントは、一部の AWS リージョンでのみサポートされています。詳細については、「エンドポイントは証明書タイプと一致する必要がある」を参照してください。

    ATS エンドポイントを使用する場合は (推奨)、適切な ATS ルート CA 証明書をダウンロードします。次の例では AmazonRootCA1.pem をダウンロードします。wget -O パラメータは大文字の O です。

    cd /greengrass/certs/ sudo wget -O root.ca.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem

    注記

    レガシーエンドポイントの場合は、Verisign ルート CA 証明書をダウンロードします。このチュートリアルではレガシーエンドポイントを使用できますが、ATS エンドポイントを作成し、ATS ルート CA 証明書をダウンロードすることをお勧めします。

    cd /greengrass/certs/ sudo wget -O root.ca.pem https://www.symantec.com/content/en/us/enterprise/verisign/roots/VeriSign-Class%203-Public-Primary-Certification-Authority-G5.pem

    以下のコマンドを実行して root.ca.pem ファイルが空ではないことを確認できます。

    cat root.ca.pem

    root.ca.pem ファイルが空の場合、wget URL を確認して、もう一度試してください。

  6. コアデバイスで AWS IoT Greengrass を起動します。

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

    Greengrass successfully started」メッセージが表示されます。PID を書き留めておきます。

    注記

    システム起動時に AWS IoT Greengrass を開始するためにコアデバイスを設定するには、「Init システムを設定して Greengrass デーモンを開始する」を参照してください。

    次のコマンドを実行して AWS IoT Greengrass Core ソフトウェア (デーモン) が機能していることを確認できます。PID-number は、PID に置き換えます。

    ps aux | grep PID-number

    実行中の Greengrass デーモンへのパスを持つ PID のエントリが表示されます (例: /greengrass/ggc/packages/1.9.2/bin/daemon)。AWS IoT Greengrass の起動で問題が発生した場合は、「AWS IoT Greengrass のトラブルシューティング」を参照してください。