AWS IoT Device SDK for Python のインストール - AWS IoT Greengrass

AWS IoT Greengrass Version 1 は機能更新を受信しなくなり、2023 年 6 月 30 日までセキュリティパッチとバグ修正のみ受信します。詳細については、「AWS IoT Greengrass V1 メンテナンスポリシー」を参照してください。重要な新機能新たなプラットフォームのサポートが追加された AWS IoT Greengrass Version 2 への移行を強くお勧めします。

AWS IoT Device SDK for Python のインストール

クライアントデバイスは AWS IoT Device SDK for Python を使用して (Python プログラミング言語を使用して) AWS IoT コアデバイスおよび AWS IoT Greengrass コアデバイスと通信できます。要件などの詳細については、GitHub の AWS IoT Device SDK for Python Readme を参照してください。

このステップでは、SDK をインストールし、コンピュータ上のシミュレートされたクライアントデバイスによって使用される basicDiscovery.py サンプル関数を取得します。

  1. 必要なすべてのコンポーネントとともに SDK をコンピュータにインストールするには、オペレーティングシステムを選択します。

    Windows
    1. 昇格されたコマンドプロンプトを開き、次のコマンドを実行します。

      python --version

      バージョン情報が返されない場合や、バージョン番号が 2.7 未満 (Python 2) または 3.3 未満 (Python 3) の場合は、「Python のダウンロード」の手順に従って Python 2.7 以上または Python 3.3 以上をインストールしてください。詳細については、「Windows で Python を使う」を参照してください。

    2. AWS IoT Device SDK for Pythonzip ファイルとしてダウンロードし、コンピュータの適切な場所に展開します。

      setup.py ファイルを含む展開された aws-iot-device-sdk-python-master フォルダへのファイルパスを書き留めます。次のステップで、このファイルパスは path-to-SDK-folder として示されます。

    3. 昇格されたコマンドプロンプトで、次のコマンドを実行します。

      cd path-to-SDK-folder python setup.py install
    macOS
    1. ターミナルウィンドウを開いて、次のコマンドを実行します。

      python --version

      バージョン情報が返されない場合や、バージョン番号が 2.7 未満 (Python 2) または 3.3 未満 (Python 3) の場合は、「Python のダウンロード」の手順に従って Python 2.7 以上または Python 3.3 以上をインストールしてください。詳細については、「Macintosh で Python を使う」を参照してください。

    2. ターミナルウィンドウで、次のコマンドを実行して OpenSSL のバージョンを確認します。

      python >>>import ssl >>>print ssl.OPENSSL_VERSION

      OpenSSL バージョンの値を書き留めておきます。

      注記

      Python 3 を実行している場合は、print(ssl.OPENSSL_VERSION) を使用します。

      Python シェルを閉じるには、次のコマンドを実行します。

      >>>exit()

      OpenSSL バージョンが 1.0.1 以降である場合、ステップ c に進んでください。そうでない場合は、以下の手順を実行します。

      1. ターミナルウィンドウから、次のコマンドを実行して、コンピュータが Simple Python Version Management を使用しているかどうかを確認します。

        which pyenv

      ファイルパスが返された場合、[Using pyenv] タブを選択します。何も返されない場合、[Not usingpyenv] タブを選択します。

      Using pyenvNot using pyenv
      Using pyenv
      1. 安定している最新の Python バージョンを確認するには、「Python Releases for Max OS X」 (または同様のページ) を参照してください。次の例で、この値は latest-Python-version として示されています。

      2. ターミナルウィンドウから、以下のコマンドを実行します。

        pyenv install latest-Python-version pyenv global latest-Python-version

        例えば、Python 2 の最新バージョンが 2.7.14 の場合、これらのコマンドは以下のようになります。

        pyenv install 2.7.14 pyenv global 2.7.14
      3. ターミナルウィンドウを閉じてから再度開き、以下のコマンドを実行します。

        python >>>import ssl >>>print ssl.OPENSSL_VERSION

        OpenSSL のバージョンは 1.0.1 以上でなければなりません。バージョンが 1.0.1 未満の場合、更新は失敗します。pyenv install コマンドと pyenv global コマンドで使用した Python バージョンの値を確認し、もう一度試してください。

      4. 次のコマンドを実行して、Python シェルを終了します。

        exit()
      Not using pyenv
      1. ターミナルウィンドウで、次のコマンドを実行して brew がインストールされているかどうかを確認します。

        which brew

        ファイルパスが返されない場合、次のようにして brew をインストールします。

        /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
        注記

        インストールプロンプトに従います。Xcode コマンドラインツールのダウンロードには多少時間がかかることがあります。

      2. 以下のコマンドを実行します。

        brew update brew install openssl brew install python@2

        AWS IoT Device SDK for Python には、Python 実行可能ファイルでコンパイルされた OpenSSL バージョン 1.0.1 以降が必要です。brew install python コマンドでは、この要件を満たす python2 実行可能ファイルがインストールされます。python2 実行可能ファイルは、PATH 環境変数の一部となっている /usr/local/bin ディレクトリにインストールされます。これを確認するには、次のコマンドを実行します。

        python2 --version

        python2 のバージョン情報が提供されている場合は、次のステップに進みます。それ以外の場合は、シェルプロファイルに次の行を付加することにより、/usr/local/bin 環境変数に PATH パスを追加します。

        export PATH="/usr/local/bin:$PATH"

        例えば、.bash_profile を使用している場合や、まだシェルプロファイルがない場合、ターミナルウィンドウから以下のコマンドを実行します。

        echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile

        次に、シェルプロファイルに source を実行し、python2 --version によりバージョン情報が提供されることを確認します。例えば、.bash_profile を使用する場合、以下のコマンドを実行します。

        source ~/.bash_profile python2 --version

        python2 のバージョン情報が返されます。

      3. シェルプロファイルに次の行を追加します。

        alias python="python2"

        例えば、.bash_profile を使用している場合や、まだシェルプロファイルがない場合、以下のコマンドを実行します。

        echo 'alias python="python2"' >> ~/.bash_profile
      4. 次に、シェルプロファイルに source を実行します。例えば、.bash_profile を使用する場合、以下のコマンドを実行します。

        source ~/.bash_profile

        python コマンドを呼び出すと、必要な OpenSSL バージョンを含む Python 実行可能ファイル (python2) が実行されます。

      5. 以下のコマンドを実行します。

        python import ssl print ssl.OPENSSL_VERSION

        OpenSSL のバージョンは 1.0.1 以上でなければなりません。

      6. Python シェルを終了するには、次のコマンドを実行します。

        exit()
    3. 次のコマンドを実行して、AWS IoT Device SDK for Python をインストールします。

      cd ~ git clone https://github.com/aws/aws-iot-device-sdk-python.git cd aws-iot-device-sdk-python sudo python setup.py install
    UNIX-like system
    1. のターミナルウィンドウから、以下のコマンドを実行します。

      python --version

      バージョン情報が返されない場合や、バージョン番号が 2.7 未満 (Python 2) または 3.3 未満 (Python 3) の場合は、「Python のダウンロード」の手順に従って Python 2.7 以上または Python 3.3 以上をインストールしてください。詳細については、「Unix プラットフォームで Python を使う」を参照してください。

    2. ターミナルで、以下のコマンドを実行して OpenSSL のバージョンを確認します。

      python >>>import ssl >>>print ssl.OPENSSL_VERSION

      OpenSSL バージョンの値を書き留めておきます。

      注記

      Python 3 を実行している場合は、print(ssl.OPENSSL_VERSION) を使用します。

      Python シェルを閉じるには、次のコマンドを実行します。

      exit()

      OpenSSL バージョンが 1.0.1 以降である場合、次のステップに進んでください。それ以外の場合は、ディストリビューションの OpenSSL を更新するコマンド (sudo yum update opensslsudo apt-get update など) を実行します。

      次のコマンドを実行して、OpenSSL のバージョンが 1.0.1 以降であることを確認します。

      python >>>import ssl >>>print ssl.OPENSSL_VERSION >>>exit()
    3. 次のコマンドを実行して、AWS IoT Device SDK for Python をインストールします。

      cd ~ git clone https://github.com/aws/aws-iot-device-sdk-python.git cd aws-iot-device-sdk-python sudo python setup.py install
  2. AWS IoT Device SDK for Python をインストールしたら、samples フォルダに移動し、greengrass フォルダを開きます。

    このチュートリアルでは、「AWS IoT Greengrass グループでのクライアントデバイスの作成」でダウンロードした証明書とキーを使用する basicDiscovery.py サンプル関数をコピーします。

  3. HelloWorld_Publisher および HelloWorld_Subscriber デバイスの証明書とキーを含むフォルダに basicDiscovery.py をコピーします。