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

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

注記

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

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

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

  • hash-setup.tar.gz (たとえば、c6973960cc-setup.tar.gz)。この圧縮ファイルには、AWS IoT Core との安全な通信を可能にするコアデバイス証明書および暗号化キー、さらに Greengrass コアと AWS IoT Core エンドポイントに固有の設定情報を含む config.json ファイルが含まれています。

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

    注記

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

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

    注記

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

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

    Windows

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

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

    このコマンドのバージョン番号は、AWS IoT Greengrass Core ソフトウェアパッケージのバージョンと一致する必要があります。

    macOS

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

    注記

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

    cd path-to-downloaded-files scp greengrass-OS-architecture-1.10.1.tar.gz pi@IP-address:/home/pi scp hash-setup.tar.gz pi@IP-address:/home/pi
    注記

    このコマンドのバージョン番号は、AWS IoT Greengrass Core ソフトウェアパッケージのバージョンと一致する必要があります。

    UNIX-like system

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

    cd path-to-downloaded-files scp greengrass-OS-architecture-1.10.1.tar.gz pi@IP-address:/home/pi scp hash-setup.tar.gz pi@IP-address:/home/pi
    注記

    このコマンドのバージョン番号は、AWS IoT Greengrass Core ソフトウェアパッケージのバージョンと一致する必要があります。

    Raspberry Pi web browser

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

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

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

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

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

    sudo tar -xzvf greengrass-OS-architecture-1.10.1.tar.gz -C / sudo tar -xzvf hash-setup.tar.gz -C /greengrass
    注記

    このコマンドのバージョン番号は、AWS IoT Greengrass Core ソフトウェアパッケージのバージョンと一致する必要があります。

  5. コアデバイスがインターネットに接続されていることを確認します次に、ルート CA 証明書をデバイス上の /greengrass/certs フォルダにダウンロードします。

    AWS IoT 開発者ガイド の「サーバー認証」を参照し、適切なルート CA 証明書を選択します。Amazon Trust Services (ATS) エンドポイントおよび ATS ルート CA 証明書を使用することをお勧めします。 証明書を使用すると、デバイスは TLS で MQTT メッセージングプロトコルを使用して AWS IoT Core と通信できます。

    たとえば、次のコマンドを実行して Amazon ルート CA 1 証明書をダウンロードし、名前を root.ca.pem に変更します。これは、コンソールからダウンロードした config.json に登録されたファイル名です。

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

    以下のコマンドを実行して root.ca.pem が空ではないことを確認できます。ファイルが空の場合、wget URL を確認して、もう一度試してください。

    cat root.ca.pem
    注記

    ルート CA 証明書タイプは、エンドポイントと一致する必要があります。レガシー認証エンドポイントを使用するようにコアを設定する場合は、代わりに VeriSign ルート CA 証明書をダウンロードします。このチュートリアルではレガシーエンドポイントを使用できますが、ATS エンドポイントを使用し、ATS ルート CA 証明書をダウンロードすることをお勧めします。

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

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

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

    注記

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

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

    ps aux | grep PID-number

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