首先,要理解是的kubectl用来控制k8s集群的。就好比shell(比如:sh,bash)是控制linux/unix操作系统是一样的关系。
我们先来做个实践吧,登录到k8s集群的master节点,来试下执行kubectl命令。
- 查看集群状态
kubectl cluster-info
在笔者安装的集群中显示下图的所示信息,主要是输出master的apiServer地址、端口以及kubeDNS地址。
- 查看集群的所有节点
kubectl get nodes -o wide
在笔者安装的集群中有两个Node,都是Ubuntu系统。当然 -o 参数支持yaml和json,结果会以yaml或者json的结构进行展示。
通过这两个简单的命令,相信大家有一个简单的直观的感受了。当然还有很多的command,后面比较会简单介绍,需要大家在实践中不断的去练习,通过这些命令也能让大家对k8s的基础概念更加深入了解。
其中下面三个命令必须要重点掌握,他们是:
- kubectl get
- kubectl describe
- kubectl apply
更多的命令如下:
- kubectl alpha - alpha环境上命令属性
- kubectl annotate - 更新资源上注释
- kubectl api-resources - 在服务器上打印支持的 API 资源
- kubectl api-versions - 以 “group/version” 的形式在服务器上打印支持的 API 版本
- kubectl apply - 通过文件名或标准输入将配置添加给资源
- kubectl attach - 附加到正在运行的容器
- kubectl auth - 检查授权
- kubectl autoscale - 自动扩展 Deployment, ReplicaSet 或 ReplicationController
- kubectl certificate - 修改证书资源。
- kubectl cluster-info - 展示集群信息
- kubectl completion - 为给定的 shell 输出完成代码( bash 或 zsh)
- kubectl config - 修改 kubeconfig 配置文件
- kubectl convert - 在不同的 API 版本之间转换配置文件
- kubectl cordon - 将 node 节点标记为不可调度
- kubectl cp - 从容器复制文件和目录,也可将文件和目录复制到容器。
- kubectl create - 通过文件名或标准输入创建资源。
- kubectl delete - 通过文件名,标准输入,资源和名称或资源和标签选择器删除资源
- kubectl describe - 显示特定资源或资源组的详细信息
- kubectl drain - 为便于维护,需要提前驱逐node节点
- kubectl edit - 在服务器编辑资源
- kubectl exec - 容器内退出命令
- kubectl explain - 资源文档
- kubectl expose - 获取 replication controller, service, deployment 或 pod 资源,并作为新的 Kubernetes 服务暴露
- kubectl get - 展示一个或多个资源
- kubectl label - 升级资源标签
- kubectl logs - 为 pod 中的容器打印日志
- kubectl options - 打印所有命令继承的标识列表
- kubectl patch - 使用战略性合并补丁更新资源字段
- kubectl plugin - 运行命令行插件
- kubectl port-forward - 给 pod 开放一个或多个本地端口
- kubectl proxy - 为 Kubernetes API server 运行代理
- kubectl replace - 通过文件或标准输入替换资源
- kubectl rollout - 管理资源展示
- kubectl run - 在集群上运行指定镜像
- kubectl scale - 给 Deployment, ReplicaSet, Replication Controller 或 Job 设置新副本规模
- kubectl set - 给对象设置特定功能
- kubectl taint - 更新一个或多个 node 节点的污点信息
- kubectl top - 展示资源 (CPU/Memory/Storage) 使用信息。
- kubectl uncordon - 标记 node 节点为可调度
- kubectl version - 打印客户端和服务端版本信息
- kubectl wait - 试验: 在一个或多个资源上等待条件完成