优化 Tekton 执行克隆任务慢问题,节省约 30 秒

1. 现象 - Tekton 克隆代码任务慢

在执行克隆任务时,Tekton 很费时间,多仓库下一般都需要 2 分 30 秒左右。如下图:

仅克隆的流水线就需要执行 2 分钟 16 秒,而克隆脚本实际上仅执行 1-3 秒。其中大部分时间花在了哪里?能不能减少?这是本篇主要想讨论的问题。

2. 分析克隆任务的时间开销

Tekton 运行流水线时,每个 Task 都会在一个独立 Pod 中运行。在上述场景下,一个 git clone task 只克隆一个仓库,如果有 N 个代码仓库,那么就需要创建至少 N 个 Pod。 这样就出现两个优化点:

  • 并行执行任务
  • 缩短单个执行时间