K8S命令总结

kubectl create -f xxx.yaml [-n $namespaceName] 通过资源描述文件创建资源 [在指定命名空间中创建]
kubectl logs $podname 在k8s节点上查询指定pod的日志,此命令只适用于pod中只有一个容器的日志查询
kubectl logs $podname -c $containerName 查询pod中某个容器的日志,功能类似docker logs $containerName。$containerName是在pod的yaml描述文件中spec-containers下指定的
kubectl logs $podname --previous pod异常退出后查看退出的pod的日志,检查为什么异常退出
kubectl get po --show-labels 显示pod的标签项
kubectl label po $podname labelkey=lableValue 为pod新增标签
kubectl label po $podname $labelkey=lableNewValue --overwrite 修改pod的现有标签值,将$podname的$labelkey标签值修改为lableNewValue
kubectl get po -l labelkey=lableValue 通过标签名和标签值筛选pod
kubectl get po -l labelkey!=lableValue 筛选包含标签名,但值不为lableValue的所有pod
kubectl get po -l labelkey in (lableValue1,lableValue1) 筛选包含标签名且值在指定范围内的所有pod
kubectl get po -l labelkey notin (lableValue1,lableValue1) 筛选包含标签名且值不在指定范围内的所有pod
kubectl get po -l labelkey 筛选包含标签名的所有pod
kubectl get po -l '!labelkey' 筛选不包含标签名的所有pod
kubectl get po -n $namespaceName 获取指定命名空间下的pod
kubectl delete po $podname 删除指定pod
kubectl delete po -l lablekey=lableValue 删除指定标签的pod
kubectl delete ns $namespaceName 删除整个命名空间,其内的所有pod会被删除
kubectl delete po --all 删除当前命名空间下的所有pod,不删除命名空间
kubectl delete all --all 删除当前命名空间下的所有资源(第一个all的含义)的所有实例(第二个all的含义)
kubectl edit rc $rcname

修改已经生效的副本管理器rc的配置,修改后直接生效,

比如改变rc的标签,将导致现有的pod全部失效,自动重新创建新pod

kubectl scale rc $rcname --replicas=5 将rc的副本数调整为5,也可通过 kubectl edit rc $rcname修改replicas
kubectl delete rc $rcname --cascade=false
删除rc,保留pod
kubectl exec -it $podname bash
kubectl exec类似docker exec,在pod中执行命令

kubectl create configmap $configmapname
--from-literal=$mapkey1=$mapvalue1

--from-literal=$mapkey2=$mapvalue2

创建configmap,使用--from-literal通过指定n个字面量键值对为configmap片增加条目

kubectl create configmap $configmapname
--from-file=$fileOrPathName1

--from-file=$fileOrPathName2

创建configmap,使用--from-file指定配置文件名,在当前目录下查找$fileOrPathName文件,将文件内容存储在configmap中以$fileOrPathName为键名的条目下

创建configmap,使用--from-file指定配置文件目录,为文件夹下的每个文件都创建一个条目

kubectl create -f $deplName.yaml --record
创建deployment资源,--record必带,用于记录版本号用于回滚发布
kubectl rollout status deployment $deplName 前台监控deployment滚动升级过程
kubectl rollout history deployment $deplName 列出指定deployment滚动升级历史,主要获取不同升级的版本号revision,用于指定版本号进行恢复 P275
kubectl rollout undo deployment $deplName [--to-revision=1] 手动回滚到先前部署的版本[恢复到指定的版本号而不是上个版本]

kubectl set image deployment $deplName

$containerName=yfzhou528/kubia:v2

手动触发滚动升级:通过命令修改deployment中容器的镜像(通常通过更改版本号v2来触发)
kubectl rollout pause deployment $deplName
手动暂停滚动升级
kubectl rollout resume deployment $deplName 手动恢复滚动升级
posted @ 2020-08-28 18:04  氯雷他定  阅读(69)  评论(0编辑  收藏  举报