SONiC镜像编译指南

2019-05-23 19:09

1.准备工作

在一台Linux系统的主机或服务器上安装最新版本的 docker CE,然后再进行接下来的操作。

创建Linux操作系统用户nocsys,且该用户要加入docker 用户组中:

sudo useradd -d  /home/nocsys  -m  -g docker nocsys 

设定nocsys用户的密码:

sudo passwd nocsys

编辑 /etc/sudoers ,在最后一行添加:

nocsys     ALL=(ALL:ALL) NOPASSWD:ALL

切换到刚才创建的nocsys用户:

su – nocsys

加载内核模块:

sudo modprobe overlay

.

2.从SONiC社区代码库克隆代码:

git clone https://github.com/Azure/sonic-buildimage.git

cd sonic-buildimage

切换代码分支。建议选择最近发布的代码分支,比如本文选择截止目前最新的分支201904:



3.修改配置文件rules/config中的参数

将交换机admin用户密码改为nocsys :

将L3 功能改为基于frr : 



4.编译交换机NOS镜像

网络良好的情况下,完成下列编译工作大约需要三个小时。如果是克隆代码后的第一次编译,所花时间会更长。

make init 

根据交换机型号选择正确的的交换芯片平台(如果不清楚ASIC平台的话,可以去SONiC社区这个网页查找: https://github.com/Azure/SONiC/wiki/Supported-Devices-and-Platforms)。如果是Barefoot交换机,交换平台代码就是 p4。而 broadcom则代表基于博通ASIC的交换机:

make configure PLATFORM=broadcom

编译跟Debian 9 Stretch发行版相关的包:

BLDENV=stretch make stretch

编译最终的SONiC操作系统镜像:

make target/sonic-broadcom.bin

编译完成后在target目录下生成文件名为“sonic-broadcom.bin”的SONiC镜像:

  • 分享:

发表评论

诺云Blog

诺云Blog给你的有,最新的技术介绍、网络产业的分享、以及丰富的精选文章。

热线电话
在线客服
咨询信箱