k8s--基础--30.1--Tekton--介绍和按照
Tekton 为 k8s 提供了多种 CRD 资源对象,可用于定义我们的流水线,资源对象如下。
·
k8s–基础–30.1–Tekton–介绍和按照
1、Tekton是什么?
- 是k8s原生CI/CD系统
- 是开源的
1.1、优点
- k8s原生Tekton的所有配置都是使用CRD方式进行编写存储的,非常易于检索和使用。
- 配置和流程分离 Tekton 的 Pipeline 和配置可以分开编写,使用名称进行引用。
- 轻量级 核心的 Pipeline 非常轻便,适合作为组件进行集成,另外也有周边的 Dashboard、Trigger、CLI等工具,能够进一步挖掘其潜力。
- 可复用、组合的 Pipeline 构建方式 非常适合在集成过程中对 Pipeline 进行定制。
1.2、Tekton概念
Tekton 为 k8s 提供了多种 CRD 资源对象,可用于定义我们的流水线,资源对象如下
1.2.1、Task
- 表示执行命令的一系列步骤
- task 里可以定义一系列的 steps,例如编译代码、构建镜像、推送镜像等,每个 step 实际由一个 Pod 执行。
1.2.2、TaskRun
- task只是定义了一个模版,taskRun 才真正代表了一次实际的运行。
- 可以自己手动创建一个taskRun,taskRun创建出来之后,就会自动触发task描述的构建任务。
1.2.3、Pipeline
- 一组任务
- 表示一个或多个task、PipelineResource 以及各种定义参数的集合。
1.2.4、PipelineRun
- 类似task和taskRun的关系,pipelineRun也表示某一次实际运行的 pipeline
- pipelineRun 创建出来之后,就会自动触发 pipeline 的构建。
1.2.5、PipelineResource
- 表示pipeline 输入资源,例如:github上的源码
- 表示pipeline 输出资源,例如:1个容器镜像或者构建生成的jar包等。
2、安装
2.1、上传并解压镜像
- 各个节点都要执行
docker load -i tekton-controller.tar.gz
docker load -i tekton-webhook.tar.gz
2.2、上传release.yaml配置
- 主要用于更新k8s api
- 在master1节点上执行
2.2.1、位置
2.2.2、执行脚本
# 执行
kubectl apply -f /root/tekton/release.yaml
# 查看
kubectl get pods -n tekton-pipelines
# 查看 k8s api
kubectl api-versions
更多推荐
已为社区贡献55条内容
所有评论(0)