本章我们以开源OpenDaylight控制器为例,分享如何搭建、配置和维护SDN控制器等内容。
官网链接:https://docs.opendaylight.org/en/latest/getting-started-guide/index.html
选择OpenDaylight控制器的原因:广泛的支持和活跃的社区:OpenDaylight是一个开源项目,拥有广泛的开发者和用户社区。这意味着有大量的文档、用户指南以及社区支持,可以帮助解决实施过程中的问题。丰富的功能:ODL提供了广泛的网络功能支持,包括但不限于SDN控制、网络功能虚拟化(NFV)、网络编排和自动化。良好的兼容性:ODL支持多种网络协议和标准,包括OpenFlow、Netconf、BGP-LS等,能够与多种厂商的网络设备良好地协作。强大的性能和可扩展性:适用于从小型实验网络到大型企业级部署。OpenDaylight部署安全注意事项:若想在隔离的测试/实验室环境之外运行OpenDaylight,请参阅:https://docs.opendaylight.org/en/latest/getting-started-guide/security_considerations.html#security-deployment-recommendations

wget https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.20.0/karaf-0.20.0.tar.gz //官网下载相应版本的ODLtar -xvf karaf-0.20.0.tar.gz //解压到自定义目录yum install -y java-21-openjdk-devel.aarch64 //Karaf需要Java17或更高版本来运行java -verison //查看系统上安装的Java版本update-alternatives --config java //找出你的Java安装路径export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-21.0.2.0.13-1.el9.aarch64/export PATH=$JAVA_HOME/bin:$PATH //设置JAVA_HOME环境变量,使其指向你的Java安装目录echo "export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-21.0.2.0.13-1.el9.aarch64/" >> ~/.bashrcecho "export PATH=\$JAVA_HOME/bin:\$PATH" >> ~/.bashrcsource ~/.bashrc //添加到~/.bashrc或~/.bash_profile文件中,以便在每次登录时自动设置这些变量cd /root/karaf-0.20.0./bin/karaf //启动Karaf
opendaylight-user@root> feature:install <feature1> <feature2> ... <featureN-name>opendaylight-user@root> feature:install odl-openflowplugin-all odl-l2switch-switch
注意:
出于兼容性考虑,不能同时启用所有Karaf feature(特性),同时并不是所有的self+all特性组合都经过了测试,因此在实际应用中可能需要额外的验证。以下是关于特性(feature)安装名称和已知兼容性问题的说明,以及对兼容性值的解释:all - 表示该特性可以与其他任何特性一起运行。self+all - 表示该特性可以与其他标记为all的特性一起安装,但可能与其他标记为self+all的特性发生冲突。如何判断特性的兼容性类别要确定某个特性是属于all还是self+all,通常特性的兼容性信息会在OpenDaylight的官方文档或社区维护的资料中有所记录。
opendaylight-user@root>feature:info odl-bgpcep-bgp-linkstateFeature odl-bgpcep-bgp-linkstate 0.21.4Description: OpenDaylight :: BGP :: RIB LinkstateDetails: odl-bgpcep-bgp-linkstateFeature has no configurationFeature has no configuration filesFeature depends on: odl-mdsal-broker [9,10) odl-mdsal-rfc8294-netty [13,14) odl-bgpcep-bgp-extensions-api 0.21.4 odl-bgpcep-rsvp 0.21.4 odl-mdsal-uint24-netty 0.0.0Feature contains followed bundles: mvn:org.opendaylight.bgpcep/bgp-linkstate/0.21.4Feature has no conditionals.opendaylight-user@root>
要卸载特性,必须先关闭OpenDaylight,然后删除数据目录,最后重新启动OpenDaylight。
不支持使用feature:uninstall命令卸载功能,该命令可能会导致意想不到的后果。
命令参数:feature:list //列出Karaf功能的完整列表feature:list -i //列出已安装的Karaf功能 Name:功能模块的名称。 Version:功能模块的版本号。 Required:若标记为 "x",表示此功能是被显式要求启动的。 State:当前功能的状态,"Started" 表示已经启动并运行。 Repository:功能所属的仓库。 Description:对功能的简短描述。
opendaylight-user@root>feature:install odl-bgpcep-bgp-cli odl-bgpcep-bgp-linkstate odl-netconf-all //安装BGP-LS功能以及NetConf的所有功能
!
!
!
【点赞】、【关注】不走丢~~
!
!
!
【点赞】、【关注】不走丢~~