Kubectl常用命令

news2025/1/11 7:54:02

管理资源(查看、创建、更新、删除)

查看node资源

kubectl get nodes

查看命名空间

kubectl get ns

查看service资源

-n 指明所属的命名空间,不写默认看命名空间为default下的所有service

kubectl get svc -n default

查看pod资源

-n 指明所属的命名空间,不写默认看命名空间为default下的pod

kubectl get pods -n test

-o wide :查看资源列表的更多信息

kubectl get pods -o wide 

查看某个资源的详情

例如:查看 pod名为 pod-nginx的详细信息
-n 指明pod-nginx所属的命名空间

kubectl describe pod pod-nginx -n test

创建新的命名空间

例如:创建名为 dev 的命名空间

kubectl create ns dev

创建资源

kubectl create -f resource.yaml

更新资源(变更了镜像)

kubectl apply -f resource.yaml

删除资源

kubectl delete -f resource.yaml

删目录下所有yaml文件定义的所有资源

kubectl delete -f .

强制删除

kubectl delete -f resource.yaml --force --grace-period=0

管理资源标签

例如:查看节点名为 k8s-node1 上的所有标签

kubectl get nodes k8s-node1 --show-labels

给 k8s-node1 节点打个具有 “node-type=worker” 的标签

kubectl label nodes k8s-node1 node-type=worker

列出命名空间为test下 标签key是 “release” 的Pod(-l:仅过滤不显示标签)

kubectl get pods -n test -l release

列出命名空间为test下 标签key包含 “release” 或 “app” 的Pod(-L:显示对应的标签值)

kubectl get pods -n test -L release,app

列出命名空间为test下 标签key是 “release”、值是 “v1” 的 Pod(不显示标签)

kubectl get pods -n test -l release=v1

删除命名空间为test下 标签key是“release”、值是 “v1” 的 Pod

kubectl delete pods -n test -l release=v1

删除资源的某个标签

例如:删除 “k8s-node2” 节点上的 “node-type”标签

kubectl label nodes k8s-node2 node-type-

查看pod日志

例如:查看pod名为foobar的日志

kubectl logs foobar

查看pod中具体容器日志

例如:查看名为foobar的pod,它里面的nginx容器的日志

kubectl logs foobar -c nginx

进入pod的容器内

(1)pod里只有一个容器,使用参数exec -it ,直接登录到pod中

例如:查看pod名为foobar

kubectl exec -it foobar -- bash

(2)pod里有多个容器,加-c指定进入到pod具体容器里

kubectl exec -it foobar -c nginx --  bash

管理 pod 扩缩容

scale命令用于手动横向扩展

kubectl scale --replicas=3 deployment nginx

autoscal命令用于自动扩展确认,会根据负载进行调解。
这条命令可以对Deployment进行设定,通过最小值和最大值的指定进行设定。

kubectl autoscale deployment nginx --min=2 --max=5

节点维护-指定 node 节点不可用

例如:将 k8s-node1 节点设置为不可用,然后重新调度该节点上的所有 Pod

1、设置节点是不可调度状态

kubectl cordon k8s-node1    

2、驱逐节点上的pod资源

kubectl drain k8s-node-1 --delete-emptydir-data --ignore-daemonsets --force

检查可用节点数量

检查集群中有多少节点为 Ready 状态(不包括被打上 Taint:NoSchedule 的节点)

  • -i 是忽略大小写,-v 是排除在外, -c 是统计查出来的条数
kubectl describe nodes | grep -i Taint | grep -vc NoSchedule

监控 pod 的 cpu

例如:找出标签是 name=cpu-user 的 Pod,并按 CPU使用的程度正向排序

前提:安装部署metrics

1、master上放 metrics-server.yaml
2、node上解压镜像:ctr -n k8s.io i import metrics-server-amd64-0-3-6.tar.gz
3、查看服务:kubectl get pods -n kube-system

以上1、2中,metrics 部署资源 下载

链接: https://pan.baidu.com/s/1AcGtMjXFk9_iEHRuPnR5WQ?pwd=r2km
提取码: r2km
在这里插入图片描述

  • 没有指定的 namespace。需要使用 -A 看所有 namespace下
kubectl top pod -l name=cpu-user --sort-by=cpu -A

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1524527.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

万界星空科技商业开源MES,技术支持+项目合作

商业开源的一套超有价值的JAVA制造执行MES系统源码 亲测 带本地部署搭建教程 教你如何在本地运行运行起来。 开发环境:jdk11tomcatmysql8springbootmaven 可以免费使用,需要源码价格便宜,私信我获取。 一、系统概述: MES制造执…

网络安全实训Day5

写在前面 昨天忘更新了......讲的内容不多,就一个NAT。 之前记的NAT的内容:blog.csdn.net/Yisitelz/article/details/131840119 网络安全实训-网络工程 NAT 公网地址与私网地址 公网地址 可以在互联网上被寻址,由运营商统一分配全球唯一的I…

Coursera上Golang专项课程2:Functions, Methods, and Interfaces in Go 学习笔记

Functions, Methods, and Interfaces in Go Course Certificate 本文是学习 Functions, Methods, and Interfaces in Go 这门课的学习笔记,如有侵权,请联系删除。 文章目录 Functions, Methods, and Interfaces in GoMODULE 1: FUNCTIONS AND ORGANIZ…

云原生部署手册02:将本地应用部署至k8s集群

(一)部署集群镜像仓库 1. 集群配置 首先看一下集群配置: (base) ➜ ~ multipass ls Name State IPv4 Image master Running 192.168.64.5 Ubuntu 22.04 LTS1…

多进程数据库不适合作为hive的元数据库

简介 “今天发现一个比较奇怪的现象,因为博主不熟悉mysql,所以在安装hive的使用了postgresql作为hive的元数据库,在测试几个连接工具对hive进行链接,后面再测试的时候发现链接不上了,并且报错日志如下:” …

利用生成式人工智能进行功能管理测试

就 DevOps 而言,生成式 AI与功能管理测试的新兴集成标志着一次重大演变。我们将认真研究这项技术如何彻底改变我们创建测试环境的方式。 使用人工智能生成测试使我们能够模拟大量的用户场景和环境,这意味着我们可以开发和部署不仅好而且很棒的功能&…

django实现api接口

(前期准备)第一步:虚拟环境 在windows上使用virtualenvwrapper。 pip install virtualenvwrapper-win 接着,添加环境变量。 echo %WORKON_HOME% 接下来就是创建虚拟环境,假如创建myenv mkvirtualenv myenv 进入…

线程的基本使用

线程 使用线程方法 继承Thread类,重写run方法实现Runnable接口,重写run方法 继承Thread vs 实现Runnable的区别 从java的设计来看,通过继承Thread或者实现Runnable接口来创建线程本质上没有区别,从jdk帮助文档可以看到Thread类本身就实现…

如何在不带备份的情况下恢复 Android 手机照片?

你的 Android 手机出了什么问题? Android 手机上的垃圾文件过多。 您的 Android 手机屏幕黑屏。 您的手机蓝屏死机。 您的设备卡在启动屏幕上。 电话停止工作。 手机一直关机。 ... 您是否遇到过以上情况并将您的 Android 手机恢复出厂设置?如果是这样&…

最后的挣扎 - Qt For Android on HuaWei Mate 60Pro (v4.0.0)

简介 为什么叫最后的挣扎, 其实都知道即将到来的 HarmonyOS NEXT 将抛弃Android支持,纯血HarmonyOS 将上线, 此时再说Qt for android支持Huawei HarmonyOS的设备其实并没有多少意思, 但恐怕在大多数基础软件完成兼容前, 很多人还是…

【Godot 4.2】常见几何图形、网格、刻度线点求取函数及原理总结

概述 本篇为ShapePoints静态函数库的补充和辅助文档。ShapePoints函数库是一个用于生成常见几何图形顶点数据(PackedVector2Array)的静态函数库。生成的数据可用于_draw和Line2D、Polygon2D等进行绘制和显示。因为不断地持续扩展,ShapePoint…

定位及解决OOM

一、定义 内存溢出:OutOfMemoryError,是指因内存不够,导致操作新对象没有剩余空间。会导致频繁fullgc出现STW从而导致性能下降。 内存泄漏:指用malloc或new申请了一块内存,但是没有通过free或delete将内存释放&#…

cmd常用指令

cmd全称Command Prompt,中文译为命令提示符。 命令提示符是在操作系统中,提示进行命令输入的一种工作提示符。 在不同的操作系统环境下,命令提示符各不相同。 在windows环境下,命令行程序为cmd.exe,是一个32位的命令…

全域电商数据API接口采集突破堆人头的方式的数据采集实现高效稳定大批量的电商商品数据采集

全域电商,是近几年的新趋势,几乎所有商家都在布局全域,追求全域增长。但商家发现,随着投入成本的上涨,利润却没有增加。 其中最为突出的是——商家为保证全域数据的及时更新,通过堆人头的方式完成每日取数…

vulhub中GitLab 任意文件读取漏洞复现(CVE-2016-9086)

GitLab是一款Ruby开发的Git项目管理平台。在8.9版本后添加的“导出、导入项目”功能,因为没有处理好压缩包中的软连接,已登录用户可以利用这个功能读取服务器上的任意文件。 环境运行后,访问http://your-ip:8080即可查看GitLab主页&#xff0…

cartographer学习与使用

记录一下在配置和使用cartographer建图时遇到的各种问题吧。 我的数据 配置文件&#xff1a; my_rslidar.launch <launch> <param name"/use_sim_time" value"false" /> <!--启动建图节点--> <node name"cartographer_n…

设计模式学习笔记 - 设计原则与思想总结:1.总结回顾面向对象、设计原则、编程规范、重构技巧等知识点

概述 对前面的内容的回顾&#xff0c;温故而知新&#xff0c;包括&#xff1a;面向对象、设计原则、规范与重构三个模块的内容。 1.代码质量评判标准 如何评价代码质量的高低&#xff1f; 代码质量的评价具有很强的主观性&#xff0c;描述代码质量的词汇也有很多&#xff0c…

【人工智能】英文学习材料01(每日一句)

&#x1f33b;个人主页&#xff1a;相洋同学 &#x1f947;学习在于行动、总结和坚持&#xff0c;共勉&#xff01; 目录 1.Natural Language Processing&#xff0c;NLP&#xff08;自然语言处理&#xff09; 2.Machine Learing&#xff0c;ML&#xff08;机器学习&#xf…

R语言:microeco:一个用于微生物群落生态学数据挖掘的R包,第四:trans_beta class

trans_beta class&#xff1a;利用trans_beta类可以变换和绘制beta分集的距离矩阵。该类中涉及到beta多样性的分析主要包括排序、群距、聚类和方差分析。我们首先使用PCoA显示排序。 > dataset$cal_betadiv() The result is stored in object$beta_diversity ... > t1 &…

MySQL-- B+ 树

一、InnoDB 是如何存储数据的&#xff1f; InnoDB 的数据是按「数据页」为单位来读写的 数据库的 I/O 操作的最小单位是页&#xff0c;InnoDB 数据页的默认大小是 16KB 单个数据页的结构及作用 多个数据页之间的逻辑连接&#xff08;双向链表&#xff09;&#xff0c;不需要物…