Ubuntu20.04 构建并运行ONOS

一、安装 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解析不了,不懂什么原因

posted @ 2020-11-20 22:09  cyquen  阅读(1350)  评论(0编辑  收藏  举报