You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitLab Runner Job属何种K8s对象?求New Relic可视化协助

GitLab Runner Job对应的K8s对象及New Relic可视化方案

一、GitLab Runner Job的K8s对象类型

  • GitLab Runner在K8s Executor模式下,每个CI/CD任务(即GitLab Runner Job)会触发创建Kubernetes Job对象,而非Deployment、Pod或StatefulSet。K8s Job专为一次性任务设计,正好匹配CI任务“执行完成即终止”的特性,Job会自动管理底层Pod的创建、运行与清理。
  • 补充:GitLab Runner自身的实例若部署在K8s集群中,通常使用Deployment来管理(因为需要长期运行的守护进程,支持自动扩缩容和故障恢复),但这和CI任务对应的Job是两个不同层面的对象。

二、New Relic中可视化GitLab Runner Pod的操作步骤

1. 基础前提

确保已完成New Relic的K8s集群集成,New Relic能够采集到集群内的Pod、Job等资源数据。

2. 筛选目标Pod

GitLab相关Pod分为两类,可通过标签或名称筛选:

  • GitLab Runner自身的Pod:通常带有app=gitlab-runner标签
  • CI任务生成的Pod:由K8s Job创建,带有runner=<RunnerID>、job=<JobID>或gitlab-runner=true这类标签(具体标签可根据你的Runner配置调整)

3. 用NRQL构建可视化查询

以下是常用的NRQL查询示例,可在New Relic的查询编辑器中使用:

  • 统计所有GitLab相关Pod数量随时间变化:
    FROM K8sPod SELECT count(*) TIMESERIES 5 MINUTES 
    WHERE clusterName = "你的集群名称" 
    AND (labels.app = 'gitlab-runner' OR labels.runner != '')
    
  • 区分Runner实例与CI任务Pod分别统计:
    FROM K8sPod SELECT count(*) 
    FACET CASE WHEN labels.app = 'gitlab-runner' THEN 'Runner实例Pod' ELSE 'CI任务Pod' END 
    TIMESERIES 5 MINUTES 
    WHERE clusterName = "你的集群名称"
    

4. 构建仪表盘

将上述查询生成的图表添加到自定义仪表盘,可按需调整时间范围、聚合粒度,实现长期监控。

内容的提问来源于stack exchange,提问作者Kingsley Okoro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 05:50:34