第23关 让K8s管理变得轻松! Kubectl插件助你管理K8s如虎添翼

2023-12-14 21:44

本文主要是介绍第23关 让K8s管理变得轻松! Kubectl插件助你管理K8s如虎添翼,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

------> 课程视频同步分享在今日头条和B站

大家好,我是博哥爱运维。

这节课我们来认识一下kubectl二进制客户端的插件功能

使用以下示例来帮助您熟悉编写和使用kubectl插件:

# 用任何你熟悉的开发语言,创建一个可执行的文件,可以是二进制文件,也可以是脚本
# 注意可执行文件的名称前面要以 "kubectl-"  开头,例如:"kubectl-hello"
cat ./kubectl-hello
#!/bin/bashecho "hello world"# 给文件添加可执行权限
chmod +x ./kubectl-hello# 移动文件到系统默认的可执行目录 PATH
sudo mv ./kubectl-hello /usr/local/bin# 这样我们就安装好了一个 kubectl 插件.
# 查看可用的所有插件`kubectl`,我们可以使用`kubectl plugin list`子命令:
kubectl plugin list# 执行相应的插件
kubectl hello"hello world"
# 要卸载一个插件,我们只需要直接删除这个可执行文件即可
sudo rm /usr/local/bin/kubectl-hello

下面来跟着博哥,手写一个k8s节点事件查看的插件:

# cat ./kubectl-nodeck 
#!/bin/bashcheck_k8s_resource(){
for ip in `kubectl get node|grep -wv SchedulingDisabled|awk 'NR!=1{print $1}'`;do echo "============================ [ $ip ] ============================";kubectl describe node $ip|tail -7;done
}check_k8s_resource# chmod +x ./kubectl-nodeck 
# mv ./kubectl-nodeck /usr/local/bin/
# kubectl plugin list
The following compatible plugins are available:/usr/local/bin/kubectl-nodeck# kubectl nodeck
============================ [ 10.0.0.224 ] ============================(Total limits may be over 100 percent, i.e., overcommitted.)Resource           Requests     Limits--------           --------     ------cpu                562m (7%)    420m (5%)memory             966Mi (12%)  1186Mi (15%)ephemeral-storage  0 (0%)       0 (0%)
Events:              <none>
......省略

附:

一个开源的kubectl插件管理工具

https://krew.sigs.k8s.io/

这篇关于第23关 让K8s管理变得轻松! Kubectl插件助你管理K8s如虎添翼的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/493989

相关文章

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

利用Go语言开发文件操作工具轻松处理所有文件

《利用Go语言开发文件操作工具轻松处理所有文件》在后端开发中,文件操作是一个非常常见但又容易出错的场景,本文小编要向大家介绍一个强大的Go语言文件操作工具库,它能帮你轻松处理各种文件操作场景... 目录为什么需要这个工具?核心功能详解1. 文件/目录存javascript在性检查2. 批量创建目录3. 文件

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Redis实现RBAC权限管理

《Redis实现RBAC权限管理》本文主要介绍了Redis实现RBAC权限管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1. 什么是 RBAC?2. 为什么使用 Redis 实现 RBAC?3. 设计 RBAC 数据结构

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

Linux内存泄露的原因排查和解决方案(内存管理方法)

《Linux内存泄露的原因排查和解决方案(内存管理方法)》文章主要介绍了运维团队在Linux处理LB服务内存暴涨、内存报警问题的过程,从发现问题、排查原因到制定解决方案,并从中学习了Linux内存管理... 目录一、问题二、排查过程三、解决方案四、内存管理方法1)linux内存寻址2)Linux分页机制3)

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用