k8s安装tekton,编写task

news2024/9/21 2:42:35

文章目录

  • 一、官方安装
  • 二、国内资源安装
    • `安装tekton`
    • `安装dashboard`
    • `安装CLI`
  • 三、demo
    • `编写task.yaml`
    • `编写taskRun.yaml`
    • `使用tkn命令查看`
  • 参考文章


一、官方安装

地址:https://tekton.dev/docs/installation/pipelines/#installing-tekton-pipelines-on-kubernetes
注意:官方安装需要能够去国外网站拉取镜像,如果不能,建议使用国内资源安装

二、国内资源安装

我的k8s版本是V1.17.17,推荐安装的tekton版本为v0.19.0

安装tekton

mkdir /opt/tekton/ && cd /opt/tekton/
git clone https://gitee.com/CloudLemon/tekton-install.git
cd tekton-install/v0.19.0
kubectl apply -f install.yaml
kubectl get pod -n tekton-pipelines

会启动controller和webhook两个Pod
在这里插入图片描述

安装dashboard

cd /opt/tekton/tekton-install/dashboard
vim 0.17.0.yaml		#镜像地址有问题,删除红框处内容

在这里插入图片描述

kubectl apply -f 0.17.0.yaml
kubectl get pod -n tekton-pipelines

会增加一个dashboard的Pod
在这里插入图片描述

kubectl get svc -n tekton-pipelines

查看dashboard的nodePort端口
在这里插入图片描述
浏览器访问:http://192.168.1.2:29813/
在这里插入图片描述

安装CLI

Tekton除了使用kubectl操作之外,本身也有客户端,可以到https://github.com/tektoncd/cli/releases进行下载,如下

cd /opt/tekton/
wget https://github.com/tektoncd/cli/releases/download/v0.22.0/tkn_0.22.0_Linux_x86_64.tar.gz
tar xvf tkn_0.22.0_Linux_x86_64.tar.gz
mv tkn /usr/local/bin/
tkn task list -n tekton-pipelines	#查看task列表

如果报一下错误,需要创建~/.kube/config文件
在这里插入图片描述
由于我用的是rancher,因此直接从页面上拷贝kubeconfig文件的内容,并创建~/.kube/config文件
在这里插入图片描述

三、demo

编写task.yaml

apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: hello
  namespace: tekton-pipelines
spec:
  steps:
    - name: echo
      image: alpine
      script: |
        #!/bin/sh
        echo "Hello World"

查看task

kubectl apply -f task.yaml
kubectl get task -n tekton-pipelines

在这里插入图片描述

编写taskRun.yaml

仅仅创建Task是没有用的,Task只是声明了我们要做什么,是一个静态的对象,如果要得到其结果,需要借助TaskRun才行

apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
  name: hello-task-run
  namespace: tekton-pipelines
spec:
  taskRef:
    name: hello		#该名字需与Task的名字保持一致
kubectl apply -f taskRun.yaml
kubectl get taskrun -n tekton-pipelines

执行成功
在这里插入图片描述
还可以看到具体的Pod

kubectl get pod -n tekton-pipelines

执行完的Pod的状态是Completed状态,这个状态的Pod在运行完成后并不会消失,会保留以便查看具体的信息
在这里插入图片描述
查看Pod的日志

kubectl logs hello-task-run-pod-24xlb -n tekton-pipelines

日志内容符合预期
在这里插入图片描述
去dashboard查看
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用tkn命令查看

tkn task list -n tekton-pipelines		#查看task列表
tkn taskrun list -n tekton-pipelines	#查看taskrun列表

参考文章

Tekton系列之安装篇[一]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/358028.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring MVC 源码之MultipartResolver 组件

MultipartResolver 组件,内容类型( Content-Type )为 multipart/* 的请求的解析器,主要解析文件上传的请求。例如,MultipartResolver 会将 HttpServletRequest 封装成 MultipartHttpServletRequest 对象,便于获取参数信息以及上传…

【NVMEM子系统】二、NVMEM驱动框架

个人主页:董哥聊技术我是董哥,嵌入式领域新星创作者创作理念:专注分享高质量嵌入式文章,让大家读有所得!文章目录1、前言2、驱动框架3、源码目录结构4、用户空间下的目录结构1、前言 NVMEM SUBSYSTEM,该子系…

视频片段怎么做成gif图?快试试这2种方法

动态gif图片作为当下非常常用的表情包,其丰富的内容生动的画面深受大众喜爱。那么,当我们想要将电影或是电视剧中的某一片段做成gif动态图片的时候,要如何操作呢?接下来,给大家分享两招视频转化gif的小窍门–使用【GIF…

【力扣-Python-1】两数之和(easy)

https://leetcode.cn/problems/two-sum/题目描述给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答…

uboot下实现U盘自动升级程序的思路分析(基于USB系统、eMMC系统、FAT32文件系统)

1、常见的升级方式 1.1、应用程序升级 优点:在图形化界面操作,只需要选中升级文件并点击升级即可,操作简单; 缺点:应用程序必须能正常启动,当程序出现bug就不能升级,可靠性差; 总结…

旺店通与金蝶云星空对接集成采购入库单接口

旺店通旗舰奇门与金蝶云星空对接集成采购入库单查询连通销售退货新增V1(12-采购入库单集成方案-P)数据源系统:旺店通旗舰奇门旺店通是北京掌上先机网络科技有限公司旗下品牌,国内的零售云服务提供商,基于云计算SaaS服务模式,以体系化解决方案…

Prometheus集群分布式架构浅析

集群行为是一种常见于自然界中鱼群、鸟群、蜂群等低等群居生物的集体行为,受此启发形成了无人机集群的概念。无人机集群不是多无人机间的简单编队,而是通过必要的控制策略使之产生集群协同效应,从而具备执行复杂多变、危险任务的能力。目前无…

【C++】AVLTree——高度平衡二叉搜索树

文章目录一、AVL树的概念二、AVL树节点的定义三、AVL树的插入四、AVL树的旋转1.左单旋2.右单旋3.左右双旋4.右左双旋五、进行验证六、AVLTree的性能个人简介📝 🏆2022年度博客之星Top18;🏆2022社区之星Top2;的🥇C/C领域优质创作者…

JVM类加载子系统

1、类加载子系统在内存结构中所处的位置通过内存结构图,我们先知道类加载子系统所处的位置,做到心中有图。2、类加载器作用类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识。ClassLoader只负责cla…

anaconda创建环境为空、修改默认环境位置

无论是用navigator还是命令行创建环境都无法指定python版本conda create -n test python3.9其实就是没有路径,添加几个镜像就好:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels ht…

BUUCTF-[安洵杯 2019]crackMe1

题目下载:下载 这道题涉及到SM4加密和变表base64。 SM4简单了解:SM4算法过程_不是小白才怪的博客-CSDN博客_sm4算法 先运行一下程序, 发现有一个Messagebox,并且内容是hooked。 载入IDA,使用IDA的插件Findcrypt查…

ChatGPT:“抢走你工作的不会是 AI ,而是先掌握 AI 能力的人”

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! ChatGPT:“抢走你工作的不会是 AI ,而是先掌握 AI 能力的人” ChatGPT:美国OpenAI 研发的聊天机器人程序,人工智能技术…

Springboot启动过程分析

Springboot启动过程分析 SpringBoot的版本是v3.0.2,下面进行详细的分析。 一、SpringBoot启动流程的主干 示例程序入口如下所示: import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApp…

【网络知识】TCP和UDP详解

TCP和UDP 文章目录UDP协议概述TCP协议概述TCP报文段TCP连接的建立两天内完成下面的参考博客😊点此到文末惊喜↩︎ UDP协议 概述 TCP协议 概述 定义 传输控制协议(TCP,Transmission Control Protocol)是一种传输层通信协议&…

Python 之 Pandas DataFrame 数据类型的简介、创建的列操作

文章目录一、DataFrame 结构简介二、DataFrame 对象创建1. 使用普通列表创建2. 使用嵌套列表创建3 指定数值元素的数据类型为 float4. 字典嵌套列表创建5. 添加自定义的行标签6. 列表嵌套字典创建 DataFrame 对象7. Series 创建 DataFrame 对象三、DataFrame 列操作1. 选取数据…

【LeetCode】剑指 Offer(5)

目录 写在前面: 题目: 题目的接口: 解题思路1: 代码: 过啦!!! 解题思路2: 代码: 过啦!!! 写在最后:…

臻和科技再冲刺港交所上市:近三年亏损14亿元,有股东提前退出

近日,臻和科技集团有限公司(下称“臻和科技”)再次递交招股书,准备在港交所主板上市。据贝多财经了解,这已经是臻和科技第二次冲刺港交所上市。在此之前,臻和科技曾于2022年9月26日递表,后选择了…

hadoop02【尚硅谷】

HDFS 大数据学习笔记 一、HDFS产出背景及定义 HDFS产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件&#x…

python基于vue的酒店预约管理平台系统

当用户在上一步中的房间展示界面中点击了房间的图片或者名称之后系统会根据房间的ID自动的跳转到房间的详情页面中来,在房间的详情页面中可以看到房间的图片房间的价格房间的详细介绍房间的类型等内容,当用户登录之后还可以根据需要进行对房间进行预定&a…

Vulnhub靶场之PYLINGTON: 1

1.信息收集 1.输入arp-scan 192.168.239.0/24,探索存活主机,发现主机192.168.239.172存活。 2.对存活主机进行端口扫描,发现22(SSH)、80(Web)端口。 3.访问80端口,在浏览器上输出:http://192.168.239.172。 4.查看…