前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ONOS1.3.0集群实验

ONOS1.3.0集群实验

作者头像
SDNLAB
发布2018-04-03 12:12:47
8580
发布2018-04-03 12:12:47
举报
文章被收录于专栏:SDNLABSDNLAB

1.环境准备与实验内容

本次集群安装准备了四台虚拟机:

  • VM1:oxp@192.168.0.71
  • VM2:oxp@192.168.0.72
  • VM3:oxp@192.168.0.73
  • VM4:onos@192.168.0.74

注意:在将要部署为集群的VM1、VM2、VM3上使用了相同的组名oxp,相同的用户名oxp(组名和用户名可不同),这样方便进行集群部署,减少配置和打包操作!

系统要求:

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

主要内容: 在VM4上安装ONOS,并向VM1-VM3部署ONOS,形成VM1-VM2-VM3的ONOS集群。并使用Mininet构建的虚拟网络与集群连接,进行相关实验。

2.在VM4上使用源码安装ONOS1.3.0

参照文章《ubuntu14.04下源码安装ONOS1.3.0》进行。

3.集群部署前的准备工作

3.1设置免密sudo、生成SSH密钥

需要在VM1-VM3上设置sudo,在VM1-VM4上生成SSH密钥,分别执行下面步骤:

首先,在VM1-VM3上执行:

代码语言:javascript
复制
$ sudo visudo

编辑配置,在文件末尾添加行:

代码语言:javascript
复制
user_name ALL=(ALL) NOPASSWD:ALL

在user_name为用户名,本实验中为oxp。Ctrl+O,Ctrl+X保存退出。

其次,在VM1-VM4上进行:

代码语言:javascript
复制
$ ssh-keygen -t rsa

3.2使用cell配置集群参数

代码语言:javascript
复制
$ cd  cd ~/onos/tools/test/cells
$ vim triple.test

triple.test是本次实验新建的配置文件,编辑如下

代码语言:javascript
复制
#ONOS Controller VM instances 1,2,3 and a Mininet VM
export OC1="192.168.0.71"
export OC2="192.168.0.72"
export OC3="192.168.0.73"
export OCN="192.168.0.74"  # Mininet VM
       
# for node clustering
export ONOS_NIC=”192.168.0.*”   
#ONOS APPS to load
export ONOS_APPS="drivers,openflow,fwd,proxyarp,mobility" 
 
# ONOS features to load
export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-openflow,onos-app-fwd,onos-app-mobility,onos-app-tvue"
 
#VM1-VM3 USER && GROUP
export ONOS_USER="oxp"
export ONOS_GROUP="oxp" 
$ cell triple.test          #应用triple.test中的配置参数,这一步一定要进行!!!

注意:cell文件中最后两行的ONOS_USER和ONOS_GROUP的值分别填写VM1-3的用户名和组名,这里如果与VM1-3的用户名和组名不对应将无法部署!

3.3建立VM4到VM1-VM3的SSH免密登录

这里以建立VM4到VM1的SSH的免密登录为例:

代码语言:javascript
复制
$ onos-push-keys  $OC1          #OC1的值如triple.test文件中所设定
oxp@192.168.0.71's password:            #这里会要求输入密码,即为SSH登录192.168.0.71的密码

按照上面操作依次建立VM4到VM2、VM3的SSH免密登录。

4.部署集群

4.1打包ONOS

这一步将VM4中安装好的ONOS按照cell的配置打包,打包后的文件可以用来部署到其他机器。

代码语言:javascript
复制
$ onos-package

打包结果如下:

代码语言:javascript
复制
-rw-rw-r-- 1 onos onos 96M Nov  5 14:52 /tmp/onos-1.3.0.onos.tar.gz

4.2向集群中的机器部署ONOS

这一步将刚才在VM4上打包好的ONOS部署到VM1-VM3三台虚拟机上 以部署到VM1为例,第一次部署时可能会提示输入密码,此时输入SSH到VM1的密码即可:

代码语言:javascript
复制
$ onos-install -f $OC1    #部署到VM1,-f表示强制安装;如果VM1上已经有ONOS在,可以加上此参数

返回结果:

代码语言:javascript
复制
onos start/running, process 23232  表示部署成功

然后,按照上面操作,依次部署到VM2、VM3上。 在以后的部署过程中,可以使用下面的命令简化操作,同时部署三台机器,但第一次部署时应分别执行onos-install:

代码语言:javascript
复制
$ onos-group install -f 

返回结果:

代码语言:javascript
复制
onos start/running, process 14508
onos start/running, process 19601
onos start/running, process 25194 

说明:ONOS被部署到虚拟机上后,所在的目录为:/opt/onos 

5.集群环境验证

5.1运行集群中的ONOS实例

可以通过本地和远程两种方式运行集群中的ONOS实例, 方法一,本地运行: 登录onos所在的VM,以VM1为例,在VM1上执行操作:

代码语言:javascript
复制
VM1:$ cd /opt/onos/     #进入ONOS目录
VM1:$ cd /apache-karaf-3.0.3/bin          #进入Karaf执行目录
VM1:$  ./karaf clean          #运行本地ONOS实例

方法二,远程运行: 在VM4上可以远程开启刚才部署的机器上的ONOS实例,以VM2为例,在VM4上执行操作:

代码语言:javascript
复制
VM4:$ onos $OC2        #运行VM2上的ONOS实例 

5.2使用Mininet连接集群进行测试

1.使用Mininet连接到一台ONOS实例

2.登陆web查看

c.进行负载均衡 在mininet中设置一些switch可连接的controller

在ONOS中进行负载均衡

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-11-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SDNLAB 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.环境准备与实验内容
  • 2.在VM4上使用源码安装ONOS1.3.0
  • 3.集群部署前的准备工作
    • 3.1设置免密sudo、生成SSH密钥
      • 3.2使用cell配置集群参数
        • 3.3建立VM4到VM1-VM3的SSH免密登录
        • 4.部署集群
          • 4.1打包ONOS
            • 4.2向集群中的机器部署ONOS
            • 5.集群环境验证
              • 5.1运行集群中的ONOS实例
                • 5.2使用Mininet连接集群进行测试
                相关产品与服务
                负载均衡
                负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档