Happy 仅在 Linux 上受支持,因为它严重依赖于 Linux 网络命名空间。
安装
- 安装所需的库:
sudo apt-get install python-setuptools bridge-utils python-lockfile python-psutil make - 克隆代码库:
git clone https://github.com/openweave/happy.git - 安装 Happy:
cd happymakemake命令会执行两项任务:- 在
/usr/local/lib/python2.7/dist-packages创建 Happy Python 软件包 - 将 Happy shell 脚本复制到
/usr/local/bin
- 在
- 通过运行 Happy 命令验证安装:
happy-stateState Name: happyNETWORKS Name Type State PrefixesNODES Name Interface Type IPs
支持 Weave
Happy 通过 OpenWeave 支持 Weave,这需要 OpenWeave build 和一些额外的配置。将 OpenWeave 与 Happy 集成的最快方法是构建独立应用。
- 安装构建工具链以及 OpenWeave 所需的所有依赖项:
sudo apt-get updatesudo apt-get install -y autotools-dev build-essential git lcov /libdbus-1-dev libglib2.0-dev libssl-dev /libudev-dev python2.7 python-software-propertiessudo apt-get install -y --force-yes gcc-arm-none-eabisudo apt-get update -qq - 克隆 OpenWeave 代码库:
git clone https://github.com/openweave/openweave-core.git - 构建独立的 OpenWeave 应用:
cd <path-to-openweave-core>make -f Makefile-Standalone - 在 Happy 配置中设置 Weave 路径:
happy-configuration weave_path <path-to-openweave-core>/build/x86_64-unknown-linux-gnu/src/test-apps - 更新
$PATH环境变量,以便它知道在哪里可以找到与 Weave 相关的 Happy 二进制文件:export PATH=$PATH:<path-to-openweave-core>/src/test-apps/happy/bin - 测试该配置。您应该能够为 Happy 运行 Weave 命令:
weave-stateState Name: weaveNODES Name Weave Node Id Pairing CodeFABRIC Fabric Id Global Prefix
卸载
- 确保已删除所有虚拟节点和网络:
happy-state-delete - 卸载 Happy:
cd <path-to-happy>make uninstall - 删除所有其他 Happy 文件:
rm -f ~/.happy_state.jsonrm -f ~/.happy_conf.jsonrm -f ~/.happy_state.json.lockcd /usr/local/lib/python2.7/dist-packagesrm -f happy*
如果您使用并发状态等高级功能,则应单独删除每个状态。如需了解详情,请参阅在并行状态下卸载。