首页 > 其他分享 >k8s:通过 kubectl 插件 Kubepug 实现集群升级检查(废弃API资源检查)

k8s:通过 kubectl 插件 Kubepug 实现集群升级检查(废弃API资源检查)

时间:2023-12-09 12:12:49浏览次数:42  
标签:kubectl 插件 swagger 版本 检查 API kubepug k8s

背景:k8s 的版本迭代很快,虽然主要版本一直没有变化,但是次要版本一直在迭代,2022年一年就发布了三个次要版本,同时不同的次要版本之间 API 资源一直在变化,有新加入的,也有废弃删除的。不同版本的 api 资源版本也有不同,往往不是向下兼容的,比如在低版本中 API 资源版本为 v1beta1,而高版本可能升级为 v1。但是在高版本中不能运行低版本的API资源。
所以在 k8s 版本升级的时候,需要对之前废弃的和删除的 API 资源 做出清理,需要升级的做升级,或者替换为其他的 API 资源。 在这之前,需要一个工具来检查 API 资源对象,那些事已经废弃的,那些将要废弃。
Kubepug 即是这样一个工具,一个升级前检查器,可帮助在迁移到新的主要版本之前在 Kubernetes 资源中找到已弃用和已删除的 API

1、kubepug 安装

wget  https://github.com/rikatz/kubepug/releases/download/v1.4.0/kubepug_linux_amd64.tar.gz

2、配置为 kubectl 插件

tar -zxvf kubepug_linux_amd64.tar.gz

mv kubepug kubectl-kubepug

mv ./kubectl-kubepug  /usr/local/bin/

3、查看版本测试

kubectl kubepug version

4、获取集群当前 API 状态

kubectl kubepug --k8s-version=v1.21.1

如果链接不上,会报上面的错误,可以把 对应的 swagger 文件下载下来上传。然后在检查的时候指定 swagger 文件目录

curl -o swagger-v1.21.1.json https://raw.githubusercontent.com/kubernetes/kubernetes/v1.21.1/api/openapi-spec/swagger.json

通过 --swagger-dir= 指定 对应的 swagger 文件位置,--k8s-version=v1.21.1 指定要检测的版本

mkdir -p /home/check_k8s

mv swagger-v1.21.1.json /home/check_k8s

再次检查:kubectl kubepug --k8s-version=v1.21.1 --swagger-dir=./home/check_k8s

 

标签:kubectl,插件,swagger,版本,检查,API,kubepug,k8s
From: https://www.cnblogs.com/zbhlinux/p/17890733.html

相关文章

  • vscode-go语言插件,分析(三)
    goDebugConfiguration.ts配置GoDebugConfigurationProvider实现vscode.DebugConfigurationProvider接口goDebugFactory.ts调试工厂GoDebugAdapterDescriptorFactory描述工厂,实现vscode.DebugAdapterDescriptorFactory接口GoDebugAdapterTrackerFactory跟踪器,能够读取记录......
  • VSCode插件开发:右键点击创建一个文件夹和相应名称的文件
    开发一个输入名称然后创建文件夹和相同文件名的文件那么首先是注册右键点击事件"contributes":{"commands":[{"command":"createuniappfile.createvuefile","title":"CreateUniappFile"}],&qu......
  • Windows系统webp图片预览插件
    Windows系统webp图片预览插件、下载插件并安装软件名称:WebPCodecforWindows(WindowsWebP编解码组件)最新版本:0.19.9(29Jan2020)评可证:Freeware系统要求:WindowsXP/Vista/7/8/10下载地址:WebpCodecSetup.exe(4.9MB)、WebPPhotoshopplug-in(516KB) ......
  • Nacos源码(五):服务端健康检查源码分析
    服务注册到Nacos后,其他服务就可以获取该服务的实例信息,调用此服务;当服务宕机,Nacos会将该服务信息从维护的服务实例列表中删除,此时,其他服务获取不到该服务的实例信息,无法调用该服务。该服务是否应该被删除,取决于该服务是否健康,Nacos提供健康检查机制,判断服务是否有问题,将不健康......
  • vscode插件开发,使用CustomEditor进行OFD文件预览
    使用js开发,对ofd预览使用的三方库是ofd.js,通过将ofd.js继承到插件里面对点击ofd文件进行预览的效果要实现的效果大致如下:识别*.ofd结尾的文件打开OfdViewer窗口,实现预览ofd文件那么开始了,这里就不详细讲解如何创建vscode插件开发,直接看几个重要的代码,也就是实现的逻辑。......
  • 支持生成接口文档!Apipost IDEA插件使用体验
    前言Idea是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序,Idea还具有许多插件和扩展,可以根据开发人员的需要进行定制和扩展,从而提高开发效率,今天我们就来介绍一款国产的API调试插件:Apipost-Helper什么是Apipost-Helper?Apipost-He......
  • 超级好用的IDEA插件推荐
    IDEA是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。今天给大家介绍一款IDEA插件:Apipost-Helper-2.0。代码写完直接编辑器内调试、还支持生成接口文档、......
  • HydroOJ 从入门到入土(5)插件集锦
    总有些需求,未必有啥用,但是很可爱.本文将介绍一些插件相关的知识,并不专业,因为我不懂js(逃目录1.关于插件2.官方插件3.三方插件4.官方站上的第三方插件1.关于插件插件使用js/ts语言编写.插件功能强大,分前后端,可以干任何事情,所以尽量不要使用来路不......
  • pycharm插件离线安装
    给不能联网的电脑或者不能访问外网的云桌面安装pycharm插件,需要离线安装首先在能访问网络的电脑上打开插件主页,如下:下载插件安装文件   ......
  • vscode-go语言插件,调试器协议分析(二)
    版本信息Server:{"Commands":["gopls.add_dependency","gopls.add_import","gopls.add_telemetry_counters","gopls.apply_fix","gopls.change_signature","gopls.check_u......