云原生

版本:25.03

使用方法

网卡配置

shell
# 修改网卡MTU
[root@openEuler ~]# ifconfig ens33  mtu 4200

# ens33上增加一个rxe接口,提供IB功能
[root@openEuler ~]# rdma link add rxe_0 type rxe netdev ens33

开发应用实例

首先需要基于CTinspector框架,调用相应接口开发特定场景的应用。其次将该应用实例编译构建成基于ebpf指令集的二进制ELF文件。以CTinpsector自带的ebpf_example中vm_migrate为例进行说明,vm_migrate调用CTinpsector框架,可以在不同节点之间不断迁移packet VM,可以从上一个节点迁移时的运行位置在下一个节点接着运行。

shell
# 编写Makefile并设置ebpf指令集
CFLAGS=-O2 -fno-inline -emit-llvm -I/usr/include/ctinspector/
LINKFLAGS=-march=bpf -filetype=obj

all: vm_migrate.o 

vm_migrate.o:
 clang $(CFLAGS) -c migrate.c -o - | llc $(LINKFLAGS) -o vm_migrate.o

clean:
    rm -f vm_migrate.o
shell
# make进行编译构建
[root@openEuler ~]# make
clang -O2 -fno-inline -emit-llvm -I/usr/include/ctinspector/ -c migrate.c -o - | llc -march=bpf -filetype=obj -o vm_migrate.o

运行应用实例

Node 1上运行vm_migrate   Node 2上运行CTinpsect主程序