Open vSwitch 2.9.2 创建 RPM 安装包

本文详细介绍了在Linux环境下,如何从源码编译安装OpenvSwitch 2.9.2版本,并结合DPDK进行配置,以实现高性能的数据包处理。包括创建rpmbuild目录结构、下载及解压源码、配置编译参数、编译用户态和内核态模块等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装依赖环境

yum install gcc make python-devel openssl-devel graphviz autoconf automake rpm-build redhat-rpm-config libtool 

 

2.下载 kernel 源码:

yum install "kernel-devel-uname-r == $(uname -r)"

 

3.创建rpmbuild目录结构

mkdir rpmbuild/{BUILD,SOURCES,SPECS,RPMS,BUILDROOT} -pv

 

4.下载源码,解压,编译

cp openvswitch-2.9.2.tar.gz rpmbuild/SOURCES/

 

tar -xvf openvswitch-2.9.2.tar.gz

cp openvswitch-2.9.2/rhel/openvswitch.spec rpmbuild/SPECS/

cp openvswitch-2.9.2/rhel/openvswitch-kmod-rhel6.spec rpmbuild/SPECS/

 

5.编译Open vSwitch 2.9.2 用户态模块

rpmbuild -bb rpmbuild/SPECS/openvswitch.spec --nocheck

 

6.编译Open vSwitch 2.9.2 内核态模块

rpmbuild -bb rpmbuild/SPECS/openvswitch-kmod-rhel6.spec

 

DPDK编译:

cd dpdk-18.02 && make install T=x86_64-native-linuxapp-gcc DESTDIR=.

openvswitch.spec 配置更改:
# 增加dpdk的选项

%build
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=%{_localstatedir} \
--libdir=%{_libdir} --enable-ssl --with-dpdk=/root/dpdk-18.02

# 修改libdir文件安装


%{_libdir}/lib*.so.*

%{_libdir}/lib*.so


这两行改成:

%{_libdir}/*

 

# ovs 初始化
ovs-vsctl --no-wait init
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="1024,0"
ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask=0xf

 

ovs-vsctl add-br br-int -- set bridge br-int datapath_type=netdev
ovs-vsctl add-port br-int vhostuser0 -- set Interface vhostuser0 type=dpdkvhostuserclient options:vhost-server-path="/var/run/openvswitch/vhostuser0"
ovs-vsctl add-port br-int vhostuser1 -- set Interface vhostuser1 type=dpdkvhostuserclient options:vhost-server-path="/var/run/openvswitch/vhostuser1"

转载于:https://www.cnblogs.com/wangjq19920210/p/10509511.html

<think>好的,用户问的是如何在Ubuntu终端里查看Open vSwitch的版本和安装包的地址。我需要先回忆一下相关的命令,确保步骤正确。 首先,关于版本查询。用户可能已经安装了Open vSwitch,或者只是想知道如何检查现有版本。常用的方法是用ovs-vsctl命令,这个命令通常是在安装Open vSwitch之后可用的。记得ovs-vsctl -V中的V是大写,这样才会显示版本信息。如果用户没有安装,这个命令可能不存在,这时候可能需要指导他们如何安装。 另一个方法是使用dpkg来查询已安装的包。dpkg -l openvswitch-switch可以列出安装的版本,但可能用户需要知道确切的包名,或者可能有其他相关包,比如openvswitch-common。可能需要提醒用户检查相关的包。 然后是安装包的地址。在Ubuntu中,软件包通常来自配置的软件源。使用apt policy openvswitch-switch可以显示包的来源仓库地址,包括安装的版本和可用的版本。如果用户没有安装,可能需要用apt-cache policy来查看。此外,用户可能想知道如何找到下载的.deb文件的位置,这时候可以用dpkg -L来列出已安装包的文件路径,不过通常安装包是从网络源下载的,本地可能不保留,除非用户手动下载了。 另外,如果用户没有安装Open vSwitch,可能需要指导他们如何安装,比如用apt install命令,或者从源码安装,但用户的问题主要是关于查询版本和地址,可能不需要详细安装步骤,但作为补充信息可能有帮助。 还需要考虑用户可能遇到的常见问题,比如命令不存在,这时候需要判断是否未安装,并给出相应的建议。比如,如果ovs-vsctl命令找不到,可能需要先安装openvswitch-switch包。 另外,要确保命令的正确性,比如使用sudo是否有必要。比如ovs-vsctl可能不需要sudo,但dpkg和apt相关命令可能需要,特别是如果用户没有权限的话。 最后,结构要清晰,分步骤说明,让用户能够一步步跟随操作。可能需要分两部分:查看版本和查看安装包地址,每个部分再分不同的方法。</think>以下是在Ubuntu终端查看Open vSwitch版本及安装包地址的详细步骤: --- ### 一、查看Open vSwitch版本 #### 方法1:通过OVS工具直接查询 ```bash ovs-vsctl -V ``` - 输出示例: `ovs-vsctl (Open vSwitch) 2.17.3` 最后一行会显示具体版本号(例如2.17.3) #### 方法2:通过dpkg查询已安装包 ```bash dpkg -l openvswitch-switch ``` - 输出示例: ``` ii openvswitch-switch 2.17.3-0ubuntu0 amd64 Open vSwitch switch implementations ``` `ii`表示已安装,第二列是版本号 --- ### 二、查看安装包来源地址 #### 方法1:通过apt策略查询 ```bash apt policy openvswitch-switch ``` - 输出示例: ``` openvswitch-switch: 已安装:2.17.3-0ubuntu0 候选版本:2.17.3-0ubuntu0 版本列表: *** 2.17.3-0ubuntu0 500 500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages 100 /var/lib/dpkg/status ``` 关键字段`http://archive.ubuntu.com/ubuntu`即为软件源地址 #### 方法2:通过apt-cache查询 ```bash apt-cache show openvswitch-switch | grep -E "Version|Filename" ``` - 输出示例: ``` Version: 2.17.3-0ubuntu0 Filename: pool/universe/o/openvswitch/openvswitch-switch_2.17.3-0ubuntu0_amd64.deb ``` `Filename`字段显示在仓库中的具体路径 --- ### 三、附加说明 1. **未安装时的处理**: 若提示`ovs-vsctl: command not found`,说明未安装,可先执行安装: ```bash sudo apt update && sudo apt install openvswitch-switch ``` 2. **查看本地deb包路径**(已安装时): ```bash dpkg -L openvswitch-switch ``` 会列出所有已安装文件路径(通常在`/usr/share/openvswitch`) 3. **源码包查询**: ```bash apt-get source openvswitch-switch ``` 会在当前目录下载并解压源码包 --- 以上方法均基于APT包管理系统,适用于通过官方仓库安装的OVS。若通过源码编译安装,需在编译目录通过`git log`或源码文件查看版本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值