volume 、namespace

news2024/11/26 15:52:14

顺带说一下 volume 和 namespace ,咱们就开始分享一下 service 是什么

volume 是什么

还记得 docker 的 volume 吗,是一个数据卷

在 K8S 中,volume 是 pod 中能够被多个容器访问的共享目录 ,实际上和 docker 是一样的

volume 是被定义在 pod 上面的,因此,volume 的生命周期和 pod 是相同的

volume 会被该 pod 中的多个容器挂载到具体的文件目录下面,若某个容器挂掉了,是不会影响 volume 的,也就是说 volume 中的数据是不会丢失的

我们可以使用 volume:

  • 在 pod 中指定 volume 的类型 和内容,可以使用spec.volumes字段
  • 需要将 volume 映射到容器中,我们可以使用 spec.containers.volumeMounts 字段

上面有说到 volume 的类型,这就可多了 , K8S 中支持的 volume 类型有:

  • awsElasticBlockStore
  • azureFile
  • cephfs
  • emptyDir
  • hostPath
  • configMap
  • fc (光纤通道)
  • 。。 。 等等

可以查看这上面的文档,每一种 卷类型都有解释到 点我开始卷一下

简单看一下 emptyDir 卷类型

emptyDir 见名知意,emptyDir 在创建 pod 的时候就会被创建,而且是个空的 , 只要 pod 在运行,这个卷就会一直存在

但是,当 pod 从节点上删除的时候,这个 emptyDir 也会被随之永久删除了

使用 emptyDir 我们可以这样写

emptyDir 卷存储是依赖于我们节点的存储介质的,例如,磁盘,SSD 或者网络存储等等

再来看看 hostPath 类型

hostPath 类型的卷,能够让对应的容器访问当当前宿主机上指定的目录

对于 hostPath 类型,我们尽可能的少用,官方有一个这样的警告

例如,我们需要运行一个访问一个 docker 系统目录的容器,那么我们可以使用 /var/lib/docker 目录作为一个 hostPath 类型的卷

但是,只要这个 pod 离开宿主机的话,hostPath 中的数据不会被永久删除,但是数据也不会跟着 pod 迁移到别的宿主机上面

使用 hostPath 我们可以这样写

关于 卷 的,我们后续可以将高阶用法,以及具体的原理可以分享一波

namespace

namespace 即 命名空间

命名空间在多数情况下是用于实现多用户的资源隔离的,通过集群内部的资源对象分配到不同的 命名空间中,形成逻辑上的分组,

这样可以让不同的组在共享使用整个集群的资源的情况下,还能够被分组管理

在 K8S 初始状态下,K8S 会有 3 个命名空间

  • default

无名字空间对象的默认名字空间

在 K8S 中,集群启动后,会创建一个 default 的命名空间
如果我们创建的 rc ,service,pod,不指定命名空间的话,那么这些资源都将被系统创建为 default 的命名空间中

  • kube-system

K8S 系统创建的对象的名字空间

  • kube-public

是 K8S 自动创建且被所有用户可读的名字空间

关于命名空间共享集群我们可以查看这里: 点我 进入 命名空间

我们可以这样使用命名空间:

  • 创建一个 NameSpace
apiVersion: v1
kind: NameSpace
metadata:
  name: myns
--------------------
apiVersion: v1
kind: Pod
metadata:
  name: busybox
  namespace: myns
spec:
 containers:
 - image: busybox
   command:
   - ls 
   name: busybox

如上,我们创建了一个名为 myns的命名空间,创建了一个 pod ,指定命名空间为 myns

我们可以这样查看命名空间:

kubectl get namesapces

image-20211128120410202

我们也可以直接通过命令创建命名空间

kubectl create namespace myns

创建一个 pod ,指定命名空间为 myns , 创建后,我们可以查看指定 命名空间下的 pod 资源

kubectl get pods --namespace=命名空间

image-20211128120919274

今天就到这里,学习所得,若有偏差,还请斧正

欢迎点赞,关注,收藏

朋友们,你的支持和鼓励,是我坚持分享,提高质量的动力

好了,本次就到这里

技术是开放的,我们的心态,更应是开放的。拥抱变化,向阳而生,努力向前行。

我是阿兵云原生,欢迎点赞关注收藏,下次见~
更多的可以查看 零声每晚八点直播:https://ke.qq.com/course/417774

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

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

相关文章

分享成为一个优秀的测试工程师需要具备哪些知识和经验?

根据我的观察,优秀的测试人员可以做的事情可以包括如下3点: 由单纯的测试变成项目质量保证工作 持续集成探索和推动和自动化测试技术研究 测试相关工具的开发 1、我们先来讲第一点,由单纯的测试变成项目质量保证工作 测试,从狭义…

versionOS开发笔记 01,如何在现有项目中启用 versionOS ?

visionOS 开发笔记 01,如何在现有项目中启用 visionOS ? 在 Targets 中的 Supportted Destinations 中增加 Apple Vision 然后在项目的 Run Destination 中选择 Apple Vision Pro 就可以了

python+selenium环境搭建(一)

pythonselenium自动化测试环境包括四个部分:python、selenium、chrome谷歌浏览器、chrome谷歌浏览器驱动。其中浏览器也可以是火狐,IE等。目前自动化的主流浏览器还是chrome谷歌浏览器。 1.python的安装 目前测试行业应用最广的编程语言当属Python为首…

【C++】—— 继承

序言: 在之前,我们已经完成了对 C 初阶的讲解。接下来,我将带领大家学习关于C 进阶的相关知识,而今天我给大家介绍的就是关于 C三大特性之一的——继承。 目录 (一)继承的概念及定义 1、继承的概念 2、…

git常用命令之log

10. log 10.1 查看log 命令作用延展阅读git log输出 commit hsitory with commit detailgit reflog输出 HEAD ref 的 reflog链接git log --oneline--oneline选项会把提交信息压缩输出在单行。默认情况下,只显示commit id和commit message的第一行内容。$ git log …

Kubernetes核心概念汇总—Kubernetes 组件

当你部署完 Kubernetes,便拥有了一个完整的集群。 一组工作机器,称为 节点, 会运行容器化应用程序。每个集群至少有一个工作节点。 工作节点会托管 Pod ,而 Pod 就是作为应用负载的组件。 控制平面管理集群中的工作节点和 Pod。 在…

应用服务器Application Server manual

Application Server manual Sun Java™ System Application ServerStart Default ServerServer is RunningAdmin Console Sun Java™ System Application Server 从事Java EE的研发很多年,竟然才知道Sun开发的Application Server,以及最新版本Glassfish…

解决Vue.js not detected的问题(Vue.js devtools变灰色)

今天在谷歌商店下载安装了Vue.js devtools,但是出现了图标是灰色,鼠标移过去是Vue.js not detected的问题 首先呢,要去找一个有vue.js写的网站,比如哔哩哔哩 (゜-゜)つロ 干杯~-bilibili 此时发现图标不再是灰色的,也不出现Vue.js…

@SuppressWarnings注解的作用

一、问题由来 我们在写代码的时候,不论是导入的包,还是声明的对象,有时候会出现黄线,感觉就很难受! SuppressWarnings注解主要用在取消一些编译器产生的警告对代码左侧行列的遮挡,有时候这会挡住我们断点…

Apache数据库项目盘点

著名的开源软件组织 Apache 软件基金会目前维护着 300 多个活跃项目,其中包含不少数据库相关的项目,本文简单介绍一下这些开源项目。 Apache AGE Apache AGE 是一个基于 PostgreSQL 的图数据库,目标是为所有关系型数据库提供图数据处理和分…

漏洞复现|Kyan密码泄露/命令执行漏洞

0x01阅读须知 所有发布的技术文章仅供参考,未经授权请勿利用文章中的技术内容对任何计算机系统进行入侵操作,否则对他人或单位而造成的直接或间接后果和损失,均由使用者本人负责。 郑重声明:本文所提供的工具与思路仅用于学习与…

Java【异常】

异常 1. 异常概念程序开发中常见异常 2. 异常的体系结构2.1 异常体系核心父类异常的另外划分模式 3. 异常的处理流程3.1 异常的捕获并处理try-catch-finally代码块组合一:try catch组合二:finally代码块finally不执行的特殊情况 3.2 throw 和 throws3.3 …

8 系统定时器(Systick)(STM32HAL库)

目录 系统定时器(Systick) SysTick定时器特性介绍 SysTick定时器的功能 SysTick定时器寄存器介绍 Systick定时器的使用 系统定时器(Systick) SysTick定时器特性介绍 计数宽度: 24bit来存储数据,2^24…

Spring高手之路7——事件机制与监听器的全面探索

文章目录 1. Spring中的观察者模式2. 监听器2.1 实现ApplicationListener接口创建监听器2.2 EventListener注解创建监听器2.3 对比ApplicationListener接口和EventListener注解的创建方式 3. Spring的事件机制3.1 ApplicationEvent3.2 ApplicationContextEvent3.3 ContextRefre…

基于weka平台手工实现(LinearRegression | Ridge Regression,岭回归)

一、普通的线性回归 线性回归主要采用最小二乘法来实现,主要思想如下: X ( x 11 x 12 ⋯ x 1 d 1 x 21 x 22 ⋯ 5 1 ⋮ ⋮ ⋱ ⋮ ⋮ x m 1 x m 2 ⋯ x m d 1 ) X\left( \begin{matrix} x_{11} & x_{12} & \cdots & x_{1d} & 1 \\ x_{2…

Vinted店铺为什么被封?如何应对?

Vinted是一家在线二手交易平台,专门用于买卖衣物和时尚配件。自从2022年以来,Vinted也越来越向综合性跨境电商平台转变。细心的伙伴都会发现,近来Vinted这阵子封号确实很严重,感觉是风控变严格了,但是万变不离其宗&…

xhtmlrenderer 将html转换成pdf,设置多字体, 以及中文不显示的问题

接上一篇 https://blog.csdn.net/qq_21480147/article/details/131187202 多字体 字体文件自行搜索或者window中自带的搜索(C:\Windows\Fonts) 中文不显示 在要渲染的中文的地方中设置stylefont-family:[字体] 该字体需要对应指定的属性, 属性参考:

java程序改变io临时存储路径

System.setProperty(“java.io.temdir”,“your path”)

【UE5 Cesium】08-Cesium for Unreal 子关卡应用实例(上)

UE版本:5.1 效果 (运行游戏可以看到进入关卡体积内楼房模型才会显现,以此来减少电脑性能消耗) 步骤 一、新建两个子关卡(以北京和上海为例) 点击窗口-》关卡-》新建 命名第一个子关卡为“SubLevel_Bei…

计算机专业学生暑假要去看这些经典书籍!

好书在精不在多,每一本经典书籍都值得反复咀嚼,温故而知新! 分享几本经典书籍。 重构 改善既有代码的设计 就像豆瓣评论所说的,看后有种醍醐灌顶、欲罢不能的感觉。无论你是初学者,还是深耕多年的老手,这…