AWS IoT Greengrass 入门-模块1:树莓派+Greengrass环境配置

AWS IoT Greengrass 入门-模块1:树莓派+Greengrass环境配置

要求

Mac、Windows PC 或类似 UNIX 的系统。

一个带 8 GB 以上的microSD 卡的 Raspberry Pi 4 Model B 或 Raspberry Pi 3 Model B/B+

显示器,鼠标,键盘。

配置树莓派

  1. 插入 SD 卡的驱动器。对 SD 卡执行快速格式化。

  1. 下载 zip 文件格式的 Raspbian Buster 操作系统。
  2. 下载安装操作系统写入程序 (例如 Etcher

  1. 写入Raspbian Buster操作系统到SD卡。

    • 打开\(Etcher\),选择下载好的操作系统镜像:

    • 选择要写入的设备:

    • 点击Flash!开始写入。等待写入完成。期间若弹出“请插入u盘”等情况可忽略。

    • 完成后,关闭软件即可。

  2. 将读卡器插入树莓派,通过\(HDMI\)将树莓派连接到显示器,并连接鼠标键盘,供电启动。根据提示完成基本设置即可。设置完成后重启。

    其中\(Wi-Fi\)选项,建议将笔记本连接网络后,笔记本开启个人热点,然后将树莓派连接到笔记本开启的网络热点上。好处是无论连接什么网络,树莓派连接的网络的\(ip\)地址不会变更。

  3. 重启后打开终端窗口输入以下命令:

    sudo raspi-config
    

    打开树莓派配置工具,将看到以下内容:

    选择\(5\ Interfacing\ Options\),然后选择\(P2\ SSH\)。系统提示时,选择\(Yes\)\(SSH\)现在已经启用。选择\(OK\)。然后使用\(Tab\)键选择\(Finish\),然后按\(Enter\)。如果\(Raspberry\ Pi\)未自动重启,运行以下命令:

    sudo reboot
    
  4. 重启后,打开终端,运行以下命令显示树莓派\(ip\)地址:

    hostname -I
    

    如果是\(Windows\)系统,则需要下载MobaXterm,用于连接树莓派。安装完成后,打开\(MobaXterm\),选择左上角的\(Session\),然后选择左上角的\(SSH\),看到如下界面:

    \(Remote\ host\)中填入树莓派的\(ip\)地址,点击\(OK\)。会进入终端界面:

    默认的树莓派登录名和密码分别为\(pi\)\(raspberry\),但是在第\(5\)步时,自己应该设置了密码,输入自己设置的密码即可。后面不出意外,就可以不用显示器等外设了。

  5. 现在,已准备好为\(AWS\ IoT\ Greengrass\)设置树莓派。首先在\(SSH\)终端窗口运行以下命令,来增加一个用户/组。

    sudo adduser --system ggc_user
    sudo addgroup --system ggc_group
    sudo usermod -a -G ggc_group ggc_user
    
  6. 为了提高设备的安全性,在启动时需要在操作系统上启动硬链接和软连接保护。

    a. 导航到98-rpi.conf文件。

    cd /etc/sysctl.d
    ls
    

    如果没有看到98-rpi.conf文件,请安装README.sysctl文件中的说明操作。

    b. 使用文本编辑器,将以下两行添加到文件的末尾。

    sudo vi 98-rpi.conf //打开文件命令
    
    fs.protected_hardlinks = 1
    fs.protected_symlinks = 1
    

    c. 重启树莓派。

    sudo reboot
    

    约一分钟后,使用\(SSH\)连接到树莓派,然后运行以下命令来确认更改:

    sudo sysctl -a 2> /dev/null | grep fs.protected
    
    

    然后会看到如下:

  7. 编辑命令行启动文件,以启动并装载内存控制组。这将允许\(AWS\ IoT\ Greengrass\)设置\(Lambda\)函数内存的限制。在默认的容器化模式下运行\(AWS\ IoT\ Greengrass\)时也需要\(Cgroup\)

    a. 导航到\(boot\)目录。

    cd /boot
    
    

    b. 用文本编辑器打开cmdline.txt。将以下内容附加到现有行的末尾,注意不是作为新行。

    cgroup_enable=memory cgroup_memory=1
    
    

    c. 现在重启树莓派。

    sudo reboot
    
    
  8. 要确保您具有所有必需的依赖项,请从\(GitHub\)上的 AWS IoT Greengrass 示例存储库下载并运行 \(Greengrass\)依赖项检查程序。 这些命令将在 Downloads 目录中解压和运行依赖项检查程序脚本。

    cd /home/pi/Downloads
    mkdir greengrass-dependency-checker-GGCv1.9.x
    cd greengrass-dependency-checker-GGCv1.9.x
    wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.9.x.zip
    unzip greengrass-dependency-checker-GGCv1.9.x.zip
    cd greengrass-dependency-checker-GGCv1.9.x
    sudo modprobe configs
    sudo ./check_ggc_dependencies | more
    
    

    重要

    使用此教程需要拥有 \(Python 2.7\)check_ggc_dependencies 脚本可能生成有关缺失的可选 \(Node.js\)\(Java\) 先决条件的警告。可以忽略这些警告。

到此,树莓派基本配置完成。

posted @ 2019-11-13 13:26  Hi,Simon  阅读(336)  评论(0编辑  收藏  举报