kubectl 命令行管理工具
类型 |
命令 |
描述 |
基础命令 |
create |
通过文件名或标准输入创建资源 |
expose |
为Deployment,Pod创建service |
|
run |
在集群中运行一个特定的镜像 |
|
set |
在对象上设置特定的功能 |
|
explain |
文档参考资料 |
|
get |
显示一个或多个资源 |
|
edit |
使用系统编辑器编辑一个资源 |
|
delete |
通过文件名、标准输入、资源名称或标签来删除资源 |
|
部署命令 |
rollout |
管理Deployment,Daemonset资源的发布(例如状态、发布记录,回滚等) |
rollout-update |
滚动升级,权限ReplicationController |
|
scale |
对DeploymentReplicaSetRC或lob资源扩容或者锁绒Pod数量 |
|
autoscale |
为Deploy,RS,RC配置自动伸缩规则(依赖metrics-server和hpa) |
|
集群管理命令 |
certificate |
修改证书资源 |
cluster-info |
显示集群信息 |
|
top |
查看资源利用率(依赖master-server) |
|
cordon |
标记节点不可调度 |
|
uncordon |
标记节点可调度 |
|
drain |
驱逐节点上的应用,准备下线维护 |
|
taint |
修改节点taint标记 |
类型 |
命令 |
描述 |
故障诊断和调试命令 |
describe |
显示资源详细信息 |
logs |
查看Pod内容器日志,如果有多个Pod容器,-c参数指定容器名称 |
|
attach |
附加到Pod内的一个容器 |
|
exec |
在容器内执行命令 |
|
port-forward |
为Pod创建本地映射端口 |
|
porxy |
为kubernetes API server创建代理 |
|
cp |
拷贝文件或目录到容器中,或者从容器内向外拷贝文件或目录 |
|
高级命令 |
apply |
从文件名或标准输入对资源创建或更新 |
patch |
使用补丁方式修改、更新资源的某些字段 |
|
replace |
从文件名或标准输入替换一个资源 |
|
convert |
在不同API版本之间转换对象定义 |
|
设置命令 |
label |
给资源设置、更新标签 |
annotate |
给资源设置、更新注释 |
|
completion |
kubectl工具字段补全source <(kubectl completion bash),依赖bash-completion),yum install -y bash-completion,安装完后bash一下后再执行source <(kubectl completion bash)导入 |
|
其他命令 |
api-resources |
查看所有资源 |
api-versions |
打印支持的API版本 |
|
config |
修改kubeconfig文件(用于访问API,比如配置认证信息) |
|
help |
所有命令帮助 |
|
version |
查看kubectl和k8s版本 |
yaml文件上下文关系
集群 |
apiVersion: v1 |
kind: Config |
|
clusters: |
|
- cluster: |
|
certificate-authority-data: |
|
server: https://192.168.10.110:6443 |
|
name: kubernetes |
|
上下文 |
contexts: |
-context: |
|
cluster: kubernetes |
|
user: kubernetes-admin |
|
name: kubernetes-admin@kubernetes |
|
当前上下文 |
current-context: kubernetes-admin@jubernetes |
客户端认证 |
users: |
- name: kubernetes-admin |
|
user: |
|
client-certificate-data: |
|
client-key-data |