Kubectl命令格式、启动参数、输出格式详解

文章目录

    • 命令格式如下:
    • 子命令参数如下表
    • 公共启动参数如下表
    • 命令输出格式

命令格式如下:

kubectl [command] [type] [name] [flags]

参数解释如下:

[command]:子命令,用于操作kubernetes集群中的资源对象,例如create、delete、get、apply等。

[type]:资源对象类型,此参数区分大小写且能以单、复数的形式表示,例如pod、pods。

[name]:资源对象的名称,此参数区分大小写。如果在命令中不指定该参数,系统将返回对象类型的全部type列表。例如命令“kubectl get pods”和“kubectl get pod nginx-test1”,前者将会显示所有的Pod列表,后者只显示name为nginx-test1的 Pod。

[flags]:kubectl 子命令的可选参数,例如“-l或者–labels”表示为Pod对象设定自定义的标签。
关于

子命令参数如下表

子命令 说明
get 用于显示一个或者多个资源对象的信息
logs 打印出容器的日志
proxy 将本机的某个端口映射到API Server
rolling-update 对RC进行滚动升级
label 设置或者更新资源对象的labels
apply 从stdin或者配置文件中对资源对象更新配置
api-version 显示当前系统支持的API版本,格式为“group/version”
attach 附着到一个正在运行的容器上
create 从stdin或者配置文件中创建资源对象
deleate 根据配置文件、资源名称、label selector、stdin、删除资源对象
describe 描述一个或者多个资源对象的资源信息
diff 查看配置文件与当前系统中正在运行的资源对象的差异
edit 编辑资源对象的属性,在线更新
exec 执行一个容器内的命令
cluster-info 显示集群中Master和内置服务的信息
config 修改kubeconfig文件
run 基于一个镜像在kubernetes集群上启动一个Deployment
set 设置资源对象的某个特定信息,目前仅支持修改容器的镜像
top 查看Node或Pod的资源使用情况
version 显示系统版本信息
scale 扩容、缩容一个Deployment、ReplicaSet、RC或者Job中Pod的数量
plugin 在kubectl命令行使用用户自定义的插件
rollout 对Deployment进行管理,可用操作包括:history、pause、resume、undo、status
expose 将已经存在的RC、Service、Deployment或者Pod暴露一个新的Service

公共启动参数如下表

参数取值示例 说明
–alsologtostderr=false 设置为 true 表示将日志输出到文件的同时输出到 tderr
–as=” 设置本次操作的用户名
–certificate-authority=” 用于 CA 授权的 cert 文件路径
也- chent-cert1 cate=” 用于 TLS 客户端证书文件路径
–chent-key=” TLS 客户端 key文件路径
–cluster=" 设置要 kubeconfig 中的 cluster名
–context=” 设置要使用的 kubeconfig 中的 context名
–insecure-skip-tls-verify=false 设置为true 表示 跳过TLS 安全验证模式,将使 得HTTPS 连接不安全
–kubec nfig= kubeconfig 配置文件路径,在配置文件中包括 Master 地址信息及必要的认证信息
log back ace-at= 记录日志每到“file:行号”时打印 stack trace
–log-dir=” 日志文件路径
–log-flush-frequency=5s 设置 flush 日志文件的时间间隔
–logtostderr=true 设置为 true 表示 日志输出到 stderr ,不输出到日志文件
–match-server-version=false 设置为true表示客户端版本号需要与服务端一致
–namespace=” 设置本次操作所在的 namespace
–password=” 设置api server 的basic authentication的密码
-s server= 设置 apiserver URL 地址, 默认值localhost: 8080
–stdeπ reshold 在该 threshold 级别之上的日志将输出到stderr
–token=” 设置访问 apiserver 安全 token
–user=" 指定用户名
–username 设置 api server的 basic authentication 的用户名
–v=O glog 日志级别
–vmodule= glog 基于模块的详细的日志级别

命令输出格式

kubectl [command] [type] [name] [flags] -o=<output_forment>
输出格式 说明
-o=custom-columns= 根据自定义列名进行输出,以逗号分隔
-o=custom-columns-file = 从文件中获取自定义列名进行输出
-o=json 以json格式显示结果
-o=jsonpath=<template> 输出 jsonpath 表达式定义的字段信息
-o=jsonpath-file= 输出 jsonpath 表达式定义的字段信息,来源于文件
-o=name 仅输出资源对象的名称
-o=wide 输出额外信息。对于 Pod ,将输出 Pod 所在的 Node名称
-o=yaml 以yaml格式显示结果

你可能感兴趣的:(Kubernetes)