安装部署
- 常规应用场景均需安装部署libvirt基础组件。
- VSched服务包含vas-daemon和vas-cli两个二进制文件,文件用户和用户组均为root,文件权限均为500。
- 服务部署路径为“/usr/local/vas/”。
- VSched调度策略支持静态绑核模式与动态绑核模式,默认为静态绑核模式。动态绑核模式参见VSched动态绑核模式部署。
- 参照软件包获取,获取软件包BoostKit-boostvirt-vas-1.0.0.zip,解压获取boostvirt-vas-1.0.0.rpm。
- 在所有业务节点检查是否安装libsecurec。
- 执行以下命令检查节点是否已安装libsecurec。
rpm -qa | grep libsecurec
- 若已安装libsecurec软件则继续后续操作步骤,若未安装可通过软件源进行安装。
yum install libsecurec
- 执行以下命令检查节点是否已安装libsecurec。
- 在所有业务节点检查是否安装libvirt虚拟化软件,并进行配置。
- 在所有业务节点安装boostvirt-vas-1.0.0.rpm包。
- 查询环境上是否已安装boostvirt-vas-1.0.0.rpm。
rpm -qa| grep vas-daemon
若环境中已安装该rpm包,则需进行卸载以确保环境清洁。
rpm -e boostvirt-vas-1.0.0
- 进入RPM包存储目录下并进行安装。
rpm -ivh boostvirt-vas-1.0.0.rpm
若UBS virt-awaresched的RPM包安装提示如下内容,需根据提示检查相应组件是否已安装部署,如未安装,则需安装相应组件。
Failed dependencies
- 查询环境上是否已安装boostvirt-vas-1.0.0.rpm。
- 在业务节点完成安装后,可启动vas-daemon进程。
- 检查vas-daemon进程现状。
systemctl status vas-daemon
若服务未启动,可执行以下命令启动服务。systemctl start vas-daemon
- 可选:参照配置说明更改服务配置文件“/usr/lib/systemd/system/vas-daemon.service”。
[Unit] Description=virtual machine schedule daemon After=network.target [Service] Type=simple User=root Group=root RestartSec=5s CPUQuota=100% MemoryLimit=128M ExecStart=/usr/local/vas/bin/vas_daemon start server -smt true --sched-policy affinity --dynamic-util-thresh 85 --skip-cpuset "" --range-affinity true Restart=on-failure CapabilityBoundingSet=CAP_CHOWN CAP_DAC_OVERRIDE AmbientCapabilities=CAP_CHOWN CAP_DAC_OVERRIDE [Install] WantedBy=multi-user.target
- 更改完成后,保存并退出服务配置文件,执行以下命令加载配置。
systemctl daemon-reload
- 重启服务。
systemctl restart vas-daemon
- 检查vas-daemon进程现状。
VSched动态绑核模式部署
- 配置grub.cfg。
- 打开/boot/efi/EFI/openEuler/grub.cfg文件。
vi /boot/efi/EFI/openEuler/grub.cfg
- 按“i”进入编辑模式,在当前系统对应的启动子项末尾添加dynamic_affinity=enable。
当前系统的启动子项可通过执行“cat /proc/cmdline”命令确认,此处以6.6.0-98.0.0.103.oe2403sp2.aarch64为例。
linux /vmlinuz-6.6.0-98.0.0.103.oe2403sp2.aarch64 root=/dev/mapper/openeuler-root ro rd.lvm.lv=openeuler/root rd.lvm.lv=openeuler/swap cgroup_disable=files apparmor=0 crashkernel=1024M,high smmu.bypassdev=0x1000:0x17 smmu.bypassdev=0x1000:0x15 arm64.nopauth console=tty0 dynamic_affinity=enable
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。重启操作系统后该命令行参数配置生效。
- 打开/boot/efi/EFI/openEuler/grub.cfg文件。
- 可选:获取并安装优化补丁,重新编译安装内核。
表1 补丁代码获取 补丁代码
获取地址
优化补丁代码
SP2版本补丁码
Fix wrong CPU aff3 conversion between MPIDR and SYS_LSUDVMBM_EL2
说明:若使用SP2版本则需安装SP2版本的补丁代码。
- 配置本地yum源,参见配置本地yum源。
本地源镜像文件获取地址:openEuler-24.03-LTS-SP2-everything-aarch64-dvd.iso
- 安装编译软件及其依赖。
yum install gcc make patch kernel-source-6.6.0-98.0.0.103.oe2403sp2.aarch64 flex bison openssl-devel elfutils-libelf-devel dwarves rpm-build
- 进入编译目录,并修改目录下.config文件。
cd /usr/src/linux-6.6.0-98.0.0.103.oe2403sp2.aarch64/
将当前目录下的.config文件内容中如下配置行的内容置空:
CONFIG_SYSTEM_TRUSTED_KEYS="certs/openeuler-cert.pem"
修改后结果如下所示,修改完成后保存文件:
CONFIG_SYSTEM_TRUSTED_KEYS=""
- 将补丁代码改入相应的文件后,执行以下命令编译并安装。
make binrpm-pkg -j 128 rpm -ivh /home/linux-6.6.0-98.0.0.103.oe2403sp2.aarch64/rpmbuild/RPMS/aarch64/kernel-6.6.0+-xxx.aarch64.rpm --force
安装完成后重启操作系统,在BMC上可以在启动时选择启动内核,启动后执行以下命令查看BOOT_IMAGE是否为新编译内核。此处以vmlinuz-6.6.0+内核为例,返回信息中包含内核版本。
cat /proc/cmdline
- 开启优化功能。
echo 1 > /proc/sys/kernel/dynamic_affinity_cluster_sched
- 配置本地yum源,参见配置本地yum源。
- 选核范围决策。
DA_UTIL_TASKGROUP开关控制动态亲和CPU利用率阈值策略,默认开启。配置说明如表2所示。
表2 DA_UTIL_TASKGROUP开关配置说明 配置项
执行命令
说明
开启
echo DA_UTIL_TASKGROUP > /sys/kernel/debug/sched/features
默认值为开启。
开启状态下,通过检测任务组(taskgroup)在preferred_cpus中的利用率进行选核范围决策。
关闭
echo NO_DA_UTIL_TASKGROUP > /sys/kernel/debug/sched/features
不使用组调度时建议关闭。
关闭状态下,通过检测preferred_cpus的总利用率(即包括非taskgroup进程在preferred_cpus的使用量)进行选核范围决策。
- 配置VSched调度策略参数。
- 打开“/usr/lib/systemd/system/vas-daemon.service”文件。
vi /usr/lib/systemd/system/vas-daemon.service
- 按“i”进入编辑模式,将参数affinity修改为dynamicAffinity。示例如下:
ExecStart=/usr/local/vas/bin/vas_daemon start server -smt true --sched-policy dynamicAffinity --dynamic-util-thresh 85 --skip-cpuset "" --range-affinity true
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 执行以下命令使配置生效。
systemctl daemon-reload systemctl restart vas-daemon
- 查看服务状态,服务状态为“active(running)”即表示服务已启动。
systemctl status vas-daemon
- 打开“/usr/lib/systemd/system/vas-daemon.service”文件。
父主题: 特性安装