Ubuntu20.04 构建并运行ONOS

▼魔方 西西 提交于 2020-12-08 20:00:52

一、安装 Bazel

在 Ubuntu 上安装Bazel有以下几种方式:

  1. 通过 npm 安装
    npm install -g @bazel/bazelisk
    
    这种方式需要安装 nodejs ,命令为 sudo apt install nodejs
  2. 使用 Bazel 的 apt 仓库
    步骤1:将 Bazel 发行版 URI 添加为包源
    sudo apt install curl gnupg
    curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor > bazel.gpg
    sudo mv bazel.gpg /etc/apt/trusted.gpg.d/
    echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
    
    步骤2:安装和更新Bazel
    sudo apt update && sudo apt install bazel
    

二、获取ONOS源码

确保已安装git,然后创建源存储库的本地克隆:

git clone https://gerrit.onosproject.org/onos

如果下载比较慢,可以通过gitee

git clone https://gitee.com/mirrors/onos.git

三、构建

进入onos文件夹

cd onos

通过git tag可以查看版本列表,通过git checkout 版本号可以选择其中的版本,默认是最新

执行构建

bazel build onos

这一步要下载很多包,需要很久,而且可能会报一些错误,例如:

一般是网络问题,可以多次执行bazel build onos

最后出现这个,表示已经构建成功

四、运行

执行命令

bazel run onos-local

要附加到ONOS CLI控制台,可以运行

./tools/test/bin/onos localhost


连接后,可以运行各种ONOS CLI和Apache Karaf命令。例如,要启动 OpenFlow 和 ReactiveForwarding 应用程序,可以执行以下操作:

app activate org.onosproject.openflow
app activate org.onosproject.fwd


通过浏览器访问 http://localhost:8181/onos/ui

账号是onns,密码是rocks




要启动由已在开发计算机上运行的ONOS实例控制的Mininet网络,可以使用以下命令:

sudo mn --switch ovs,protocols=OpenFlow13 --controller remote


在onos gui显示情况:


测试的时候发现:openflow11和openflow12版本,onos解析不了,不懂什么原因

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!