1、多云环境中部署及管理K8S集群的测试自动化实现余超VMWARE 技术专家余超VMWARE技术专家,多云平台TKG产品测试开发负责人。原第四范式质量部团队测试专家,负责实现AI平台产品的CICD流水线搭建,实现AI微服务平台产品的快速交付和自动化测试。曾任职于百度和freewheel资深测试开发工程师。国内QECon、MTSC、中国软件技术大会等技术峰会演讲嘉宾,知乎&TesterHome质量技术沙龙讲师。软件研发效能权威指南 副主编嘉宾照片目录CONTENTS被测对象:VMware TKG01 TKG测试要解决的问题和解决思路03 核心解决方案04 落地效果与总结05 自动化测试框架02 01
2、被测对象:VMware TKGTKG是什么?TKG概述TKG 是 VMware 推出的一种 Kubernetes 管理平台,旨在简化 Kubernetes 集群的部署、管理和运维。TKG 支持多种部署模式,包括本地部署、公有云部署和私有云部署等。TKG 还提供了一些额外的功能,如自动升级、安全加固、日志监控等。TKG 使用了 Cluster API 作为其底层技术之一,以便更好地管理 Kubernetes 集群的生命周期。通过使用 Cluster API,TKG 可以实现自动化的集群创建、扩展、升级和删除等操作,从而大大简化了 Kubernetes 集群的管理和运维。因此针对TKG产品的测试,
3、不仅包含对Kubernetes 集群生命周期的测试,也包括其对接公有云、私有云和混合云能力的测试。TKG对接云厂商能力TKG是一个企业级的Kubernetes发行版,可用于在多个云环境和数据中心中部署和管理Kubernetes集群。它提供了一个一致的Kubernetes体验。任何地方都可以运行与云无关并且一致的VMware基础架构相同的操作相同的体验01K8S发版 VS vphere发版02测试维度繁多03QA于DEV测试范畴不同各个组件的频繁变更,支持多版本k8s测试,支持不同云厂商平台对接考虑众多测试维度,从操作系统到网络,从云厂商到集群操作步骤基础功能测试和研发定制化功能测试TKG测试现
4、状02TKG测试需求及解决思路TKG测试需求部署需求构建对接云基础环境,多云适配;构建TKG的管理集群和负载集群个性化测试需求云资源选择;操作系统选择;网络选择;LB 服务暴露方案选择;集群基础功能测试选择(cni,csi)测试场景覆盖覆盖部署,升级,多版本部署和以上个性化测试需求的组合测试;TKG测试-多云环境适配问题及解决方案Deploy_AVSDeploy_GCVEDeploy_VMCDeploy_OCVS多云适配前提:在各个云环境中成功部署和运行vsphere套件,由vsphere提供计算、存储和网络解决方案TKG测试-多云环境适配方案(计算资源)在任意云平台上使用vCenter对计算
5、资源进行配置,在一套SDDC环境中进行多套TKG测试环境的部署TKG测试-多云环境适配方案(网络资源)在任意云平台上使用NSX对网络资源进行生成和配置,在一套SDDC环境中进行多套TKG网络环境部署TKG测试-快速部署问题及解决方案A Avspherevsphere部署Vsphere套件部署,包括vCenter和NSXB BTestbedTestbed部署Jumper机器部署;计算/存储资源和网络部署C C节点部署包括TKG环境的机器节点资源部署和操作系统部署等TKG测试-快速部署问题及解决方案(1)创建vsphere创建Testbed创建集群节点一次性创建创建Jumper VM,获取调用vC
6、enterNSX,EXSI能力对扩展 CRDs定义的自定义资源进行创建和更新,从而进行k8s集群的部署TKG测试-快速部署问题及解决方案(2)Ova文件在contentlibrary 导入的image管理节点和负载节点的设定网络和存储设定TKG测试-快速部署问题及解决方案(3)Tkg1.6.0为例操作系统K8S版本ova-ubuntu-2004-v1.23.8+vmwareova-ubuntu-2004-v1.21.14+vmwareova-ubuntu-2004-v1.22.11+vmwareOVA文件(包含操作系统和K8S版本)部署所需的镜像模版TKG测试-快速部署问题及解决方案(4)一次