本文主要介绍在Ubuntu16.0.4系统下如何安装onos-1.6.0。
1 工具和原料
Java8 JDK
ApacheMaven(3.0及更新版本)
ApacheKaraf(3.0.5及更新版本)
Git(如果不用git获取源码,可以不需要安装git,我这里都是事先下载好的源码包)
2 安装依赖
2.1 安装Java8
Ubuntu安装JDK的两种方式:
通过ppa(源)方式安装
通过官网下载压缩包安装
注:推荐使用第一种方式,因为这种方式可以使用apt-get upgrade方式方便获取jdk的升级,但我这里因为网速的原因,就是使用了第二种方式安装。
压缩包安装分一下5个步骤:
2.1.1 官网下载JKD包
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
选择linux x64平台的tar.gz包下载
2.1.2 解压缩到指定目录
这里使用jdk-8u102-linux-x64.tar.gz进行安装。
创建目录
sudo mkdir /usr/lib/jvm
解压到该目录
sudo tar -zxvf jdk-8u102-linux-x64.tar.gz-C /usr/lib/jvm
2.1.3 配置环境变量
vim ~/.bashrc
在文件末尾追加一下内容:
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
使环境变量立即生效:
source ~/.bashrc
2.1.4 设置系统默认JDK
sudo update-alternatives --install /usr/bin/javajava /usr/lib/jvm/jdk1.8.0/bin/java 300
sudo update-alternatives --install /usr/bin/javacjavac /usr/lib/jvm/jdk1.8.0/bin/javac 300
2.1.5 测试结果
java –version
2.2 安装apache-karaf
通过sftp工具将下载好的apache-karaf文件包上传到Downloads目录(apache-karaf使用3.0.5及以上版本,这里使用apache-karaf-3.0.8.tar.gz)。
创建Applications文件夹(用于安装karaf和maven)
mkdir ~/Applications
进入Downloads目录
cd Downloads/
将apache-karaf-3.0.8.tar.gz解压到Applications目录
tar -zxvf apache-karaf-3.0.8.tar.gz -C ~/Applications
2.3 安装apache-maven
通过sftp工具将下载好的apache-maven文件包上传到Downloads目录(apache-maven使用3.0及以上版本,这里使用apache-maven-3.3.9-bin.tar.gz)。
进入Downloads目录
cd Downloads/
将apache-maven-3.3.9-bin.tar.gz解压到Applications目录
tar -zxvf apache-maven-3.3.9-bin.tar.gz -C ~/Applications
设置apache-maven环境变量,编辑~/.bashrc文件
vim ~/.bashrc
在文件末尾添加一下几行内容:
exportM2_HOME=/home/dev/Applications/apache-maven-3.3.9
export PATH=$PATH:$M2_HOME/bin
使环境变量立即生效
source ~/.bashrc
验证maven安装结果
mvn –v,显示一下内容则证明安装成功:
3 安装ONOS
3.1 下载ONOS源码
下载地址:https://github.com/opennetworkinglab/onos/archive/1.6.0.zip
wgethttps://github.com/opennetworkinglab/onos/archive/1.6.0.zip
下载目录没有要求,这里下载到~/Downloads目录下。
创建工作目录
mkdir~/workspace
进入Downloads目录
cd ~/Downloads
解压onos源码到~/workspace目录下
unzip onos-1.6.0.zip-d ~/workspace
3.2 环境变量设置
构建onos之前,需要设置ONOS_ROOT和KARAF_ROOT两个环境变量。
打开~/.bashrc文件
vim ~/.bashrc
在文件尾部加入如下内容:
export ONOS_ROOT=/home/dev/workspace/onos-1.6.0
exportKARAF_ROOT=/home/dev/Applications/apache-karaf-3.0.8
export PATH=$KARAF_ROOT/bin:$PATH
保存并退出
使环境变量立即生效,执行下面的命令
source ~/.bashrc
3.3 构建ONOS
onos默认使用的是apache-karaf-3.0.5,所以我们需要编辑一下onos的bash_profile和features.xml。
vim $ONOS_ROOT/features/features.xml
修改
保存退出。
vim $ONOS_ROOT/tools/dev/bash_profile
修改export KARAF_VERSION=${KARAF_VERSION:-3.0.5}为export KARAF_VERSION=${KARAF_VERSION:-3.0.8},和前面配置的karaf版本保持一致。
使环境变量立即生效,执行下面的命令
source $ONOS_ROOT/tools/dev/bash_profile
为了加快编译速度,可以打开lib目录下的pom.xml文件,把代码风格检查注释掉。
vim $ONOS_ROOT/lib/pom.xml
找到maven-checkstyle-plugin插件,将下面的内容注释掉
进入onos根目录
cd ~/$ONOS_ROOT
mvn clean install(在这里可以使用mvn clean install –DskipTests跳过测试用例)
进入漫长的等待……
看到这个界面,觉得这十几分钟等待还是挺值得的,恭喜你,编译通过了。
3.4 运行ONOS
在运行之前,需要设置一下ONOS_IP的值
export ONOS_IP=172.16.132.75(此处IP换成自己使用的地址)
启动onos
ok clean
又是一阵等待……
直到看到这个醒目的红色ONOS标识,到了这里,我们距离成功已经很近了,去检验一下吧。
3.5 验证安装结果
再打开一个命令行窗口,执行下面的命令
netstat -anput | grep 6633
netstat -anput | grep 8181
看到上面的结果,说明我们控制器安装成功了。
也可以直接在karaf的控制台,使用list命令查看模块加载的情况。
打开浏览器,在地址栏输入http://
4 测试ONOS
一般都是使用mininet模拟Openflow网络进行测试,网上有很多这方面的文章,这里就不再写了。