kubectl是一个最常用的工具之一,是apiserver的客户端,向apiserver发起http请求来操纵这些资源(即对资源的curd)
kubectl命令大致分为8各种类
命令表格来自于《kubernetes源码剖析》
1.Basic Commands(Beginner)基础命令(初级)
kubectl create | 通过yaml/json 文件或者标准输入创建一个资源对象,支持很多子命令 例如namespace pod deployment service等 |
kubectl expose | 将json/yaml文件中定义的资源对象的端口暴露给新的service资源对象 |
kubectl run | 创建并运行一个或多个容器镜像 |
kubectl set | 配置资源对象设置特定功能 |
2.Basic Commands(Intermediate)基础命令(中级)
kubectl explain | 查看资源对象的详细信息(一般用一编写yaml的时候做一个提示 kubectl explain deployment 会出现deployment下面可以写的字段以及字段属性还有 可以逐级使用) |
kubectl get | 获取一个或多个资源对象的信息 |
kubectl edit | 使用默认编辑器编辑服务器上定义的资源对象 |
kubectl delete | 通过json/yaml文件、标准舒服、资源名称或标签选择器来删除资源 |
3.DeployCommands 部署命令
kubectl rollout | 资源管理对象的部署 |
kubectl rollout-update | 使用rc(replication controller)来做滚动恩星 |
kubectl scale | 扩容或者缩容deployment replicaset replication contrller等 |
kubectl autoscale | 自动设置在k8s系统中运行的pod数量(水平自动伸缩) |
4.Cluster Manager Commands 集群管理命令
kubectl cetificate | 修改证书资源对象 |
kubectl cluster-info | 查看集群信息 |
kubectl top | 显示资源 cpu 内存 存储使用情况 |
kubectl cordon | 标记节点为不可调度 |
kubectl uncordon | 指定节点为可调度 |
kubectl drain | 安全的驱逐节点的所有pod |
kubectl taint | 将一个或多个节点设置为污点 |
5.Troubleshooting adn Debugging Commands 故障排查和调试命令
kubectl describe | 显示一个或多个资源对象的详细信息 |
kubectl logs | 输出pod资源对象中一个容器的日志 |
kubectl attach | 连接到一个运行的容器 |
kubectl exec | 在指定容器内执行命令 |
kubectl port-forward | 将本机指定端口映射到pod资源对象的端口 |
kubectl proxy | 将本机指定端口映射到kube-apiserver |
kubectl cp | 用于pod与主机交换文件 |
kubectl auth | 检查验证 |
6. Advanced Commands 高级命令
kubectl diff | 对比本地json/yaml文件与kube-apiserver中运行的配置文件是否有差异 |
kubectl apply | 通过json/yaml文件 标准输入对资源进行配置更新或者创建 |
kubectl patch | 通过patch方式修改资源对象字段(补丁式) |
kubectl replace | 通过json/yaml文件或者标准输入来替换资源对象 |
kubectl wait | 在一个或者多个资源上等待条件达成 |
kubectl convert | 转换json/yaml文件为不同的资源版本 |
kubectl kustomize | 定制kubernetes配置 |
7.Settings Commands 设置命令
kubectl label | 增删改资源的标签 |
kubectl annotate | 更新一个或者多个资源对象的注释(annotaion)信息 |
kubectl completion | 命令自动补全 |
8.Other Commands 其他命令
kubectl config | 管理kubeconfig配置文件 |
kubectl plugin | 运行命令行插件功能 |
kubectl version | 查看客户端服务端的系统版本信息 |
kubectl api-versions | 列出当前kubernetes系统支持的资源组和资源版本表现形式为/ |
kubectl api-resources | 列出当前kubernetes系统支持的resource资源列表 |
kubectl options | 查看支持的参数列表 |
说实话命令还是非常多的尤其是还有很多子参数,记住所有的命令不现实,那么就收藏需要用的时候翻开针对某一个命令或者某一个需求google进行单工能命令详解,如果有没有写出来的可以私聊或者留言 笔者会不断补充