k8s中常用命令总结
文章目录
- 进入pod容器的命令
- pod中只有1个用户容器
- pod中只有2个(含)以上用户容器
- yaml中的字段不清楚后面跟什么,通过explain来查看
- 查看pod内指定容器的日志
- Pod内各个容器的服务端口不能相同
- 资源对象的创建
- 方式一
- 方式二
- 查看pod的详细信息
- 查看yaml文件的创建后的资源对象的信息
- 查看pod的事件信息(pod状态异常时有用)
- 查看node的详情信息
- 删除pod的方式
进入pod容器的命令
可选项:-c, --container='': 容器的名字. 如果忽略, 默认是进入pod中的第一个容器-p, --pod='': Pod的名字 (-p 可以省略 后面直接跟 pod的名字)-i, --stdin=false: 传递标准输入到容器中-t, --tty=false: 标准输入是一个终端-n, --namespace string 如果存在, 命令行请求的命名空间作用范围
pod中只有1个用户容器
只有一个容器时,进入时不需要指定容器,# 例如 test-pod 为pod名称
kubectl exec -it test-pod -n test -- /bin/sh
pod中只有2个(含)以上用户容器
当有多个容器时就必须加上指定容器(否则默认进入第一个容器),
因此需要明确指定你想进入的容器名称
kubectl exec -it test-pod -c mysql -n test -- /bin/sh
exec:表示在容器内执行命令
-- /bin/sh:表示在容器内打开一个shell终端
遇到的问题:
kubectl exec -it -p mysql-n6tc2 -c mysql -n default – /bin/sh
提示:-p POD_NAME is DEPRECATED and will be removed in a future version. Use exec POD_NAME instead。
意思大概说的是 将来的版本不再 支持 -p pod名字 ,使用 exec pod名字来代替。
kubectl exec -it -c mysql -n default – /bin/sh #错误,会报错
提示:error: expected ‘exec POD_NAME COMMAND [ARG1] [ARG2] … [ARGN]’.
POD_NAME and COMMAND are required arguments for the exec command (意思是说对于exec命令来说 POD的名字和 命令是必须的)
See ‘kubectl exec -h’ for help and examples.
kubectl exec -h #查看exec后面可以跟什么命令或参数 -h 是 -help的缩写
Usage:
kubectl exec POD [-c CONTAINER] – COMMAND [args…] [options]
yaml中的字段不清楚后面跟什么,通过explain来查看
kubectl explain pods.spec.volumes.emptyDir
kubectl explain pods.spec.containers.command
查看pod内指定容器的日志
和kubectl exec 一样,如果一个pod内存在多个容器时,需要通过 -c 指定容器名
kubectl logs test-pod -c nginx-1 #test-pod是pod名称 nginx-1是容器名称
如果存在多个容器,不指定 -c的话,会报以下错误:
#error: a container name must be specified for pod redis-php, choose one of: [frontend redis-master] 意思大概是:必须为pod名为redis-php的pod,指定一个容器名,可选择的容器为 frontend 和 redis-master。
Pod内各个容器的服务端口不能相同
1.注意不能在同一个Pod中创建两个使用相同端口的容器,因为同一个pod内容器之间的访问是通过localhost:端口/接口名的方式,即共享网络栈。pod有自己的ip,但是pod内的容器没有自己的独立ip。公用pod的ip。
2.同一个node里的不同pod之间是隔离的(类似于直接通过docker命令 在虚拟机或物理机上创建的容器)。而同一个pod内的不同容器之间是不隔离的,会共享ip,数据卷等资源。
3.k8s管理调度的最小单元是pod,不是pod内的各个容器。
4.一般情况下一个pod内只有一个用户容器,只有当一组容器有紧密联系时,才把这组容器放到一个pod里。
资源对象的创建
方式一
kubectl create -f xxxx.yaml用于创建 Kubernetes 对象。如果对应的资源已经存在,则会返回错误,此时需要先删除原有的资源对象,然后再执行创建操作。如果资源对象不存在,则会自动创建对应的资源对象
kubectl replace -f pod1.yaml --force
这种先使用 kubectl create 命令,修改yaml配置文件后,然后再使用 kubectl replace 命令的操作,称为命令式配置文件操作。
命令执行完成后,名为 pod1 的 Pod 会被删除后再新建
例如:
[root@k8s-master k8s]# kubectl replace -f frontend-localredis-pod.yaml --force
pod “redis-php” deleted
pod/redis-php replaced
方式二
kubectl apply -f xxxx.yaml
用于创建或更新一个 Kubernetes 对象。如果该资源对象已经存在,则会首先尝试更新对应的字段值和
配置,如果不存在则会自动创建资源对象。
kubectl apply -f pod1.yaml 修改yaml配置文件后
再次使用 kubectl apply 命令更新 Pod。
命令执行完成后,名为 pod1 的 Pod 不会删除后再新建,也不会另外创建新 Pod。只会在原 Pod 基础
上进行内部配置修改。
注意:由 kubectl apply 命令创建的 Pod,可以修改对应的 YAML 文件来修改 Pod中的参数。但不能修改metadata.name(Pod名),否则将重新创建一个新 Pod。
kubectl create -f 适用于初始化资源对象的场景;
而kubectl apply -f 则更加适合更新和修改已有的资源对象,因为它会对比新的 YAML 配置文件和已有的资源对象配置,只更新需要更新的部分,而不会覆盖已有的全部配置
查看pod的详细信息
kubectl get pods -n 命名空间 # 查看指定命名空间下的pod
kubectl get pods -o wide # 显示pod的IP地址及Pod所在的Node节点机器主机名称
kubectl get pods -A # 显示所有命名空间下的pod信息,并在第一列展示命名空间
kubectl get pods # 不指定命名空间,则只显示默认 default,等价于 kubectl get pods -n default
kubectl get pods -A -o wide #显示的比较全的信息命令组合
查看yaml文件的创建后的资源对象的信息
kubectl -n default get pod -o yaml redis-php
查看pod的事件信息(pod状态异常时有用)
kubectl describe pod POD名称 #pod启动失败 就看这个的事件日志就行
查看node的详情信息
kubectl describe node node名称或者node的地址 #查看node的详情信息
删除pod的方式
kubectl delete pod pod名称
或
kubectl delete -f vmware-nginx.yaml #创建pod的资源配置文件
都可以实现删除pod
相关文章:
k8s中常用命令总结
文章目录 进入pod容器的命令pod中只有1个用户容器pod中只有2个(含)以上用户容器 yaml中的字段不清楚后面跟什么,通过explain来查看查看pod内指定容器的日志Pod内各个容器的服务端口不能相同资源对象的创建方式一方式二 查看pod的详细信息查看…...
Logistic map混沌掩盖信号
开学接触了一些有关混沌知识的学习,阅读量一些混沌通信的论文,对于混沌掩盖信号以确保加密通信有一定的兴趣。混沌的产生我选用的是logistic map映射产生混沌,主要就是一个递推公式: 对于这样一个式子,可以看出&#x…...
外包干了2个月,技术有明显退步...
先说一下自己的情况,本科生,18年通过校招进入广州某软件公司,干了接近3年的功能测试,今年国庆,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!可我已经在一个企业干了3年的功能测试&…...
顺序表和链表
顺序表和链表 一.线性表二.顺序表三.链表链表的分类单链表的实现双链表的实现 四.顺序表和链表的区别和联系 一.线性表 常见的线性表:顺序表、链表、栈、队列、字符串 线性表在逻辑上是线性结构,也就说是连续的一条直线,但是在物理结构上并不…...
k8s--架构基础--云控制器管理器
具体来说,云控制器管理器允许用户将集群与云服务提供商的 API 进行连接,以获取与云平台相关的信息和资源。通过这种连接,Kubernetes 可以利用云服务提供商的功能和特性,例如虚拟机、负载均衡器、对象存储等。与此同时,…...
OpenAI 更新 ChatGPT:支持图片和语音输入【附点评】
一、消息正文 9月25日消息,近日OpenAI宣布其对话AI系统ChatGPT进行升级,添加了语音输入和图像处理两个新功能。据OpenAI透露,这些新功能将在未来两周内面向ChatGPT Plus付费用户推出,免费用户也将很快可以使用这些新功能。这标志着ChatGPT继续朝着多模态交互的方向发展,为用户提…...
数据结构:堆的简单介绍
目录 堆的介绍:(PriorityQueue) 大根堆:根节点比左右孩子节点大 小根堆:根节点比左右孩子节点小 堆的存储结构: 为什么二叉树在逻辑上用满二叉树结构,而不是普通二叉树呢? 因为如果是普通二叉树会造成资源的浪费编辑 堆的介绍:(PriorityQueue) 堆又称优先级队列,何为优先…...
【LeetCode-中等题】654.最大二叉树
文章目录 题目方法一:递归 题目 方法一:递归 class Solution {int[] num null; public TreeNode constructMaximumBinaryTree(int[] nums) {num nums;return myTree(0,num.length-1);}public TreeNode myTree( int begin , int end){if(begin > end…...
基于微信小程序的刷题考试系统设计与实现(适用于各类考试类、答题类程序)
文章目录 前言系统主要功能:具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…...
用Java打印长方形、平行四边形 、三角形、菱形、空心菱形
今天复习使用嵌套for来完成一些任务,于是想着打印一些图形来练习 思考感悟 长方形 行数 和 每行的星星数嵌套遍历即可 平行四边形 核心:每行空格数总行数-行数 行数空格数132231 三角形 核心:每行星星数2*当前行数-1 行数星星数1123…...
es6模块化,怎么判断当前文件使用的是es6的模块化还是commenjs的模块化
es6的模块化,文件中的this,指向undefined,不是指向window import.meta - JavaScript | MDN...
Ubuntu 基础配置
源配置 源路径: /etc/apt/sources.list aliyun源 20.04 deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse deb http://mirrors.a…...
CISSP学习笔记:人员安全和风险管理概念
第二章 人员安全和风险管理概念 2.1 促进人员安全策略 职责分离: 把关键的、重要的和敏感工作任务分配给若干不同的管理员或高级执行者,防止共谋工作职责:最小特权原则岗位轮换:提供知识冗余,减少伪造、数据更改、偷窃、阴谋破坏和信息滥用的风险&…...
ubuntu18.04 OpenGL开发(显示YUV)
源码参考:https://download.csdn.net/download/weixin_55163060/88382816 安装opengl库 sudo apt install libglu1-mesa-dev freeglut3-dev mesa-common-dev 安装opengl工具包 sudo apt install mesa-utils 检查opengl版本信息(桌面终端执行)…...
React(react18)中组件通信06——redux-toolkit + react-redux
React(react18)中组件通信06——redux-toolkit react-redux 1 前言1.1 redux 和 react-redux1.2 关于redux-toolkit1.2.1 官网1.2.2 为什么要用Redux Toolkit? 1.3 安装 Redux Toolkit1.4 Redux Toolkit相关API 2. 开始例子——官网例子2.1 …...
第七章 查找 九、B+树
目录 一、定义 二、B树需要满足的条件 三、重要考点 一、定义 1、B树是一种常用的数据结构,用于实现关系型数据库中的索引。 2、其特点是可以在磁盘等外存储器上高效地存储大量数据,并支持快速的查询、插入、删除等操作。 3、B树的结构类似于二叉搜…...
XPD911协议系列-集成同步降压多口互联控制器
产品描述: XPD911 是一款集成 USB Type-C、USB Power Delivery(PD) 3.1 以及 PPS、 QC3.0/3.0 /2.0 快充协议、华为 FCP/SCP/HVSCP 快充协议、三星 AFC 快充协议、VOOC 快充协议、MTK PE 快充协议、BC1.2 DCP 以及苹果设备 2.4A 充电规范的多…...
数字反转(蓝桥杯)
数字反转 题目描述 给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见实例 2)。 输入描述 输入共 1 行&…...
十一.EtherCAT开发之microchip MCU D51+ LAN9253 的开发FOE应用(SPI directly 模式)
十一.EtherCAT开发之microchip MCU D51+ LAN9253 的开发FOE应用(SPI directly 模式) 文章目录 十一.EtherCAT开发之microchip MCU D51+ LAN9253 的开发FOE应用(SPI directly 模式)11.0 软件更新方式11.1 SSC TOOL配置11.2 MCU D51 FOE函数支持11.2.1 下载download11.2.2 上传up…...
【分布式计算】二、架构(Architectures)
1.中心化架构(Centralized Architectures) 1.1.经典C/S模型 服务器:一个或多个进程提供服务 客户端:一个或多个进程使用服务 客户端和服务器可以在不同的机器上 客户端遵循请求/回复模型 1.2.传统三层视图 用户界面层&#x…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...
