任务简况信息是任务在启动时,按时间顺序记录下来的一些发送事件,比如任务调度事件,拉取镜像事件,启动成功事件等,用户可通过对这些事件发生观测进一步了解任务状态.
该功能已在Octopus之前的版本中存在,但运行时发现,获取任务简况的信息时延迟时间很久,甚至不发获取.目前初步分析,随着集群任务量较大时,问题更加明显
阅读这一块实现代码后,初步优化方案有两步:
目前实现方式中,每当启动任务时,都有实例化一个任务级别的ClientInformer,这样与k8s apiserver的连接数会随着任务量增多而增多,考虑减少Informer数量,https://git.openi.org.cn/OpenI/octopus/src/branch/master/server/taskset/pkg/pipeline/services/kubernetes/logs_helper.go#L60
任务的事件记录目前是累加的方式存放在数据库job表的stateSummary字段中,考虑将这些数据存放在时序数据库中,https://git.openi.org.cn/OpenI/octopus/src/branch/master/server/taskset/pkg/pipeline/models/job/job.go#L39
job
stateSummary
相关问题: #27 #12 #11
已采用方案:
未设置到期时间。
此任务当前没有任何依赖。
删除分支是永久的。此操作 无法 撤销,继续?
尊敬的启智用户
感谢您一直以来对Openl启智社区AI协作平台的支持。为了保障您的使用权益和确保网络安全,我们于2024年1月份更新了《Openl启智社区AI协作平台使用协议》。更新后的协议明确了用户禁止使用内网穿透工具的条例。您单击“同意并继续”后,便可以继续使用我们的服务。感谢您的合作与理解。
更多协议内容,请参考《Openl启智社区AI协作平台使用协议》
问题描述
任务简况信息是任务在启动时,按时间顺序记录下来的一些发送事件,比如任务调度事件,拉取镜像事件,启动成功事件等,用户可通过对这些事件发生观测进一步了解任务状态.
该功能已在Octopus之前的版本中存在,但运行时发现,获取任务简况的信息时延迟时间很久,甚至不发获取.目前初步分析,随着集群任务量较大时,问题更加明显
拟解决
阅读这一块实现代码后,初步优化方案有两步:
目前实现方式中,每当启动任务时,都有实例化一个任务级别的ClientInformer,这样与k8s apiserver的连接数会随着任务量增多而增多,考虑减少Informer数量,https://git.openi.org.cn/OpenI/octopus/src/branch/master/server/taskset/pkg/pipeline/services/kubernetes/logs_helper.go#L60
任务的事件记录目前是累加的方式存放在数据库
job
表的stateSummary
字段中,考虑将这些数据存放在时序数据库中,https://git.openi.org.cn/OpenI/octopus/src/branch/master/server/taskset/pkg/pipeline/models/job/job.go#L39相关问题:
#27
#12
#11
已采用方案:
field key: message;
id: 任务jobId
pageIndex: 分页索引,从1开始
pageSize: 分页大小
taskIndex:子任务索引,从1开始
replicaIndex:副本索引,从1开始
返回的结果包括:
totalSize: 该副本事件总数,
jobEvents: 事件数组,
数组每一项包括:
timestamp:事件发生时间,
name: 副本名,
reason: 事件原因,
message: 事件消息