当前位置: 首页 > news >正文

K8S常用kubectl命令汇总(持续更新中)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • 1. 命名空间namespace相关
    • 1.1 创建命名空间
    • 1.2 查询命名空间
  • 2. 节点node相关
    • 2.1 查看集群节点
    • 2.2 查看节点健康状态
  • 3. 容器pod相关
    • 3.1 查看pods
    • 3.2 删除pod
    • 3.3 查看pod详细信息
    • 3.4 查看pod描述信息
    • 3.5 查看deployment的日志信息
    • 3.6 查看问题pod
    • 3.7 进入pod
    • 3.8 退出pod
  • 4. 持久化存储pvc相关
    • 4.1 查看pvc
    • 4.2 删除pvc
  • 5. 服务svc相关
    • 5.1 查看svc
    • 5.2 删除svc
  • 6. 查看全部服务
  • 7. 部署服务
    • 7.1 部署所有yml文件
    • 7.2 部署某个yml文件
  • 8. 初始化集群主节点命令
    • 8.1 配置镜像列表
    • 8.2 拉取镜像
    • 8.3 初始化kubeadm
    • 8.4 其他节点加入集群
    • 8.5 生成join命令
    • 8.6 重置kubeadm
      • 8.6.1 重置kubeadm
      • 8.6.2 移除文件


命令中使用到的一些自定义参数表示的含义如下
namespacename 命名空间名称
podname pod的名称
selectorname 指yaml中定义的selector参数的值
pvcname 表示pvc的名称
deploymentname 表示deployment的名称
svcname 表示service的名称

1. 命名空间namespace相关

1.1 创建命名空间

kubectl create namespace namespacename

如创建一个名为ns-sb的命名空间

kubectl create namespace ns-sb

1.2 查询命名空间

查看全部命名空间

kubectl get namespace -A

2. 节点node相关

2.1 查看集群节点

kubectl get nodes

2.2 查看节点健康状态

kubectl get cs

3. 容器pod相关

3.1 查看pods

查看所有pod

kubectl get pod -A

查看指定命名空间中的pod

kubectl get pods -n namespacename

如查看命名空间为ns-sb的所有pod

kubectl get pods -n ns-sb

3.2 删除pod

未设置副本数或者副本数设为0则可用常规删除命令

kubectl delete pod podname -n namespacename

若设置副本数大于等于1时,则需要删除deployment

kubectl delete deployment name -n namespacename

3.3 查看pod详细信息

查看pod的名称、状态、所在集群的ip、所在节点等信息

kubectl get pod -o wide -n namespacename

3.4 查看pod描述信息

查看所有pod的详细信息(包含日志信息)

kubectl describe pod -n namespacename

查看指定pod的详细信息(包含日志信息)

kubectl describe pod podname -n namespacename

3.5 查看deployment的日志信息

查看deployment的日志

kubectl logs deploymentname -n namespacename

3.6 查看问题pod

查看有问题的pod

kubectl get pods -l selectorname -n namespacename

注:selectorname 指yaml中定义的selector参数的值

3.7 进入pod

进入pod

kubectl exec -it podname -n namespacename -- /bin/bash

3.8 退出pod

退出pod

exit

4. 持久化存储pvc相关

4.1 查看pvc

查看全部pvc

kubectl get pvc -A

查看指定命名空间的pvc

kbuectl get pvc -n namespacename

4.2 删除pvc

kubectl delete pvc pvcname -n namespacename

5. 服务svc相关

即查看service
svc是service的缩写,两者都可用

5.1 查看svc

查看全部svc

kubectl get svc -A

查看指定命名空间的svc

kubectl get svc -n namespacename

5.2 删除svc

kubectl delete svc svcname -n namespacename

6. 查看全部服务

查看全部服务,包含可选pvc、deploy、pod、svc等,也可全选,如下

kubectl get pvc,deploy,pod,svc -A

7. 部署服务

7.1 部署所有yml文件

部署所有yml文件

kubectl apply -f .

7.2 部署某个yml文件

如部署当前文件夹gitlab-yaml下的redis.yml文件

kubectl apply -f ./gitlab-yaml/redis.yml

以下为拓展

8. 初始化集群主节点命令

初始化使用的是kubeadm命令

8.1 配置镜像列表

kubeadm config images list

指定版本

kubeadm config images list --kubernetes-version v1.23.0

8.2 拉取镜像

kubeadm config images pull  --image-repository registry.aliyuncs.com/google_containers

8.3 初始化kubeadm

kubeadm init \--apiserver-advertise-address=172.30.0.224 \--image-repository registry.aliyuncs.com/google_containers \--kubernetes-version v1.23.0 \--service-cidr=10.96.0.0/12 \--pod-network-cidr=10.244.0.0/16 \--ignore-preflight-errors=all

–apiserver-advertise-address 集群通告地址(master 机器IP,这里用的万兆网)
–image-repository 由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址
–kubernetes-version K8s版本,与上面安装的一致
–service-cidr 集群内部虚拟网络,Pod统一访问入口,可以不用更改,直接用上面的参数
–pod-network-cidr Pod网络,与下面部署的CNI网络组件yaml中保持一致,可以不用更改,直接用上面的参数

8.4 其他节点加入集群

加入集群节点的命令(包含token)在初始化完成时输出的内容中,复制保存使用即可

kubeadm join 172.30.0.224:6443 --token 4uhwg7.ldccrwsxmplqahbc \--discovery-token-ca-cert-hash sha256:cf6e896414b3d3169774b38f435d7789a1466c83064c173fc56537ba7e949e81

8.5 生成join命令

如果token过期或忘记加入集群的命令,使用以下命令生成新的加入集群命令(包含token)

kubeadm token create --print-join-command

8.6 重置kubeadm

如果初始化失败,或者需要重新初始化,可执行以下两个命令

8.6.1 重置kubeadm

kubeadm reset

8.6.2 移除文件

移除相关文件,不然会重置失败

sudo rm -fr ~/.kube/  /etc/kubernetes/* var/lib/etcd/*

代理访问dashboard
使用该命令可以将dashboard的服务定位到本机的8001端口

kubectl proxy

会输出Starting to serve on 127.0.0.1:8001
在这里插入图片描述
然后访问代理地址
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

查看访问权限

kubectl auth can-i create deployments --namespace=kubernetes-dashboard

输出yes表示当前用户有权限创建deployments的权限,如果是no则表示没有权限
在这里插入图片描述
删除pod


感谢阅读,祝君暴富!

相关文章:

K8S常用kubectl命令汇总(持续更新中)

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...

加密和签名的区别及应用场景

原文网址:加密和签名的区别及应用场景_IT利刃出鞘的博客-CSDN博客 简介 本文介绍加密和签名的区别及应用场景。 RSA是一种非对称加密算法, 可生成一对密钥(私钥和公钥)。(RSA可以同时支持加密和签名)。 …...

双非二本找实习前的准备day3

学习目标: 每天2-3到简单sql(刷完即止),每天复习代码随想录上的题目3道算法(时间充足可以继续),背诵的八股的问题也在这里记录了 今日碎碎念: 1)偶尔还是贪玩游戏&…...

又挖到宝了!国人团队研发的AI视频工具PixVerse,这么好用居然还完全免费!(强烈推荐)

昨天发了一款国产免费的 AI 绘画工具 Dreamina 的介绍: 居然才发现!字节跳动旗下国产AI绘画工具Dreamina,这么好用居然还免费!(强烈推荐) 发现大家对国产 AI 工具还挺感兴趣的。今天继续帮大家挖国产的 A…...

勒索病毒普通用户防范建议

勒索病毒普通用户防范建议 定期备份存储在计算机上的数据,这样勒索软件感染不会永远破坏您的个人数据。 最好创建两个备份副本:一个存储在云中(记住使用一个自动备份文件的服务),另一个物理存储(便携式硬…...

Zabbix“专家坐诊”第231期问答

问题一 Q:用docker-compose部署zabbix,部署完后如果要修改zabbix的配置应该要改docker-compose文件里的环境变量吧?改了环境变量之后只能重建容器才能生效吗?能不能在不影响已经配好的那些监控项的情况下让新的环境变量生效&#…...

【.NET Core】深入理解IO - FileSteam流

【.NET Core】深入理解IO - FileSteam流 文章目录 【.NET Core】深入理解IO - FileSteam流一、IO流概述二、文件流FileStream2.1 FileStream概述2.2 FileStream检测流位置更改2.3 FileStream构造函数2.4 FileStream常用属性2.5 FileStream.Read方法2.6 FileStream.Write方法2.7…...

CentOS7 Mysql 忘记密码或临时密码进不去时怎么跳过密码进去然后再更改密码

CentOS7 Mysql 忘记密码或临时密码进不去时怎么跳过密码进去然后再更改密码 1、进文件 vi /etc/my.cnf2、加skip-grant-tables设置跳过密码 在[mysqld]下面加 skip-grant-tables3、mysql -u root -p直接回车无密码进去mysql mysql -u root -p3、先更新,不执行这…...

深度学习 精选笔记(8)梯度消失和梯度爆炸

学习参考: 动手学深度学习2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、请联系侵删。 ②已写完的笔记文章会不定时一直修订修改(删、改、增),以达到集多方教程的精华于一文的目的。 ③非常推荐上面(学习参考&#x…...

linux操作docker

docker地址 官方地址 centos7安装docker 卸载旧版本docker sudo //在前面表示以管理员权限操作yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine安装docker //安装所需资…...

k8s Pod 进阶(资源限制,健康检查探针详解,启动退出,pod生命周期,)

目录 资源限制 查看资源控制字段 Pod 资源限制方式 Pod 和容器中定义资源请求和限制的具体字段 CPU资源单位 内存资源单位 示例 健康检查(探针) 探针的三种规则 存活探针(Liveness Probe) 就绪探针(Readines…...

SpringBoot整合ActiveMQ步骤

SpringBoot整合ActiveMQ主要涉及以下几个步骤&#xff1a; 添加依赖&#xff1a;在SpringBoot项目的pom.xml文件中添加ActiveMQ的依赖。 <dependency><groupId>org.apache.activemq</groupId><artifactId>activemq-spring</artifactId><ver…...

MySQL的单表和多表查询

我们在前面曾构建过三个用于实验的表格&#xff0c;下面将基于这三个表进行实践。 # 建立一个用于实验的三个表格 mysql> create table emp (-> empno varchar(10),-> ename varchar(50),-> job varchar(50),-> mgr int,-> hiredate timestamp,-&…...

攻防世界例题wp

1.看到_wakeup()函数第一反应要么触发&#xff0c;要么绕过在这里绕过 2.构造payload实例化一个对象后反序列化 3构造脚本如下&#xff1a; 4.因为它是一个绕过的方法所以我们要使用绕过的方法。 5.继续构造payload将上图的1换成2进行绕过 最终的payload为 O:4:"xctf…...

仿牛客网项目---显示评论和添加评论功能的实现

这篇文章&#xff0c;我来介绍一下我的项目中的另外一个功能&#xff1a;显示评论和添加评论。 其实这两个功能都不怎么重要&#xff0c;我感觉最重要的应该是用户注册登录功能&#xff0c;这个也了解一下&#xff0c;知道这么一回事儿就好。 首先设计DAO层。 Mapper public …...

idea集成git详解教程(实用篇)

0.Git常用命令 Git常用命令-CSDN博客 1.下载git Git - Downloads 一路傻瓜式安装即可&#xff08;NEXT&#xff09; 2.软件测试 在Windows桌面空白处&#xff0c;点击鼠标右键&#xff0c;弹出右键菜单 Git软件安装后&#xff0c;会在右键菜单中增加两个菜单 Git GUI He…...

搭建LNMP环境并配置个人博客系统

LNMP是Linux&#xff08;操作系统&#xff09;、Nginx&#xff08;Web服务器&#xff09;、MySQL&#xff08;数据库&#xff09;和PHP&#xff08;脚本解释器&#xff09;的组合&#xff0c;常用于部署高性能的动态网站&#xff0c;如WordPress等博客平台 一、安装Linux操作系…...

为什么网络安全缺口这么大,还是这么缺网络安全工程师?

为啥网安领域缺口多达300多万人&#xff0c;但网安工程师&#xff08;白帽黑客&#xff09;却很少&#xff0c;难道又是砖家在忽悠人&#xff1f;&#xff1f;&#xff1f; 主要原因为这三点: 首先是学校的原因&#xff0c;很多学校网络安全课程用的还都是十年前的老教材&…...

创新洞察|诺奖获得者埃德蒙·费尔普斯谈未来:中国创新从何而来?

当下&#xff0c;全球宏观经济形势正在发生深刻变化&#xff0c;以创新推进高质量发展被推向前所未有的高度。作为多年与中国经济结伴而行的经济学家、2006年诺贝尔经济学奖得主&#xff0c;埃德蒙费尔普斯认为&#xff1a;创新无处不在&#xff0c;而中国人具有巨大的创新活力…...

SpringMVC 学习(六)之视图

目录 1 SpringMVC 视图介绍 2 JSP 视图 3 Thymeleaf 视图 4 FreeMarker 视图 5 XSLT 视图 6 请求转发与重定向 6.1 请求转发 (Forward) 6.2 重定向 (Redirect) 7 视图控制器 (view-controller) 1 SpringMVC 视图介绍 在 SpringMVC 框架中&#xff0c;视图可以是一个 J…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 抽象 现代智能交通系统 &#xff08;ITS&#xff09; 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 &#xff08;…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

3403. 从盒子中找出字典序最大的字符串 I

3403. 从盒子中找出字典序最大的字符串 I 题目链接&#xff1a;3403. 从盒子中找出字典序最大的字符串 I 代码如下&#xff1a; class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

C++中vector类型的介绍和使用

文章目录 一、vector 类型的简介1.1 基本介绍1.2 常见用法示例1.3 常见成员函数简表 二、vector 数据的插入2.1 push_back() —— 在尾部插入一个元素2.2 emplace_back() —— 在尾部“就地”构造对象2.3 insert() —— 在任意位置插入一个或多个元素2.4 emplace() —— 在任意…...

高保真组件库:开关

一:制作关状态 拖入一个矩形作为关闭的底色:44 x 22,填充灰色CCCCCC,圆角23,边框宽度0,文本为”关“,右对齐,边距2,2,6,2,文本颜色白色FFFFFF。 拖拽一个椭圆,尺寸18 x 18,边框为0。3. 全选转为动态面板状态1命名为”关“。 二:制作开状态 复制关状态并命名为”开…...