k8s–基础–30.1–Tekton–介绍和按照


1、Tekton是什么?

  1. 是k8s原生CI/CD系统
  2. 是开源的

1.1、优点

  1. k8s原生Tekton的所有配置都是使用CRD方式进行编写存储的,非常易于检索和使用。
  2. 配置和流程分离 Tekton 的 Pipeline 和配置可以分开编写,使用名称进行引用。
  3. 轻量级 核心的 Pipeline 非常轻便,适合作为组件进行集成,另外也有周边的 Dashboard、Trigger、CLI等工具,能够进一步挖掘其潜力。
  4. 可复用、组合的 Pipeline 构建方式 非常适合在集成过程中对 Pipeline 进行定制。

1.2、Tekton概念

Tekton 为 k8s 提供了多种 CRD 资源对象,可用于定义我们的流水线,资源对象如下

1.2.1、Task

  1. 表示执行命令的一系列步骤
  2. task 里可以定义一系列的 steps,例如编译代码、构建镜像、推送镜像等,每个 step 实际由一个 Pod 执行。

1.2.2、TaskRun

  1. task只是定义了一个模版,taskRun 才真正代表了一次实际的运行。
  2. 可以自己手动创建一个taskRun,taskRun创建出来之后,就会自动触发task描述的构建任务。

1.2.3、Pipeline

  1. 一组任务
  2. 表示一个或多个task、PipelineResource 以及各种定义参数的集合。

1.2.4、PipelineRun

  1. 类似task和taskRun的关系,pipelineRun也表示某一次实际运行的 pipeline
  2. pipelineRun 创建出来之后,就会自动触发 pipeline 的构建。

1.2.5、PipelineResource

  1. 表示pipeline 输入资源,例如:github上的源码
  2. 表示pipeline 输出资源,例如:1个容器镜像或者构建生成的jar包等。

2、安装

2.1、上传并解压镜像

  1. 各个节点都要执行
    在这里插入图片描述
docker   load   -i   tekton-controller.tar.gz
docker   load   -i  tekton-webhook.tar.gz

2.2、上传release.yaml配置

  1. 主要用于更新k8s api
  2. 在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 

在这里插入图片描述

在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐