11.17. 使用 OpenShift Pipelines 管理虚拟机
Red Hat OpenShift Pipelines 是一个 Kubernetes 原生 CI/CD 框架,允许开发人员在其自己的容器中设计和运行 CI/CD 管道的每个步骤。
Tekton Tasks Operator (TTO) 将 OpenShift Virtualization 与 OpenShift Pipelines 集成。TTO 包含集群任务和示例管道,允许您:
- 创建和管理虚拟机 (VM)、持久性卷声明 (PVC) 和数据卷
 - 在虚拟机中运行命令
 - 
						使用 
libguestfs工具操作磁盘镜像 
使用 Red Hat OpenShift Pipelines 管理虚拟机只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
11.17.1. 先决条件 复制链接链接已复制到粘贴板!
- 
							您可以使用 
cluster-admin权限访问 OpenShift Container Platform 集群。 - 
							已安装 OpenShift CLI(
oc)。 - 已安装 OpenShift Pipelines。
 
11.17.2. 部署 Tekton Tasks Operator 资源 复制链接链接已复制到粘贴板!
					安装 OpenShift Virtualization 时,默认不会部署 Tekton Tasks Operator (TTO) 集群任务和示例管道。要部署 TTO 资源,请在 HyperConverged 自定义资源 (CR) 中启用 deployTektonTaskResources 功能门。
				
流程
运行以下命令,在默认编辑器中打开
HyperConvergedCR:oc edit hco -n openshift-cnv kubevirt-hyperconverged
$ oc edit hco -n openshift-cnv kubevirt-hyperconvergedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将
spec.featureGates.deployTektonTaskResources字段设置为true。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意即使稍后禁用功能门,集群任务和示例管道仍可用。
- 保存更改并退出编辑器。
 
11.17.3. Tekton Tasks Operator 支持的虚拟机任务 复制链接链接已复制到粘贴板!
下表显示了作为 Tekton Tasks Operator 一部分的集群任务。
| 任务 | 描述 | 
|---|---|
|   
									  |   从模板创建虚拟机。  | 
|   
									  |   复制虚拟机模板。  | 
|   
									  |   修改虚拟机模板。  | 
|   
									  |   创建和删除数据卷或数据源。  | 
|   
									  |   在虚拟机上运行脚本或命令,并在之后停止或删除虚拟机。  | 
|   
									  |   
									使用   | 
|   
									  |   
									使用   | 
|   
									  |   等待虚拟机实例的特定状态,并根据状态失败或成功。  | 
11.17.4. 管道示例 复制链接链接已复制到粘贴板!
					Tekton Tasks Operator 包含以下 Pipeline 清单示例。您可以使用 Web 控制台或 CLI 运行示例管道。
				
- Windows 10 安装程序管道
 - 此管道将 Windows 10 安装到来自 Windows 安装镜像(ISO 文件) 的新数据卷中。自定义应答文件用于运行安装过程。
 - Windows 10 自定义管道
 - 此管道克隆基本 Windows 10 安装的数据卷,通过安装 Microsoft SQL Server Express 进行自定义,然后创建新镜像和模板。
 
11.17.4.1. 使用 Web 控制台运行示例管道 复制链接链接已复制到粘贴板!
您可以从 web 控制台中的 Pipelines 菜单运行示例管道。
流程
- 
								在侧边菜单中点 Pipelines 
Pipelines。  - 选择一个管道以打开 Pipeline 详情页面。
 - 从 Actions 列表中,选择 Start。此时会显示 Start Pipeline 对话框。
 - 保留参数的默认值,然后点 Start 运行管道。Details 选项卡跟踪每个任务的进度,并显示管道状态。
 
11.17.4.2. 使用 CLI 运行示例管道 复制链接链接已复制到粘贴板!
						使用 PipelineRun 资源来运行示例管道。PipelineRun 对象是管道的运行实例。它使用集群上的特定输入、输出和执行参数来实例化 Pipeline 执行。它还为管道中的每个任务创建一个 TaskRun 对象。
					
流程
要运行 Windows 10 安装程序管道,请创建以下
PipelineRun清单:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
 - 指定 Windows 10 64 位 ISO 文件的 URL。产品语言必须是 English (United States)。
 
应用
PipelineRun清单:oc apply -f windows10-installer-run.yaml
$ oc apply -f windows10-installer-run.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 要运行 Windows 10 自定义管道,请创建以下
PipelineRun清单:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用
PipelineRun清单:oc apply -f windows10-customize-run.yaml
$ oc apply -f windows10-customize-run.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow