首页 > 代码库 > Ubuntu14.04源码安装ONOS

Ubuntu14.04源码安装ONOS

技术分享

ONOS可以安装在OS X和Ubuntu14.04系统中,本文主要介绍在Ubuntu14.04系统下如何源码安装ONOS。

1 系统要求

安装ONOS对操作系统有如下要求

  • Ubuntu Server 14.04 LTS 64-bit
  • 2GB or more RAM
  • 2 or more processors

需要安装如下软件,如果不用git获取源码,GIT可以不需要安装。

  • Java 8 JDK (Oracle Java recommended; OpenJDK is not as thoroughly tested)
  • Apache Maven (3.0 and later)
  • git
  • bash (for packaging & testing)
  • Apache Karaf (3.0.2 and later)

2 安装依赖

2.1 安装apache-karaf

apache-karaf的版本为3.0.2或以上版本,本文就是安装的3.0.2版本。创建~/Applications目录,下载apache-karaf。为什么要安装到这个目录?是因为onos源码中已经设置将apache-karaf放到~/Applications目录。当然这个目录也可以变更,但是为了避免不必要的操作,笔者姑且也这么做。

 
 
 
 
 
Shell
 
1
2
3
4
# mkdir /root/Applications
# cd /root/Applications
# wget http://apache.fayea.com/karaf/3.0.2/apache-karaf-3.0.2.tar.gz
# tar -xzf apache-karaf-3.0.2.tar.gz

 

2.2 安装apache-maven

apache-maven的版本至少为3.0,笔者安装版本3.2.3。操作如下:

 
 
 
 
 
Shell
 
1
2
3
# wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.2.3/binaries/apache-maven-3.2.3-bin.tar.gz
# tar -xzf apache-maven-3.2.3-bin.tar.gz
# mv apache-maven-3.2.3 /usr/local/apache-maven

设置apache-maven的环境变量,编辑/etc/profile,添加如下几行命令

 
 
 
 
 
Shell
 
1
2
export M2_HOME=/usr/local/apache-maven
export PATH=$PATH:$M2_HOME/bin

然后执行

 
 
 
 
 
Shell
 
1
# source /etc/profile

 

2.3 安装Java 8

安装java8有多种方法,笔者就按照官网提供的方法操作。

 
 
 
 
 
Shell
 
1
2
3
$ sudo add-apt-repository ppa:webupd8team/java -y
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer oracle-java8-set-default -y

执行下面的操作后,设置JAVA_HOME。编辑/etc/profile文件,添加下面一行。

 
 
 
 
 
Shell
 
1
export JAVA_HOME=/usr/lib/jvm/java-8-oracle

然后执行

 
 
 
 
 
Shell
 
1
# source /etc/profile

正确安装后,java -version和mvn --version打印的java版本应该一致。

3 安装 ONOS

3.1 下载ONOS源码

下载ONOS源码,目录没有要求,笔者把源码下载到/home/onos目录中

 
 
 
 
 
Shell
 
1
2
3
4
# wget https://github.com/opennetworkinglab/onos/archive/onos-1.0.zip
# unzip onos-1.0.zip
# ls //查看解压后的文件
onos-1.0.zip  onos-onos-1.0

 

3.2 环境设置

安装ONOS之前,需要设置ONOS_ROOT和KARAF_ROOT的路径,连同上的操作,笔者在/etc/profile文件中设置如下:

 
 
 
 
 
Shell
 
1
2
3
4
5
export ONOS_ROOT=/home/onos/onos-onos-1.0
export KARAF_ROOT=/root/Applications/apache-karaf-3.0.2
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
export M2_HOME=/usr/local/apache-maven
export PATH=$PATH:$M2_HOME/bin

然后再执行

 
 
 
 
 
Shell
 
1
2
# source /etc/profile
# source $ONOS_ROOT/tools/dev/bash_profile

 

3.3 构建ONOS

 

 
 
 
 
 
Shell
 
1
2
# cd onos-onos-1.0/
# mvn clean install

如果出现下面的提示,说明成功。 技术分享

3.4 运行ONOS

3.4.1 初始化配置

需要编辑$KARAF_ROOT/etc/org.apache.karaf.features.cfg文件,本文即为/root/Applications/apache-karaf-3.0.2/etc/org.apache.karaf.features.cfg

添加下面的内容到 featuresRepositories:

 
 
 
 
 
Shell
 
1
mvn:org.onosproject/onos-features/1.0.0/xml/features

编辑好如下 技术分享 添加下面的内容到featuresBoot:

 
 
 
 
 
Shell
 
1
onos-api,onos-core-trivial,onos-cli,onos-openflow,onos-app-fwd,onos-app-mobility,onos-gui

编辑好如下 技术分享

3.4.2 启动ONOS

在本机机器上运行ONOS

 
 
 
 
 
Shell
 
1
# karaf clean

技术分享

3.5 验证安装

查看ONOS的WEB监听端口 技术分享

查看ONOS的OF监听端口 技术分享

访问WEB,地址为http://your_host_ip:8181/onos/ui/index.html 技术分享

4 测试ONOS

下面的主要用Mininet对安装好的ONOS进行简单的测试。

4.1 验证ONOS在OpenFlow1.0下的工作情况。

1、用Mininet创建一个网络拓扑,指定ONOS控制器,使用OpenFlow1.0协议:

 
 
 
 
 
Shell
 
1
2
3
# mn --topo tree,depth=2,fanout=2 --mac
--controller=remote,ip=192.168.5.127,port=6633 --switch
ovsk,protocols=OpenFlow10

2、测试Mininet的主机通信

技术分享

3、查看ONOS的WEB界面。

技术分享

4、以上现象说明ONOS控制器可以在OpenFlow1.0协议下正常工作。

4.2 验证ONOS在OpenFlow1.3下的工作情况。

1、用Mininet创建一个网络拓扑,指定ONOS控制器,使用OpenFlow1.3协议:

 
 
 
 
 
Shell
 
1
# mn --topo tree,depth=2,fanout=3 --mac --controller=remote,ip=192.168.5.127,port=6633 --switch ovsk,protocols=OpenFlow13

2、测试Mininet的主机通信 技术分享 3、查看ONOS的WEB界面。 技术分享 4、以上现象说明ONOS控制器可以在OpenFlow1.3协议下正常工作。

后语: 更多的操作请参考ONOS官网。

文章来自http://www.sdnlab.com/4603

Ubuntu14.04源码安装ONOS