li-wen配置详解:excluded_workers.yaml与wsdm.ini的完整配置指南
2026/7/18 18:37:28 网站建设 项目流程

li-wen配置详解:excluded_workers.yaml与wsdm.ini的完整配置指南

【免费下载链接】li-wenTool for dynamic management of worker resources in OBS-Build system项目地址: https://gitcode.com/openeuler/li-wen

前往项目官网免费下载:https://ar.openeuler.org/ar/

li-wen是openEuler社区推出的OBS-Build系统worker资源动态管理工具,能够根据构建任务需求自动调整worker资源,提升构建效率。本文将详细介绍其核心配置文件excluded_workers.yaml与wsdm.ini的设置方法,帮助用户快速掌握配置技巧。

一、配置文件概述

li-wen的配置体系主要由两个核心文件构成:

  • excluded_workers.yaml:定义需要排除的worker节点规则
  • wsdm.ini:主配置文件,包含监控参数、资源等级和worker规格等核心设置

这两个文件位于项目的libs/conf/目录下,是实现worker资源动态管理的关键。

li-wen架构图

二、excluded_workers.yaml配置详解

2.1 文件结构

excluded_workers.yaml采用YAML格式,按架构类型组织需要排除的worker节点:

x86: xx.xx.xx.xx: name: ecs-obsworker-xxxx vcpus: 16/32/64 aarch64: xx.xx.xx.xx: name: obs-obsworker-xxxx vcpus: 16/32/64

2.2 配置项说明

配置项说明
架构类型(x86/aarch64)顶层键,按CPU架构分类
IP地址要排除的worker节点IP
nameworker节点名称
vcpus节点的CPU核心配置,支持多规格表示(如16/32/64)

2.3 配置示例

排除特定x86架构worker:

x86: 192.168.1.100: name: ecs-obsworker-001 vcpus: 16 192.168.1.101: name: ecs-obsworker-002 vcpus: 32

三、wsdm.ini配置详解

wsdm.ini是li-wen的主配置文件,包含多个功能模块的设置,采用INI格式组织。

3.1 [Monitor]模块

该模块配置监控相关参数:

[Monitor] # 检查schedule状态任务的时间间隔(s) interval_for_check_schedule = 300 # 检查新worker可用状态的时间间隔(s) interval_for_cycle_check_new_worker = 3 # 释放worker前校验预留worker的次数 num_for_check_reserved_worker = 3 # 校验预留worker的时间间隔(s) interval_for_check_reserved_worker = 300 # 监控的项目 projects = openEuler-Mainline-copy # repo服务器地址 repo_server = other-backend.openeuler.org:5252

关键参数说明:

  • interval_for_check_schedule:建议设置为300-600秒,根据任务量调整
  • interval_for_cycle_check_new_worker:建议设置为3-10秒,太短会增加系统负载

3.2 [Build_Time_Level]模块

定义构建时间等级划分,用于worker资源的动态分配:

[Build_Time_Level] # 基于软件包平均构建时长,分为三个等级 l1 = 0,5 # 0-5分钟 l2 = 5,15 # 5-15分钟 l3 = 15,MAX # 15分钟以上

3.3 Worker规格配置

根据构建时间等级,配置不同规格的worker资源:

L1级Worker配置(短时间构建任务)
[L1_Worker_Conf] vcpus = 16 # CPU核心数 ram = 32 # 内存大小(G) jobs = 16 # 并行任务数 instances = 5 # 实例数量 max_limit = 45 # 最大限制数 per_limit = 2 # 每项目限制数
L2级Worker配置(中等时间构建任务)
[L2_Worker_Conf] vcpus = 32 ram = 64 jobs = 32 instances = 10 max_limit = 30 per_limit = 2
L3级Worker配置(长时间构建任务)
[L3_Worker_Conf] vcpus = 64 ram = 128 jobs = 64 instances = 6 max_limit = 20 per_limit = 2

li-wen工作流程图

四、配置最佳实践

4.1 性能优化建议

  1. 根据实际负载调整监控间隔

    • 任务高峰期可缩短interval_for_cycle_check_new_worker至3秒
    • 低峰期可延长至10秒,减少系统资源消耗
  2. 合理设置Worker规格

    • L1级Worker适合小型包构建,可配置较多实例
    • L3级Worker资源消耗大,建议控制实例数量

4.2 常见问题解决

  1. Worker资源分配不均

    • 检查per_limit参数,确保各项目资源分配公平
    • 调整max_limit控制总资源使用
  2. 构建任务超时

    • 检查Build_Time_Level划分是否合理
    • 考虑将长时间任务分配到L3级Worker

五、配置文件位置与获取

配置文件位于项目的libs/conf/目录下:

  • excluded_workers.yaml完整路径:libs/conf/excluded_workers.yaml
  • wsdm.ini完整路径:wsdm.ini

获取项目源码:

git clone https://gitcode.com/openeuler/li-wen

通过合理配置excluded_workers.yaml和wsdm.ini,li-wen能够智能管理OBS-Build系统的worker资源,实现构建任务的高效处理。建议根据实际业务需求定期优化配置参数,以获得最佳性能。

【免费下载链接】li-wenTool for dynamic management of worker resources in OBS-Build system项目地址: https://gitcode.com/openeuler/li-wen

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询