Kubernetes-常用命令总结(二)
continue to update ... ...
命令行中的资源缩写问题
资源全名称 | 缩写 |
---|---|
namespace | ns |
pods | pod 、po |
deploymentes | deployment 、deploy |
replicaset | rs |
replicationcontroller | rc |
persistentVolumes | pv |
persistentVolumesClaim | pvc |
service | svc |
1 操作资源
1.1 创建资源
$ kubectl create -f xxx.yaml
或者cat xxx.yaml | kubectl create -f -
其中,-f
后面跟yaml文件或者json文件;
1.2 删除资源
$ kubectl delete [deployment | service | pvc | configmaps] resource_name
其中,resource_name表示具体的资源名;
1.3 修改资源
edit
$ kubectl edit [deploy | svc | pvc | cm] resource_name
apply
$ kubectl apply -f xxx.yaml
1.4 查看资源
查看资源名称
$ kubectl get [all | deployment | service | pvc | configmaps]
查看资源的信息
$ kubectl get xxx -o [yaml | json | wide | name]
描述资源信息
$ kubectl describe [deployment | service | pvc | configmaps] resource_name
其中,resource_name表示具体的资源名;
2 其他
2.1 列出集群节点
$ kubectl get nodes
2.2 列出所有的RC
$ kubectl get replicationcontrollers
2.3 扩容复本
$ kubectl scale rc rc_name --replicas=3
其中rc_name为RC名称;
3 标签
标签是可以附加到资源的任意键值对,用以选择具有该确切标签的资源(通过标签选择器完成),只要标签的key是在资源内唯一的,则一个资源就可以拥有多个标签。
3.1 查看标签
$ kubectl get pods --show-label
查看某个标签
$ kubectl get pods -L label_name
其中,label_name为需要查询的标签名
查看有该标签的特定资源
$ kubectl get pods -l label_name
其中,label_name为需要查询的标签名
3.2 添加标签
$ kubectl label po resource_name label_name=label_value
其中,resource_name表示资源名,label_name表示标签名,label_value表示标签值;
3.3 修改标签
$ kubectl label po resource_name label_name=label_new_value --overwrite
其中,resource_name表示资源名,label_name表示标签名,label_new_value表示标签需要更新的值;
4 集群处理
4.1 kubectl集群状态
$ kubectl cluster-info
4.2 显示kubectl命令行及kube服务端的版本
$ kubectl version
4.3 显示支持的API版本集合
$ kubectl api-versions
4.4 显示当前kubectl配置
$ kubectl config view
4.5 查看集群中节点
$ kubectl get no
5 kubectl创建新资源
5.1 按照yaml文件创建资源
$ kubectl creae -f <res.yaml>
5.2 使用某种镜像创建Deployment
$ kubectl run <name> --image=<image>
6 kubectl检查与调试
6.1 查看某种类似资源
$ kubectl get <type> <name>
6.2 查看某特定资源实例
$ kubectl describe <type> <name>
6.3 查看某Pod的日志
$ kubectl logs
6.4 在容器内执行命令
$ kubectl exec
7 kubectl-部署管理
7.1 实现水平扩展或收缩
$ kubectl scale
7.2 部署状态变更状态检查
$ kubectl rollout status
7.3 部署的历史
$ kubectl rollout history
如:kubectl rollout history deploy deploy_name
查看某个deployment的升级版本。
7.4 回滚部署到最近或者某个版本
$ kubectl rollout undo
不指定版本:
如kubectl rollout undo deploy deploy_name
,不指定版本,则默认回滚到上一个版本。等价于--to-revision=0
。
指定版本:
如kubectl rollout undo deploy deploy_name --to-revision=2
,回滚到revision为2的deployment。