首页 > 其他分享 >kubectl使用命令行插件

kubectl使用命令行插件

时间:2023-10-17 16:36:57浏览次数:36  
标签:kubectl 插件 master 命令行 k8s root hello

为了扩展kubectl的功能,Kubernetes从1.8版本开始引入插件机制,在1.14版本时达到稳定版。
用户自定义插件的可执行文件名需要以“kubectl-”开头,复制到$PATH中的某个目录(如/usr/local/bin)下,然后就可以通过kubectl 运行自定义插件了。
例如,通过Shell脚本实现一个名为hello的插件,其功能为在屏幕上输出字符串“hello world”。创建名为“kubectl-hello”的Shell脚本文件,内容如下:

[root@k8s-master ~]# vi kubectl-hello
#!/bin/bash
echo "this is tanlaing"

[root@k8s-master ~]# chmod +x kubectl-hello

[root@k8s-master ~]# mv kubectl-hello /usr/local/bin/
      
[root@k8s-master ~]# kubectl hello
this is tanlaing
       
[root@k8s-master ~]# kubectl plugin list
The following compatible plugins are available:
/usr/local/bin/kubectl-hello

卸载插件也很简单,只需要删除插件文件即可

通过插件机制,可以将某些复杂的kubectl命令简化为运行插件的方式。例如想创建一个命令来查看当前上下文环境(context)中的用户名,则可以通过kubectl config view命令进行查看。为此,可以创建一个名为“kubectl-whoami”的Shell脚本,内容如下:

kubectl config view --template='{{ range .contexts }}{{if eq .name "'$(kubectl config current-context)'"}}Current user: {{ printf "%s\n" .context.user }}{{end}}{{end}}'
[root@k8s-master ~]# mv kubectl-whoami  /usr/local/bin/
[root@k8s-master ~]# chmod +x /usr/local/bin/kubectl-whoami 
[root@k8s-master ~]# kubectl-whoami 
Current user: kubernetes-admin
[root@k8s-master ~]# kubectl whoami 
Current user: kubernetes-admin

标签:kubectl,插件,master,命令行,k8s,root,hello
From: https://www.cnblogs.com/tanll/p/17770044.html

相关文章

  • kubectl 格式化输出
    1、显示Pod的更多信息,例如Node等:[root@k8s-master~]#kubectlgetpodnginx-585449566-qkwhc-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESnginx-585449566-qkwhc1/1Runnin......
  • fastify-sensible fastify 一些工具类插件
    fastify-sensible是来自官方的一个插件,提供了一些默认实现(实际上就是一些方便的工具类)方便使用说明对于基于fastify开发的一些接口服务,通用的http状态码,以及异常处理fastify-sensible是一个很不错的工具包参考资料https://github.com/fastify/fastify-sensible......
  • fastify-autoload + ncc + s3 实现模块的插件化开发加载
    以前简单说明过基于fastify-autoload的插件化加载fastify插件,方便实现开发,但是对于实际生产环境我们可以需要频繁的模块修改,发布以及构建,所以需要我们需要频繁的调整,不是很方便,我们可以基于ncc进行入口的打包,同时对于每个插件也基于ncc打包为独立的文件,这样我们开发的插件只需......
  • VSCode 新手入门第一期 基本安装&常用插件
    前言来一大份适用于科大的VSCode上手全家桶安装VSCode官方下载地址:https://code.visualstudio.com/Download这边直接大按钮下的是User版(只能在你的账户里用),我自己下的是下面的SystemInstaller,优点是全局可用,缺点是补分操作需要管理员权限以上两个版本下哪个都可以由于现......
  • fastify-autoload 一个方便的插件动态加载包
    fastify-autoload是一个方便的fastify插件加载工具,我们可以基于路径直接加载开发的插件参考使用配置constFastify=require('fastify')constpath=require("path")constautoLoad=require('@fastify/autoload');constapp=Fastify({logge......
  • C#开发wps插件
    首先安装wps2016专业版,然后再开发。第一步,打开vs2010,新建一个类库项目  说明:其中Resource1.resx是资源文件,它包括了两张png图片一个定义ribbon的txt文件。第二步,项目生成设置勾选com互操作注册。第三步:设置程序集文件打开AssemblyInfo.cs设置ComVisible为true,如图所示......
  • UE功能性插件
    ---打开资源管理器UCLASS()classOPENWINDOWSFILE_APIUMyBlueprintFunctionLibrary:publicUBlueprintFunctionLibrary{ GENERATED_BODY()public: UFUNCTION(BlueprintCallable,Category="OpenWindowsFile") staticTArray<FString>OpenWindowsFiles();};#......
  • p4 命令行上传文件
    1.p4add目录我们知道p4中没有对目录的版本控制,在p4add的时候只能是文件,所以如果想一次把一个目录add到p4上,需要以下方法:Linux/unix中p4addfiles:find.-typef-print|p4-x-addhttps://www.cnblogs.com/itech/p/3008971.html2.上传文件p4revert...  恢复当......
  • elasticsearch安装dynamic-synonym插件
    今天就来和大家讲讲如何在es中安装dynamic-synonym插件,首先我们需要去github上下载与es版本对应的插件,一般github上基本都是本地词库和远程文本词库的,在gitee上可以找到采用数据库作为词库的源码,大致思路就是修改一些参数配置,然后自己创建一个表作为同义词词库,最后将打包好的jar包......
  • 命令行中perl程序调试
    用-d命令行选项启动Perl解释器,例如perl-dtest.pl即进入Perl调试器的交互界面。调试命令如下:(所有命令都在调试提示符下顶格输入,命令要区分大小写)h:显示调试器的帮助信息。|h:以分页形式显示调试器的帮助信息。hh:显示一个简要的帮助信息。h调试命令:显示某个调试命令的帮助......