“代理”K是一个完全极简的kubectl“doner”包装
agentk的Python项目详细描述
“k”
TLDR
通过以下任一操作安装“k”:
pip install agentk
(是的,^^它是用python编写的,您的操作系统需要最新版本2或3)
或者将其复制到路径上的bin文件夹中并运行pip install -r requirements.txt
"A person is smart. People are dumb, panicky, dangerous animals, and you know it." -- Agent K
“AGENT”K是一个完全极简的kubectl“doner”-wrap
显然,作为一个简单的包装器,k可以完成kubectl已经可以做的一切,但是它(a)更短,(b)添加了一些技巧,比如合并配置和切换上下文。。(k) 将不想拦截或处理的参数反馈给kubectl命令行。在
使用
相当于:
^{pr2}$切换上下文
无参数调用提示在~/.kube/config
中找到的多个群集上下文之间的上下文切换选项:
k
切换名称空间
可以使用两个等效的命令之一更改当前活动上下文(namespace
键在~/.kube/config
)上的默认名称空间:
kubectl config set-context $(kubectl config current-context) --namespace foo
k sn foo
最后一个命令是k
快捷方式。在
获取资源的快捷方式
您可以在k
脚本中找到定义为字典的快捷方式的完整列表。尤其是:
# resource
"ev": "event",
"ep": "endpoints",
"p": "pod",
"s": "service",
"v": "volume",
"n": "node",
"dp": "deployment",
"st": "statefulset",
"in": "ingress",
"ns": "namespace",
列表末尾有一个字母的操作快捷方式:
# actions
"c": "create",
"a": "apply",
"d": "delete",
这意味着以下内容是等效的:
kubectl apply -f <foo-k8s-manifest.yaml>
k a -f <foo-k8s-manifest.yaml>
发展
为了提醒您,您可以做pip install -e .
以利用开发人员模式。在
云端安装
如果您使用kubectl
而没有特权或超级用户访问权限,例如在企业网络或云shell中(但是您仍然可以访问python),那么您的安装将如下所示:
pip install --user agentk
这将在本地$HOME
文件夹中安装脚本。在
别忘了在您的~/.bashrc
或~/bash_profile
或其他shell rc文件后附加:
export PATH="$HOME/.local/bin:$PATH"
命令完成
您可以将其放入.bashrc
中,以获得k
的别名和自动完成,类似于kubectl
:
source <(kubectl completion bash | sed s/kubectl/k/g)
类似的方法适用于zsh。在
- 项目
标签: