AWS IoT Greengrass
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

安装 适用于 Python 的 AWS IoT 设备开发工具包

AWS IoT 设备可以使用 适用于 Python 的 AWS IoT 设备开发工具包 来与 AWS IoT 和 AWS IoT Greengrass Core 设备通信(使用 Python 编程语言)。有关更多信息,包括要求,请参阅 GitHub 上的 适用于 Python 的 AWS IoT 设备开发工具包 开发工具包自述文件

  1. 要将开发工具包与所有必需的组件一起安装到您的计算机上,请选择您的操作系统:

    WindowsmacOSUNIX-like system
    Windows
    1. 打开提升的命令提示符并运行以下命令:

      python --version

      如果没有返回版本信息,或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.3,则按照下载 Python 中的说明安装 Python 2.7+ 或 Python 3.3+。有关更多信息,请参阅在 Windows 上使用 Python

    2. 适用于 Python 的 AWS IoT 设备开发工具包 下载为 zip 文件并将其解压缩到您计算机上的适当位置。

      请记下其中包含 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

      如果没有返回版本信息,或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.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 shell,请运行以下命令:

      >>>exit()

      如果 OpenSSL 版本为 1.0.1 或更高版本,请跳至步骤 3。否则,请按照以下步骤操作:

      1. 在终端窗口中,运行以下命令以确定计算机正在使用简单 Python 版本管理:

        which pyenv

      如果返回文件路径,则选择使用 pyenv 选项卡。如果未返回任何内容,则选择未使用 pyenv 选项卡。

      Using pyenvNot using pyenv
      Using pyenv
      1. 请参阅用于 Mac OS X 的 Python 版本(或类似内容),以确定最新的稳定 Python 版本。在以下示例中,该值由 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 installpyenv global 命令中使用的 Python 版本值,然后重试。

      4. 运行以下命令以退出 Python shell:

        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

        适用于 Python 的 AWS IoT 设备开发工具包 需要使用 Python 可执行文件编译的 OpenSSL 版本 1.0.1(或更高版本)。brew install python 命令会安装满足此要求的 python2 可执行文件。该 python2 可执行文件安装在 /usr/local/bin 目录中,该目录应作为 PATH 环境变量的一部分。要确认这一点,请运行以下命令:

        python2 --version

        如果提供了 python2 版本信息,请跳到下一步。否则,通过将以下行附加到您的 Shell 配置文件,永久地将 /usr/local/bin 路径添加到您的 PATH 环境变量:

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

        例如,如果您使用的是 .bash_profile 或您还没有 Shell 配置文件,则从终端窗口中运行以下命令:

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

        接下来,对您的 Shell 配置文件执行 source 命令并确认 python2 --version 提供版本信息。例如,如果您正在使用 .bash_profile,则运行以下命令:

        source ~/.bash_profile python2 --version

        应返回 python2 版本信息。

      3. 将以下行附加到您的 Shell 配置文件:

        alias python="python2"

        例如,如果您使用的是 .bash_profile 或您还没有 Shell 配置文件,则运行以下命令:

        echo 'alias python="python2"' >> ~/.bash_profile
      4. 接下来,对您的 Shell 配置文件执行 source 命令。例如,如果您正在使用 .bash_profile,则运行以下命令:

        source ~/.bash_profile

        调用 python 命令将运行 Python 可执行文件 (python2),其中包含所需的 OpenSSL 版本。

      5. 运行以下命令:

        python import ssl print ssl.OPENSSL_VERSION

        OpenSSL 版本应为 1.0.1 或更高版本。

      6. 要退出 Python shell,请运行以下命令:

        exit()
    3. 运行以下命令安装 适用于 Python 的 AWS IoT 设备开发工具包:

      cd ~ git clone https://github.com/aws/aws-iot-device-sdk-python.git cd aws-iot-device-sdk-python python setup.py install
    UNIX-like system
    1. 从您的 终端窗口中运行以下命令:

      python --version

      如果没有返回版本信息,或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.3,则按照下载 Python 中的说明安装 Python 2.7+ 或 Python 3.3+。有关更多信息,请参阅在 Unix 平台上使用 Python

    2. 在终端中,运行以下命令以确定 OpenSSL 版本:

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

      记下 OpenSSL 版本值。

      要关闭 Python shell,请运行以下命令:

      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. 运行以下命令安装 适用于 Python 的 AWS IoT 设备开发工具包:

      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. 安装适用于 Python 的 AWS IoT 设备开发工具包后,导航到 samples 文件夹,打开 greengrass 文件夹,然后将 basicDiscovery.py 文件复制到包含 HelloWorld_Publisher 和 HelloWorld_Subscriber 设备证书的文件夹中,如以下示例中所示。(文件名中的哈希组分不同。)

    
                    在同一文件夹中具有 basicDiscovery.py 的证书和密钥文件的屏幕截图。