Cookie の設定を選択する

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

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

Amazon EC2 インスタンスの設定 - 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 への移行を強くお勧めします。

Amazon EC2 インスタンスの設定

AWS IoT Greengrass コアとして使用する Amazon EC2 インスタンスをセットアップするには、このトピックのステップに従います。

ヒント

または、環境を設定して AWS IoT Greengrass Core ソフトウェアをインストールするスクリプトを使用する場合は、「クイックスタート: Greengrass デバイスのセットアップ」を参照してください。

このチュートリアルは Amazon EC2 インスタンスを使用して完了できますが、AWS IoT Greengrass は物理的なハードウェアで使用するのが最適です。Amazon EC2 インスタンスを使用するのではなく、Raspberry Pi のセットアップをお勧めします。Raspberry Pi を使用している場合は、このトピックのステップを実行する必要はありません。

 

  1. AWS Management Console にサインインし、Amazon Linux AMI を使用して Amazon EC2 インスタンスを起動します。Amazon EC2 インスタンスについては、「Amazon EC2 入門ガイド」を参照してください。

  2. Amazon EC2 インスタンスが実行されたら、8883 ポートを有効にして受信 MQTT 通信を許可し、他のデバイスが AWS IoT Greengrass コアと接続できるようにします。

    1. Amazon EC2 コンソールのナビゲーションペインで、[Security Group] (セキュリティグループ) を選択します。

      [セキュリティグループ] が強調表示されたナビゲーションペイン。
    2. 先ほど起動したインスタンスのセキュリティグループを選択し、[Inbound rules] (インバウンドルール) タブを選択します。

    3. [インバウンドのルールを編集] を選択します。

      ポート 8883 を有効にするには、セキュリティグループにカスタム TCP ルールを追加します。詳細については、「Amazon EC2 ユーザーガイド」の「セキュリティグループへのルールの追加」を参照してください。

    4. [インバウンドのルールの編集] ページで、[ルールを追加] を選択し、次の設定を入力して、[保存] を選択します。

      • [タイプ] で、[カスタム TCP ルール] を選択します。

      • [ポート範囲]8883 と入力します。

      • [ソース] で、[任意の場所] を選択します。

      • [説明]MQTT Communications と入力します。

       

  3. Amazon EC2 インスタンスに接続します。

    1. ナビゲーションペインで [インスタンス] を選択し、インスタンスを選択して、[接続] を選択します。

    2. [インスタンスへの接続] ページの指示に従って、SSH およびプライベートキーファイルを使用してインスタンスに接続します。

    Windows では PuTTY を、macOS ではターミナルを使用できます。詳細については、「Amazon EC2 ユーザーガイド」の「Linux インスタンスへの接続」を参照してください。

    これで、AWS IoT Greengrass の Amazon EC2 インスタンスをセットアップする準備ができました。

  4. Amazon EC2 インスタンスに接続したら、ggc_user アカウントと ggc_group アカウントを作成します。

    sudo adduser --system ggc_user sudo groupadd --system ggc_group
    注記

    システムで adduser コマンドを使用できない場合は、以下のコマンドを使用します。

    sudo useradd --system ggc_user
  5. セキュリティを向上させるには、起動時に Amazon EC2 インスタンスのオペレーティングシステムでハードリンクとソフトリンク (symlink) の保護が有効になっていることを確認します。

    注記

    ハードリンクとソフトリンクの保護を有効にする手順は、オペレーティングシステムによって異なります。お使いのディストリビューションのドキュメントを参照してください。

    1. 以下のコマンドを実行して、ハードリンクとソフトリンクの保護が有効になっているかどうかを確認します。

      sudo sysctl -a | grep fs.protected

      ハードリンクとソフトリンクが 1 に設定されている場合、保護は正しく有効になっています。ステップ 6 に進みます。

      注記

      ソフトリンクは fs.protected_symlinks で表されます。

    2. ハードリンクとソフトリンクが 1 に設定されていない場合は、これらの保護を有効にします。システム設定ファイルの場所に移動します。

      cd /etc/sysctl.d ls
    3. 任意のテキストエディタ (Leafpad、GNU nano、vi など) を使用して、システム設定ファイルの最後に以下の 2 行を追加します。Amazon Linux 1 では、これは 00-defaults.conf ファイルです。Amazon Linux 2 では、これは 99-amazon.conf ファイルです。ファイルへの書き込みを行えるように (chmod コマンドを使用して) アクセス許可を変更するか、sudo コマンドを使用して root として編集する (sudo nano 00-defaults.conf など) ことが必要な場合があります。

      fs.protected_hardlinks = 1 fs.protected_symlinks = 1
    4. Amazon EC2 インスタンスを再起動します。

      sudo reboot

      数分後、SSH を使用してインスタンスに接続し、次のコマンドを実行して変更を確認します。

      sudo sysctl -a | grep fs.protected

      ハードリンクとソフトリンクが 1 に設定されているはずです。

  6. 以下のスクリプトを展開して実行し、Linux コントロールグループ (cgroups) をマウントします。これにより、AWS IoT Greengrass で Lambda 関数のメモリ制限を設定できるようになります。cgroup は、デフォルトのコンテナ化モードで AWS IoT Greengrass を実行するためにも必要です。

    curl https://raw.githubusercontent.com/tianon/cgroupfs-mount/951c38ee8d802330454bdede20d85ec1c0f8d312/cgroupfs-mount > cgroupfs-mount.sh chmod +x cgroupfs-mount.sh sudo bash ./cgroupfs-mount.sh

    これで、Amazon EC2 インスタンスは AWS IoT Greengrass の準備ができた状態になります。

  7. オプション。Java 8 ランタイムをインストールします。これはストリームマネージャーに必要です。このチュートリアルではストリームマネージャーを使用しませんが、チュートリアルで使用する [デフォルトのグループ作成] ワークフローでは、デフォルトでストリームマネージャーが有効になります。グループをデプロイする前に、以下のコマンドを使用してコアデバイスに Java 8 ランタイムをインストールするか、またはストリームマネージャーを無効にする必要があります。ストリームマネージャーを無効にする手順については、モジュール 3 を参照してください。

    • Debian ベースのディストリビューションの場合:

      sudo apt install openjdk-8-jdk
    • Red Hat ベースのディストリビューションの場合:

      sudo yum install java-1.8.0-openjdk
  8. 必要なすべての依存関係がそろっていることを確認するには、GitHub のAWS IoT Greengrassサンプルリポジトリから Greengrass 依存関係チェッカーをダウンロードして実行します。これらのコマンドは、Amazon EC2 インスタンスで依存関係チェッカースクリプトをダウンロード、解凍、実行します。

    mkdir greengrass-dependency-checker-GGCv1.11.x cd greengrass-dependency-checker-GGCv1.11.x wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip unzip greengrass-dependency-checker-GGCv1.11.x.zip cd greengrass-dependency-checker-GGCv1.11.x sudo ./check_ggc_dependencies | more
    重要

    このチュートリアルでは、ローカル Lambda 関数を実行するには Python 3.7 ランタイムが必要です。ストリームマネージャーが有効な場合は、Java 8 ランタイムも必要です。これらのランタイムの前提条件が不足しているという警告が check_ggc_dependencies スクリプトによって表示される場合は、続行する前に必ずインストールしてください。その他の欠落しているオプションのランタイム前提条件に関する警告は無視できます。

これで、Amazon EC2 インスタンスの設定は完了です。「モジュール 2: AWS IoT Greengrass Core ソフトウェアのインストール」に進みます。

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