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…...

SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...