OpenShift 4 Tekton (1) - OpenShift Pipeline入门-安装Pipeline Operator

OpenShift 4.x HOL教程汇总
说明:本文已经在OpenShift 4.8环境中验证

Tekton 简介

Tekton,最初被称为Knative Build,但作为自己的开源项目分离出来,有自己的管理组织。Tekton试图填补集群内容器镜像构建和部署工作流程的空白,即持续集成(CI)和持续交付(CD)。Tekton的理念围绕三个方面展开:

容器
Tekton的座右铭是Kubernetes原生。容器是任何Kubernetes集群的核心,Tekton为容器化应用程序的构建、测试和部署进行了优化。此外,Tekton的要素(如任务和管道)是作为自定义资源定义实现的,你的管道是一个简单的YAML资源文件。

无服务器
如前所述,Tekton最初是Knative的一部分,以前被称为Knative Build。Knative Build后来被废弃了,资源被整合到Tekton项目上工作。作为Knative的后代,Tekton有一些有趣的DNA,因为它作为无服务器CI/CD解决方案运行,不需要任何需要持续管理和维护的中央服务/引擎。Tekton的 "主人 "就是Kubernetes本身,因为它是以一系列CRD及其支持控制器的形式实现的。

DevOps
CI/CD需要DevOps,Tekton是为分布式协作团队以及微服务或更传统的单体应用架构而构建的。

安装OpenShift Pipelines Operator

通过控制台安装

  1. 用集群管理员身份登录OpenShift控制台,进入“管理员”视图。
  2. 通过菜单进入Operators–>OpeartorHub。
  3. 查找到“OpenShift Pipelines Operator”,并点击进入。
  4. 在“OpenShift Pipelines Operator”介绍界面中点击“安装”。
  5. 在“安装 Operator”界面中接受缺省选项,点击“安装”。
    在这里插入图片描述
  6. 安装好后会显示以下
    在这里插入图片描述
  7. 此时在控制台的“管理员”和“开发者”视图中都可以看到新增加的“管道”菜单。
    在这里插入图片描述

通过命令安装

  1. 执行命令安装Openshift Pipelines Operator
$ oc apply -f - << EOF
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: openshift-pipelines-operator
  namespace: openshift-operators 
spec:
  channel: stable
  name: openshift-pipelines-operator-rh
  source: redhat-operators
  sourceNamespace: openshift-marketplace
EOF
  1. 执行命令确认安装进度。
$ until oc api-resources --api-group=tekton.dev | grep tekton.dev &> /dev/null
do 
 echo "Operator installation in progress..."
 sleep 5
done
echo "Operator ready"

环境验证

  1. 查看安装后查看和Tekton相关API。
$  oc api-resources --api-group=tekton.dev
NAME                SHORTNAMES   APIVERSION            NAMESPACED   KIND
clustertasks                     tekton.dev/v1beta1    false        ClusterTask
conditions                       tekton.dev/v1alpha1   true         Condition
pipelineresources                tekton.dev/v1alpha1   true         PipelineResource
pipelineruns        pr,prs       tekton.dev/v1beta1    true         PipelineRun
pipelines                        tekton.dev/v1beta1    true         Pipeline
runs                             tekton.dev/v1alpha1   true         Run
taskruns            tr,trs       tekton.dev/v1beta1    true         TaskRun
tasks                            tekton.dev/v1beta1    true         Task
  1. 安装OpenShift Pipelines Operator后会自动创建openshift-pipelines项目,并在其中运行了以下Pod。
$ oc get pod -n openshift-pipelines
NAME                                                READY   STATUS    RESTARTS   AGE
tekton-operator-proxy-webhook-66cf98c74f-mrxtj      1/1     Running   0          4m30s
tekton-pipelines-controller-5576c76c55-csxh8        1/1     Running   0          4m31s
tekton-pipelines-webhook-55587d564d-b5rgj           1/1     Running   0          4m31s
tekton-triggers-controller-665d7768f4-c7ftj         1/1     Running   0          4m3s
tekton-triggers-core-interceptors-bb78d75d9-fbf64   1/1     Running   0          3m59s
tekton-triggers-webhook-86f7674d9c-mw5v5            1/1     Running   0          4m4s
  1. openshift-pipelines”项目下的ConfigMap对象是管道运行的系统参数。
$ oc get cm -n openshift-pipelines
NAME                            DATA   AGE
config-artifact-bucket          0      2d3h
config-artifact-pvc             0      2d3h
config-defaults                 2      2d3h
config-leader-election          3      2d3h
config-logging                  3      2d3h
config-logging-triggers         4      2d3h
config-observability            1      2d3h
config-observability-triggers   1      2d3h
config-registry-cert            0      2d3h
config-service-cabundle         1      2d3h
config-trusted-cabundle         1      2d3h
feature-flags                   9      2d3h
kube-root-ca.crt                1      2d3h
openshift-service-ca.crt        1      2d3h

安装Tekton客户端

  1. 在“安装的Operators”中进入“Red Hat OpenShift Pipelines”,在“详情”页面下方个根据下图提示下载“tkn”客户端。在这里插入图片描述
  2. 或者执行以下命令下载Tekton客户端。
$ curl -L https://github.com/tektoncd/cli/releases/download/v0.20.0/tkn_0.20.0_Linux_x86_64.tar.gz | tar -xzf -
$ mv tkn /usr/bin/

猜你喜欢

转载自blog.csdn.net/weixin_43902588/article/details/120094051