首页 > 其他分享 >CI/CD 流水线系统-开源框架Tekton

CI/CD 流水线系统-开源框架Tekton

时间:2024-10-24 23:21:01浏览次数:8  
标签:CI CD Tekton 管道 构建 流水线

文章目录

CI/CD 流水线系统-开源框架Tekton

什么是Tekton

官网:https://tekton.dev/

Tekton 是一个强大、灵活的构建 CI/CD 流水线系统的开源框架,允许开发者构建、测试和发布应用。

Tekton is a powerful and flexible open-source framework for creating CI/CD systems, allowing developers to build, test, and deploy across cloud providers and on-premise systems. Get started with Tekton.

Tekton是一个强大而灵活的开源框架,用于创建CI/CD系统,使开发人员能够在云提供商和本地系统上构建,测试和部署。开始使用Tekton。

Tekton优点

可移植性: 跨平台、语言、和部署环境。它适用于 Jenkins、Jenkins X、Skaffold、 Knative 和许多其他流行的 CI/CD 工具。

可定制:Tekton 实体是完全可定制的,从而具有高度的灵活性。平台工程师可以定义非常详细的构建基目录,以供开发人员在各种情况下使用

可重复使用:Tekton 实体是完全可移植的,因此一旦定义,组织内的任何人都可以使用给定的管道并重用其构造块。这使开发人员可以快速构建复杂的管道,而无需“重新发明轮子”。

可扩展:Tekton Catalog是Tekton社区驱动的存储库。您可以使用Tekton目录中的预制组件快速创建新的并展开现有管道。

标准化:Tekton 在您的Kubernetes集群上作为扩展安装并运行,并使用成熟的 Kubernetes 资源模型, 其工作负载在 Kubernetes 容器内执行。

缩放性:为了增加工作负载容量,您可以简单地将节点添加到群集, Tekton 随集群一起扩展 无需重新定义资源分配或对管道进行任何其他修改。

Tekton 组件介绍

Tekton Pipelines:Tekton 的基础部分,它定义了一组Kubernetes自定义资源,这些资源充当构建块,您可以从中组装CI/CD管道。

Tekton Triggers:允许基于 event 实例化 pipeline。例如,每次PR与GitHub存储库合并时,您都可以触发管道的实例化和执行。

Tekton Cli:是Tekton Pipelines的一个基于Web的图形界面,用于显示有关管道执行的信息。目前正在进行中。

Tekton Dashboard:是Tekton Pipelines的一个基于Web的图形界面,用于显示有关管道执行的信息。

Tekton Catalog:是一个由社区贡献的高质量Tekton构建块(任务、管道等)的存储库,可在您自己的管道中使用。

Tekton Hub:基于Web的图形界面,用于访问Tekton Catalog。

Tekton Operator:是一个Kubernetes Operator模式,允许您在Kubernete集群上安装、更新和删除Tekton项目。

Tekton Chain : 为使用Tekton Pipelines建造的文物提供生成、存储和标记出处的工具。

Tekton 概念术语

Tekton Pipelines 中最重要的五个概念:Task、TaskRun、Pipeline、PipelineRun、PipelineResources(已在v0.44版本被丢弃,此处简单了解)。

Task:Tekton 中的最小单元,代表一个任务模板,包括多个步骤。定义一个有序的Step以及每个 Step 调用特定的 在一组特定的输入上构建工具,并生成一组特定的输出,这些输出可用作下一个输入 Step。
流水线来自于工业自动化流水线作业,对于研发过程,通过自动化平台完成从代码提交到交付上线的全流程。step是流水线的最小工作单元。

多个step构成了流水线的主体,Tekton 平台基于云原生,每个步骤都是基于 docker image运行时在容器内执行。

TaskRun:实例化一个特定的 Task 在一组特定的输入并生成一组特定的输出,并且一个 TaskRun 会创建一个对应的 Pod,每个 step 对应 pod 中的一个 container。

Pipeline:Tekton 中一系列有序 Task 组成的有向无环图,定义了流水线的模板。

PipelineRun:Pipeline 执行时需要定义一个 PipelineRun,作为流水线的实例,生成一条流水线记录。

PipelineResource(已被丢弃):流水线执行过程中需要的资源信息。

标签:CI,CD,Tekton,管道,构建,流水线
From: https://blog.csdn.net/inthat/article/details/143203547

相关文章

  • 说一下 ACID 是什么?
    ACID是一组在数据库管理系统(DBMS)中至关重要的原则,它们确保了事务(Transaction)的可靠性、一致性和可恢复性。ACID代表以下四个特性:原子性(Atomicity):原子性要求事务中的所有操作要么全部完成,要么全部不执行。如果事务在执行过程中遇到任何错误,则已执行的操作将被回滚(Rollback)......
  • 如何在保证 ACID 原则的同时提高数据库的并发性能?
    在保证ACID原则的同时提高数据库的并发性能是一个复杂但至关重要的任务。以下是一些方法和策略,可以在遵循ACID原则的基础上提升数据库的并发性能:1.优化事务设计批量操作:将多个相关的操作放入一个事务中,可以减少事务的数量,从而降低回滚和恢复的成本。这有助于提高性能,但需要......
  • HCIP IS-IS 综合实验
    一、实验拓扑二、实验需求及解法本实验模拟IS-IS综合网络,完成以下需求:1.如图所示,配置所有路由器的接口IP地址。R1:interfaceGigabitEthernet0/0/0ipaddress10.0.123.1255.255.255.0R2:interfaceGigabitEthernet0/0/0ipaddress10.0.123.2255.255.255.......
  • [题解]P4552 [Poetize6] IncDec Sequence
    P4552[Poetize6]IncDecSequence我们对\(a\)做差分,得到数组\(b\)。\(a\)的区间修改,等价于选定\(i,j\in[1,n+1]\),令\(b[i]\leftarrow(b[i]+1),b[j]\leftarrow(b[j]-1)\),我们的目标是让\(b[2\simn]\)全为\(0\)。记\(x,y\)分别表示\(b[2\simn]\)中正数之和、负数的绝对值之和......
  • [Coci2011]kamion 题解
    前言题目链接:Hydro&bzoj;黑暗爆炸。题意简述给你一张\(n\)个点\(m\)条边的有向图。有\(p\)种括号,每条边的边权可以是这\(p\)种括号中某一种的左括号或者右括号,也可以为空。问你有多少条从\(1\)开始到\(n\)的长度小于等于\(k\)的路径,满足括号匹配,或者剩余若干未......
  • SciTech-Mathmatics-Probability+Statistics-Bayes Formula: Application:
    SciTech-Mathmatics-Probability+StatisticsBayesFormula:Application:DescriptiveStatistics(ofSamples)\[\large\begin{array}{lll}\\\text{SamplesData}\begin{cases}\\\bm{Center\Tendency}\overset{\bm{Mean}}{\right......
  • [Flink SQL] FlinkCdcSqlJob启动时因MYSQL serverTimeZone而报错:`The MySQL server ha
    1问题描述FlinkCdcSqlJob启动时报错...Causedby:org.apache.flink.table.api.ValidationException:TheMySQLserverhasatimezoneoffset(0secondsaheadofUTC)whichdoesnotmatchtheconfiguredtimezoneAsia/Shanghai.Specifytherightserver-time-z......
  • etcd之etcd分布式锁及事务(四)
    1、etcd分布式锁及事务1.1前言分布式锁是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中,常常需要协调他们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰来保证一致性,在这......
  • CDQ 分治学习笔记
    鲜花开新坑。早该卷卷了。集训队论文自认为写的很清晰。感觉对于一道自己进集训队时的国赛题能发明一种新做法很牛啊!简述CDQ分治是一种离线分治做法。CDQ分治并没有很固定的模板,这是一种分治思想的延伸。对于一道带修的数据结构问题,我们可以将每个查询视作其之前修改对......
  • python、JavaScript 、JAVA等实例代码演示教你如何免费获取股票数据(实时数据、历史数
    ​近一两年来,股票量化分析逐渐受到广泛关注。而作为这一领域的初学者,首先需要面对的挑战就是如何获取全面且准确的股票数据。因为无论是实时交易数据、历史交易记录、财务数据还是基本面信息,这些数据都是我们进行量化分析时不可或缺的宝贵资源。我们的核心任务是从这些数据......