概述
kubectl是k8s集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装和部署
命令格式
1
| kubectl [command] [type] [name] [flags]
|
参数
command:指定要对资源执行的操作,例如:create、get、describe、delete
type:指定资源类型,资源类型是大小写敏感的,可以使用单数、复数、缩略的形式
name:资源的名称,大小写敏感,且可以省略,省略则会显示所有的资源
flags:指定可选参数
获取帮助信息
1 2 3 4
| # 获取kubectl帮助信息 kubectl --help # 获取某个命令的介绍和使用 kubectl get --help
|
基础命令
命令 |
介绍 |
create |
通过文件名或者标准输入创建资源 |
expose |
使用 replication controller, service, deployment 或者 pod并暴露它作为一个 新的 Kubernetes Service |
run |
在集群中运行一个指定镜像 |
set |
在对象上设定特定的功能 |
get |
显示一个或多个资源 |
edit |
编辑一个资源 |
delete |
通过文件名、标准输入、资源名、标签来删除资源 |
create
1
| kubectl create -f FILENAEM #使用yaml文件创建资源
|
部署命令
命令 |
介绍 |
rollout |
管理资源的发布 |
scale |
为deployment、replicaSet、replicaController、job设置一个新的副本数量 |
autoscale |
动调整一个 Deployment, ReplicaSet, 或者 ReplicationController的副本数量 |
集群管理命令
命令 |
介绍 |
certificate |
修改证书资源 |
cluster-info |
显示集群信息 |
top |
显示资源 |
cordon |
标记 node 为不可被调度 |
uncordon |
标记 node 为 可被调度 |
drain |
驱逐节点上的应用,准备下线维护 |
taint |
更新一个或者多个 node 上的 taints |
故障和调试命令
命令 |
介绍 |
describe |
显示特定资源或资源组的详细信息 |
logs |
输出容器在 pod 中的日志 |
attach |
连接到现有容器中一个正在运行的进程 |
exec |
执行命令到容器 |
port-forward |
将一个或多个本地端口转发到pod |
proxy |
运行一个 proxy 到 Kubernetes API server |
cp |
拷贝文件或目录到容器中 |
auth |
检查授权 |
其他命令
命令 |
介绍 |
diff |
比较当前在线配置与本地配置的差异 |
apply |
通过文件名或标准输入对资源应用的配置 |
patch |
使用补丁修改、更新资源的字段 |
replace |
通过文件名或标准输入替换一个资源 |
convert |
不同API版本之前转换配置文件 |
label |
更新资源上的标签 |
annotate |
更新资源上的注释 |
completion |
用于实现kubectl工具自动补全 |
config |
修改k8s文件 |
plugin |
运行一个命令行插件 |
version |
打印客户端和服务版本信息 |