当前位置: 首页 > 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…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1

每日一言 生活的美好&#xff0c;总是藏在那些你咬牙坚持的日子里。 硬件&#xff1a;OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写&#xff0c;"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...

使用LangGraph和LangSmith构建多智能体人工智能系统

现在&#xff0c;通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战&#xff0c;比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...