首页 / 平台管理 / 应用商店管理 / Operators / 使用 Operator / Tekton(Alpha)

Tekton(Alpha)

Tekton 是一个功能非常强大而灵活的 CI/CD 开源的云原生框架。

Tekton 的前身是 Knative 项目的 build-pipeline 项目,这个项目是为了给 build 模块增加 pipeline 的功能,但是随着不同的功能加入到 Knative build 模块中,build 模块越来越变得像一个通用的 CI/CD 系统,于是,build-pipeline 被剥离除了 Knative,成了现在的 Tekton,而 Tekton 也从此成为了功能全面、标准化的云原生 CI/CD 解决方案。

Tekton 的特点:

前提条件

已部署 Tekton Operator,具体请参考 安装 Operator

注意:如果希望在指定节点上部署 Tekton Operator,需先给节点添加可代表相关含义的键值对 标签 ,待 Operator 部署成功后再 编辑订阅(Subscription) 以增加 nodeSelector 配置。例如以下 YAML 示例可用于表示只在 amd64 架构的节点上部署 Operator。

apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: tekton-operator
spec:
  config:
    nodeSelector:
      beta.kubernetes.io/arch: amd64 #节点标签

注意事项

TektonPipeline 仅支持创建一个实例,且名称固定为 pipeline。

部署实例

  1. 在左侧导航栏中,单击 应用商店管理 > Operators

  2. 已部署 Operators 页签中,单击 tekton-operator

  3. 单击 TektonPipeline 实例卡片中的 创建实例

  4. 配置 名称标签 等基本信息。

    注意:创建 Tekton 实例时,实例名称必须为 pipeline,否则不能使用基于 Tekton 的构建功能。

  5. 可选:如果已经将 Tekton Operator 部署到了指定的节点上,请相应在 TektonPipeline 实例的 YAML 中增加 nodeSelector 配置。

     apiVersion: operator.tekton.dev/v1alpha1
     kind: TektonPipeline
     metadata:
       name: pipeline
     spec:
         nodeSelector:
           beta.kubernetes.io/arch: amd64 #与 Operator 设置保持一致
  6. 可选:在 YAML 中进行高可用配置。避免因单个节点故障而影响实例及持续构建、持续发布等相关功能使用异常。

    apiVersion: operator.tekton.dev/v1alpha1
    kind: TektonPipeline
    metadata:
      name: pipeline
    spec:
      config:
        availability:        
          highAvailability:
            replicas: 3      # 副本数大于 1 时,可实现实例高可用
          kubernetes.io/os: linux
  7. 单击 创建