【命令记录】k8s常用命令总结

16 篇文章 8 订阅
4 篇文章 0 订阅

k8s常用命令总结

前言

俗话说。好记性不如烂笔头,这里将k8s常用命令进行整理,随时可供查看。希望对大家有一丝帮助。

希望大家觉得有用可以进行关注和收藏。

冲冲冲!

常用命令

node
功能说明命令
查看服务器节点kubectl get nodes
查看服务器节点详情kubectl get nodes -o wide
节点打标签kubectl label nodes <节点名称> labelName=<标签名称>
查看节点标签kubectl get node --show-labels
删除节点标签kubectl label node <节点名称> labelName-
pod
功能说明命令
查看pod节点kubectl get pod <节点名称>
查看所有pod节点kubectl get pods -A
搜索部分pod节点kubectl get pods |grep <节点名称>
查看pod节点详情kubectl get pod -o wide
查看所有名称空间下的podkubectl get pod --all-namespaces
根据yaml文件创建podkubectl apply -f <文件名称>
根据yaml文件删除podkubectl delete -f <文件名称>
删除pod节点kubectl delete pod <pod名称> -n <名称空间>
查看异常的pod节点kubectl get pods -n <名称空间>
查看异常pod节点的日志kubectl describe pod <pod名称> -n <名称空间>
查看pod日志kubectl logs -f <pod名称>
进入podkubectl exec -it <pod名称> bash
普通方式创建podkubectl run <pod名称> --image=<镜像名称>
监控pod(一秒钟更新一次命令)watch -n 1 kubectl get pod
deployment
功能说明命令
deployment部署pod(具有自愈能力,宕机自动拉起)kubectl create deployment <pod名称> --image=<镜像名称>
deployment部署pod(多副本)kubectl create deployment <pod名称> --image=<镜像名称> --replicas=3
查看deployment部署kubectl get deploy
删除deployment部署kubectl delete deploy <pod名称>
deployment扩容\缩容podkubectl scale deploy/<pod名称> --replicas=<5>
deployment扩容\缩容podkubectl edit deploy <pod名称>
deployment滚动更新podkubectl set image deploy/<pod名称> <容器名称>=<镜像名称:版本号> --record
deployment查看pod回退版本kubectl rollout history deploy/<pod名称>
deployment查看pod回退版本详情kubectl rollout history deploy/<pod名称> --revision=1
deployment回退pod到上一个版本kubectl rollout undo deploy/<pod名称>
deployment回退pod到指定版本kubectl rollout undo deploy/<pod名称> --to-revision=1
deployment暴露pod集群内部访问(ClusterIP)kubectl expose deploy <pod名称> --port=8080 --target-port=80 --type=ClusterIP
deployment暴露pod外网访问(NodePort)kubectl expose deploy <pod名称> --port=8080 --target-port=80 --type=NodePort
svc
功能说明命令
查看服务kubectl get svc
查看服务详情kubectl get svc -o wide
查看所有名称空间下的服务kubectl get svc --all-namespaces
namespace
功能说明命令
查看命名空间kubectl get namespace
查看命名空间kubectl get ns
创建命名空间kubectl create ns <名称>
删除命名空间kubectl delete ns <名称>
集群
功能说明命令
集群健康状态kubectl get cs
集群核心组件运行情况kubectl cluster-info
版本kubectl version
apikubectl api-versions
查看事件kubectl get events
创建
功能说明命令
指定yaml文件创建资源kubectl create -f <yaml文件>
创建加更新资源kubectl apply -f <yaml文件>
创建当前目录下的所有yaml资源kubectl create
使用多个yaml文件创建资源kubectl create -f <yaml文件1> -f <yaml文件>
使用url来创建资源kubectl create -f https://git.io/vPieo
创建带有终端的podkubectl run -i --tty busybox --image=busybox
启动一个nginx实例kubectl run nginx --image=nginx
启动多个podkubectl run mybusybox --image=busybox --replicas=5
获取pod和scv的文档kubectl explain pods,svc
更新
功能说明命令
滚动更新pod frontend-v1kubectl rolling-update python-v1 -f python-v2.json
更新资源名称并更新镜像kubectl rolling-update python-v1 python-v2 --image=image:v2
更新frontend pod中的而镜像kubectl rolling-update python --image=image:v2
退出已存在的进行中的滚动更新kubectl rolling-update python-v1 python-v2 --rollback
基于 stdin 输入的 JSON 替换 podcat pod.json |kubectl replace -f -
为 nginx RC 创建服务,启用本地 80 端口连接到容器上的 8000 端口kubectl expose rc nginx --port=80 --target-port=8000
编辑资源
功能说明命令
编辑名为 docker-registry 的 servicekubectl edit svc/docker-registry
使用其他编辑器KUBE_EDITOR=“nano” kubectl edit svc/docker-registry
修改启动参数vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
动态收缩pod
功能说明命令
将foo副本集变成3个kubectl scale --replicas=3 rs/foo
缩放“foo”中指定的资源。kubectl scale --replicas=3 -f foo.yaml
将deployment/mysql从2个变成3个kubectl scale --current-replicas=2 --replicas=3 deployment/mysql
变更多个控制器的数量kubectl scale --replicas=5 rc/foo rc/bar rc/baz
查看变更进度kubectl rollout status deploy deployment/mysql
滚动升级
功能说明命令
配置文件滚动升级kubectl rolling-update:滚动升级 kubectl rolling-update redis-master -f redis-master-controller-v2.yaml
命令升级kubectl rolling-update redis-master --image=redis-master:2.0
pod版本回滚kubectl rolling-update redis-master --image=redis-master:1.0 --rollback
调度配置
功能说明命令
标记节点不可调度kubectl cordon k8s-node
清空节点以待维护kubectl drain k8s-node
标记节点可调度kubectl uncordon k8s-node
显示节点的指标度量kubectl top node k8s-node
将当前集群状态输出到 stdoutkubectl cluster-info dump
将当前集群状态输出到 /path/to/cluster-statekubectl cluster-info dump --output-directory=/path/to/cluster-state
如果该键和影响的污点(taint)已存在,则使用指定的值替换ubectl taint nodes foo dedicated=special-user:NoSchedule
查看kubelet进程启动参数ps -ef |grep kubelet
重启kubelet服务
功能说明命令
重启kubelet服务systemctl daemon-reload ||| systemctl restart kubelet
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值