littleTools

littleTools是我根据日常运维时编写的一个小工具,开源在了https://github.com/xuxinkun/littleTools上。

littleTools包含一组简短命令,主要用于简化某些命令的输入。目前littleTools有docker-tools和kube-tools两部分,主要用于简化命令docker和kubectl的输入。例如,如果要进入容器,一般需要输入命令docker exec -it xxx bash来完成。但是使用littleTools,只需使用dt-exec xxx就可以实现它。

开发思路

littleTools主要是为简化命令而做,因此直接采用了最简便直接的shell函数进行编写,因此tab键可以帮助用户自动完成命令。

比如想要实现dt-exec {containerid},则只需要获取参数,填充到docker exec -it {containerid} bash的命令中即可。二者效果完全一致。

function dt-exec()
{docker exec -it $1 bash
}

在函数的命名上采用了以下几种方式:

  • dt/kt-verb: 执行某个动作
  • dt/kt-verb-resource: 显示resource的相关信息
  • dt/kt-verb-resourceA-by-resourceB: 根据resourceB获取resourceA

命令一览表

docker-tools

主要用以简化docker的相关命令。

命令 参数 描述
dt-exec {containerid} 用bash执行到容器中。
dt-exec-sh {containerid} 用sh执行到容器中。
dt-show-pid {containerid} 显示容器的0号进程在主机上的pid。
dt-show-pid-all {containerid} 显示容器的所有进程的pids。
dt-show-flavor {containerid} 显示容器的cpu / memory等资源信息。
dt-show-flavor-all 没有 显示所有容器的cpu / memory之类的资源信息。
dt-show-volume {containerid} 显示容器绑定的在主机上的存储路径。
dt-show-volume-all {containerid} 显示容器绑定的在主机上的存储路径以及在容器中绑定的路径。
dt-lookup-by-pid {pid} 根据主机上的{pid}查找包含该进程的容器。
dt-lookup-by-volume {volume path} 根据主机上的{volume path}的路径查找绑定该路径的容器。

这里特别要说明的是dt-lookup-by-pid命令,可以执行根据主机上的某个进程pid号查找对应容器的功能,这个在实际运维中非常实用。
其工作原理是利用了容器中所有进程会使用相同的cgroup path。通过查看该进程的cgroup信息。而后遍历容器的cgroup信息,并进行比对,如果一致,说明该进程属于该容器。

kube-tools

主要用以简化kubectl的相关命令。

命令 参数 描述
kt-exec {pod name}或{namespace} {pod name} 用bash执行进入pod。
kt-exec-sh {pod name}或{namespace} {pod name} 用sh执行进入pod。
kt-get-node {node name} 描述节点。
kt-get-node-ready 没有 列出所有ready节点。
kt-get-node-notready 没有 列出所有notready的节点。
kt-get-node-all 没有 列出所有节点。
kt-get-pod {pod name}或{namespace} {pod name} 描述pod。
kt-get-pod-node {pod name}或{namespace} {pod name} 使用pod获取pod和节点信息。
kt-get-pod-all 没有 获取所有命名空间的所有pod。
kt-get-pod-by-ns {namespace} 获取命名空间中的所有pod。
kt-get-pod-by-rs {rs name}或{namespace} {rs name} 获取rs的所有pod。
kt-get-pod-by-deploy {deploy name}或{namespace} {deploy name} 获取deploy的所有pod。
kt-get-pod-by-svc {svc name}或{namespace} {svc name} 获取svc的所有pod。

样例这里就不重复列举了,可以参考项目的examples.md。

转载于:https://www.cnblogs.com/xuxinkun/p/10570074.html

使用littleTools简化docker/kubectl的命令相关推荐

  1. kubernetes基础介绍及kubectl常用命令

    kubernetes基础介绍及kubectl常用命令 k8s的pod分类 自主式pod 控制器管理的pod 核心主键 HPA service 网络模型 同节点Pod之间的通信 不同节点上的Pod通信 ...

  2. k8s的pod分类、核心组件、网络模型、kubectl常用命令

    一.Pod基础概念 Pod是kubernetes中最小的资源管理组件,Pod也是最小化运行容器化应用的资源对象.一个Pod代表着集群中运行的一个进程.kubernetes中其他大多数组件都是围绕着Po ...

  3. Kubernetes之kubectl常用命令

    本文转自:http://blog.csdn.net/xingwangc2014/article/details/51204224 官网命令介绍:http://kubernetes.io/docs/us ...

  4. Jenkins 与 Kubernetes 的 CI 与 CD Git + Maven + Docker+Kubectl

    目录[-] . 一.Kubernetes 部署 Jenkins . 1.NFS 存储卷创建 Jenkins 目录 . 2.创建 Jenkins 用于存储的 PV.PVC . 3.创建 ServiceA ...

  5. k8s pod分类、核心组件、网络模型、kubectl常用命令

    k8s的pod分类.核心组件.网络模型.kubectl常用命令 K8s基本概念 pod分类 核心组件 K8s的三种网络模型 kubectl常用操作 kubeconfig配置文件 kubectl管理命令 ...

  6. K8s Kubectl基础命令的使用、滚动更新、以及回滚操作

    Kubectl基础命令的使用 kubernetes基本概念 kubectl管理命令 kubectl帮助 Kubectl常用命令的使用 explain edit scale autoscale clus ...

  7. kubectl常用命令大全详解

    文章目录 说明 基础命令详解:create.delete.get.run.expose.set.explain.edit create 命令:根据文件或者输入来创建资源 创建Deployment和Se ...

  8. kubectl全部命令用法示例

    文章目录 1 kubectl命令总结 2 kubectl命令用法测试 create expose run set explain get edit delete rollout scale autos ...

  9. Kubectl 常用命令大全(*)

    前言 Kubectl是一个用于操作kubernetes(k8s)集群的命令行接口,通过利用kubectl的各种命令可以实现各种功能,是在使用kubernetes中非常常用的工具. Kubectl 常用 ...

最新文章

  1. 干货丨有关机器学习每个人都应该了解的东西
  2. windows下python安装Numpy和Scipy模块
  3. java折半查找(正常的折半查找)
  4. SQL Server 2008中的代码安全(四):主密钥
  5. Cake -- ACM解决方法
  6. 白话经典算法系列之六 快速排序 快速搞定
  7. 白噪声检测_科学家尝试用智能扬声器的白噪声来监测婴儿的呼吸运动
  8. elasticsearch-5.6.12 单点安装包括 HEAD插件安装
  9. Python自动发送微信消息
  10. 企业研发人员配备比例_高新企业科技人员占比是什么要求
  11. 台式机关闭计算机时没有待机,台式机设置休眠的方法
  12. 茫茫沧海,你终成了我无法逾越的泅渡
  13. 京东科技风格 NutUI 发布了
  14. 计算机应用基础2004版,计算机应用基础2004年上半年全国试题
  15. Java学习——传说中的13个规范
  16. 经典C语言算法之回文数
  17. 2012年3月19日
  18. 要怎么在计算机里清除桌面内存,电脑内存过大?教你如何清理电脑内存
  19. 城市划分出炉 客户等级划分好了吗?
  20. 窗口跑屏幕外面了怎么办

热门文章

  1. .net 互操作之p/invoke- 数据封送之字符串(2)
  2. python代码块所属关系的语法-天元高校邦数据科学通识课【Python基础语法】答案...
  3. python学习费用-苏州Python培训学校费用
  4. python怎么安装matplotlib-在python3.7下怎么安装matplotlib
  5. python读取excel某一行-Python 读取csv的某行
  6. python开发工资多少-三年 python web 开发,在深圳工资大概时多少?
  7. python爬虫requests-Python爬虫(三)Requests库
  8. python语言入门编程猫-编程猫推出海龟编程器,打造Python教育产品矩阵
  9. python切片语法-Python新手学习基础之数据类型——字符串的切片截取
  10. python读取文件第n行-Python读取文件后n行的代码示例