【从问题中去学习k8s】k8s中的常见面试题(夯实理论基础)(二十一)

server/2024/10/19 7:36:23/

  本站以分享各种运维经验和运维所需要的技能为主

《python零基础入门》:python零基础入门学习

《python运维脚本》: python运维脚本实践

《shell》:shell学习

《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战

《k8》从问题中去学习k8s

《docker学习》暂未更新

《ceph学习》ceph日常问题解决分享

《日志收集》ELK+各种中间件

《运维日常》运维日常

《linux》运维面试100问

《DBA》db的介绍使用(mysql、redis、mongodb...)

思考一下问题:

89、 k8s数据持久化的方式有哪些?

参考答案:

89、 k8s数据持久化的方式有哪些?
答:
1)EmptyDir(空目录):
没有指定要挂载宿主机上的某个目录,直接由Pod内保部映射到宿主机上。类似于docker中的managervolume。
主要使用场景:
只需要临时将数据保存在磁盘上,比如在合并/排序算法中;
作为两个容器的共享存储,使得第一个内容管理的容器可以将生成的数据存入其中,同时由同一个
webserver容器对外提供这些页面。
emptyDir的特性:
同个pod里面的不同容器,共享同一个持久化目录,当pod节点删除时,volume的数据也会被删除。如
果仅仅是容器被销毁,pod还在,则不会影响volume中的数据。
总结来说:emptyDir的数据持久化的生命周期和使用的pod一致。一般是作为临时存储使用。2)Hostpath:
将宿主机上已存在的目录或文件挂载到容器内部。类似于docker中的bind mount挂载方式。
这种数据持久化方式,运用场景不多,因为它增加了pod与节点之间的耦合。
一般对于k8s集群本身的数据持久化和docker本身的数据持久化会使用这种方式,可以自行参考
apiService的yaml文件,位于:/etc/kubernetes/main...目录下。3)PersistentVolume(简称PV):
基于NFS服务的PV,也可以基于GFS的PV。它的作用是统一数据持久化目录,方便管理。
在一个PV的yaml文件中,可以对其配置PV的大小,指定PV的访问模式:
ReadWriteOnce:只能以读写的方式挂载到单个节点;
ReadOnlyMany:能以只读的方式挂载到多个节点;
ReadWriteMany:能以读写的方式挂载到多个节点。以及指定pv的回收策略:
recycle:清除PV的数据,然后自动回收;
Retain:需要手动回收;
delete:删除云存储资源,云存储专用;
PS:这里的回收策略指的是在PV被删除后,在这个PV下所存储的源文件是否删除)。
若需使用PV,那么还有一个重要的概念:PVC,PVC是向PV申请应用所需的容量大小,K8s集群中可能
会有多个PV,PVC和PV若要关联,其定义的访问模式必须一致。定义的storageClassName也必须一
致,若群集中存在相同的(名字、访问模式都一致)两个PV,那么PVC会选择向它所需容量接近的PV去
申请,或者随机申请。

 


http://www.ppmy.cn/server/111450.html

相关文章

从零开始实现一个简单的 Git 操作实例

本文通过创建一个简化版的版本控制系统,展示 Git 的核心操作,如初始化仓库、提交更改、查看历史记录等。为了更好地理解这些操作,我们会结合图示来说明。 1. 初始化仓库 在 Git 中,初始化仓库的命令是 git init。这个命令会在当前目录创建一个新的 Git 仓库,生成一个 .g…

JDS汽车检测主要内容

JDS汽车检测作为确保车辆安全、性能及环保标准的重要环节,其内容广泛且细致,涵盖了多个关键方面。以下是对JDS汽车检测主要内容的详细阐述,旨在为读者提供一个全面而深入的了解。 一、车辆外观检测 车辆外观检测是汽车检测的第一步&#xf…

tornado获取请求参数

在Tornado框架中,获取请求参数(包括查询字符串参数、表单数据、JSON数据等)可以通过RequestHandler类提供的方法来完成。以下是一些常用的方法来获取不同类型的请求参数: 1. 获取查询字符串参数 查询字符串参数是附加在URL后面的…

Oracle查询预防解决分母为0的方法

本文通过两种函数方法解决介绍了sql查询中分母为0的预防处理方法,主要采用decode函数或case when。在oracle数据查询中,常计算百分比,百分比分母又常通过子查询获得,常遇到业务数据暂时没有的时候,此时分母为0&#xf…

适用于 Visual Studio 的 C++ 万能头

您可以通过 star 我固定的 GitHub 存储库来支持我,谢谢!以下是我的一些 GitHub 存储库,很有可能对您有用: Proxy Everything - Open Source (PE-OS) QR Generator - Open Source (QG-OS) 用于在 Visual Studio 上预编译的 C 包含…

Datawhale X 李宏毅苹果书 AI夏令营 《深度学习详解》第一章 机器学习基础

机器学习,顾名思义,机器具备有学习的能力。具体来讲,机器学习就是让机器具备找一个函数的能力。随着要找的函数不同,机器学习有不同的类别: 回归(输出是一个数值,一个标量)分类&…

【论文阅读】通过使用实体增强框架融合多种多模态线索来改进假新闻检测

通过使用实体增强框架融合多种多模态线索来改进假新闻检测 Abstract 最近,带有文本和图像的假新闻比纯文本假新闻实现了更有效的传播,引发了多模态假新闻检测的严重问题。 目前关于这个问题的研究对开发多模态模型做出了重大贡献,但在充分建模多模态内容方面存在缺陷。 他…

访问Neo4j验证失败(The client is unauthorized due to authentication failure.)

使用Neo4j的过程中,可以打开页面,但是无法连通数据库。 在查看日志发现有下面的报错: 2018-12-18 05:30:34.693+0000 ERROR Unexpected error detected in bolt session 286ed4fffe88ed75-00016e40-00000001-8318869067983891-a1fb2d6d. The client is unauthorized due to …