硬盘存储

[ ceph ] 基本介绍及硬件配置

我的未来我决定 提交于 2019-12-05 02:29:31
1. Ceph简介 所有的 Ceph 存储集群的部署都始于一个个 Ceph节点、网络和 Ceph存储集群。Ceph 存储集群至少需要一个 Ceph Monitor、一个 Manager和一个Ceph OSD 守护进程。在运行 Ceph 作为文件存储时,还需要 Ceph 元数据服务。 Monitors : Ceph监视器(ceph-mon) 维护集群状态的映射,包括监视器映射、管理器映射、OSD映射和 CRUSH 映射。这些映射是Ceph守护进程相互协调所需的关键集群状态。Monitor还负责管理守护进程和客户机之间的身份验证。为了冗余和高可用性,通常至少需要三个监视器。 Managers: Ceph 管理进程(ceph-mgr) 守护进程负责跟踪Ceph集群的运行指标和当前状态,包括存储利用率、当前性能指标和系统负载。Ceph Manager 守护进程还托管基于python的模块来管理和公开Ceph集群信息,包括基于web的Ceph dashboard 和 REST API 高可用通常需要至少两个管理器。 Ceph OSDs: 对象存储守护进程(ceph-osd) 存储数据,处理数据复制,恢复,重新平衡并通过检查其他Ceph OSD 守护进程的心跳来为Ceph Monitor 和 Manager 提供一些监控信息,至少3 Ceph OSDs通常需要冗余和高可用性。 MDSs :

[转]理解Linux文件系统之inode

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-04 23:44:35
作者: 阮一峰 inode 是一个重要概念,是理解Unix/ Linux 文件系统和硬盘储存的基础。 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念,从而大大简化用户接口。 下面就是我的inode学习笔记,尽量保持简单。 =================================== 理解inode 作者:阮一峰 一、inode是什么? 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统 读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。 文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。 每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。 二、inode的内容 inode包含文件的元信息,具体来说有以下内容:   * 文件的字节数   *

阶段总结

我是研究僧i 提交于 2019-12-04 23:10:42
老男孩教育基础阶段总结 服务器内部组成部分 主板 : 将多个硬件进行整合 传导电信息 硬盘 : 存储数据信息 永久存储 光驱 : 安装系统 安装软件 看电影 阵列卡 : (raid) ??? 将多块硬盘整合为一块 风扇 : 负责散热 CPU: 中央处理器 ( 大脑 ) 运算 ( 二进制 ) 控制其他硬件 内存 : 存储数据信息 临时存储 网卡 : 负责上网 电源 : 负责供电 硬件组成详细说明 · CPU( 大脑 ): 计算机工作原理 : 输入设备 --> CPU --> 内存 --> 硬盘 输出设备 <-- CPU <-- 内存 <--- 硬盘 路数 : 服务器 CPU 颗数 单路 1 颗 双路 2 颗 四路 4 颗 核数 : 同时处理多个任务能力越强 PS: 厂商服务器 IBM( 联想 ) DELL HP 浪潮 华为 · 硬盘 :(RAID) 接口 : 绝对了数据读和存效率 sata -- scsi -- sas 转速 : 家用硬盘 (5400 7200) 企业硬盘 (10k 15k) 多个硬盘进行组合 : RAID 01. 提高单块硬盘存储容量 02. 提高数据存储的效率 03. 提高数据安全性 · 内存 : 临时存储 程序 : 开发人员编写出代码 进程 : 运行起来的程序 进程编号 用户管理进程 会占用内存 临时进程 : 突然出现 , 很快自动消失 守护进程 :

关于网络存储技术和存储的协议

本秂侑毒 提交于 2019-12-04 21:43:04
关于网络存储技术和存储的协议 网络存储技术 网络存储技术(Network Storage Technologies)是基于数据存储的一种通用网络术语。网络存储结构大致分为三种: 直连式存储(DAS:Direct Attached Storage)、网络存储设备(NAS:Network Attached Storage)和存储网络(SAN:Storage Area Network)。 直连式存储(DAS) 这是一种直接与主机系统相连接的存储设备,如作为服务器的计算机内部硬件驱动。到目前为止,DAS 仍是计算机系统中最常用的数据存储方法。 DAS即直连方式存储,英文全称是Direct Attached Storage。中文翻译成“直接附加存储”。顾名思义,在这种方式中,存储设备是通过电缆(通常是SCSI接口电缆)直接到服务器的。I/O(输入/输出)请求直接发送到存储设备。DAS,也可称为 SAS(Server-Attached Storage,服务器附加存储) 。它依赖于服务器,其本身是硬件的堆叠,不带有任何存储操作系统。 网络存储设备(NAS) NAS 是一种采用直接与网络介质相连的特殊设备实现数据存储的机制。由于这些设备都分配有 IP 地址,所以客户机通过充当数据网关的服务器可以对其进行存取访问,甚至在某些情况下,不需要任何中间介质客户机也可以直接访问这些设备。 最大存储容量

字符编码

家住魔仙堡 提交于 2019-12-04 15:27:42
字符编码 一、计算机基础 二、文本编辑器存取文件的原理 打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的,断电后数据丢失。 要想永久保存,需要点击保存按钮:编辑器把内存的数据刷到了硬盘上。 在我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都只是在编写一堆字符而已。 三、Python解释器执行py文件的原理 第一阶段:Python解释器启动,此时就相当于启动了一个文本编辑器 第二阶段:Python解释器相当于文本编辑器,去打开test.py文件,从硬盘上将test.py的文件内容读入到内存中(小复习:pyhon的解释性,决定了解释器只关心文件内容,不关心文件后缀名)。 第三阶段:Python解释器解释执行刚刚加载到内存中test.py的代码( ps:在该阶段,即真正执行代码时,才会识别Python的语法,执行文件内代码,当执行到name="egon"时,会开辟内存空间存放字符串"egon")。 四、Python解释器与文件本编辑的异同 相同点:Python解释器是解释执行文件内容的,因而Python解释器具备读py文件的功能,这一点与文本编辑器一样。 不同点:文本编辑器将文件内容读入内存后,是为了显示或者编辑,根本不去理会Python的语法,而Python解释器将文件内容读入内存后,可不是为了给你瞅一眼Python代码写的啥

《操作系统真象还原》MBR

元气小坏坏 提交于 2019-12-04 12:04:14
  以下是读本书第三章的收获。   如何知道一个源程序的各符号(指令和变量)地址?简单来说,地址就是该符号偏移文件开头的距离,符号的地址是按顺序编排的,所以两个相邻的符号,其地址也是相邻的。对于指令来说,指令的地址=上一个指令的地址+上一个指令的大小,最初的符号地址为0,可以根据此公式推算出所有符号的地址。 section称为节,它是提供给程序员编排程序用的,我们可以将一段读取字符串的代码放在section A下,将读取硬盘的代码放进section B下,可以给A,B换成一个更具体的名字,来提高可读性。 例如,下图这段代码,将整个程序分成section code和section data两节,顾名思义,就是存放代码和数据的两个section,这样我们就很清楚地知道每部分代码是做什么用的。另一个值得注意的细节是section并不会对符号的编址用什么影响,去掉section和不去掉其实符号的地址都是一样的。 vstart用于告诉编译器,之后的符号都以某个地址为初始地址来编址。如下图,像$$的地址替换成以0x7c00为初始地址的地址,符号var1和var2的地址被替换成以0x900的地址。 当然,我们还可以通过section.节名称.start来获得在文件中真正的地址。如section.code.start值为0x0,即section code偏移文件的距离为0

Linux 虚拟机的安装与软件安装

谁说胖子不能爱 提交于 2019-12-04 11:10:01
(一)虚拟机的安装 安装过程:其实就是往硬盘里写数据的过程。 实验:这里我们采取镜像法创建虚拟机。导入本地iso文件方式新建一个虚拟机。步骤如下: 1.选择新建一个虚拟机 2.选择镜像文件 找到 3.设置硬盘空间。 注意: 如果要安装图形,则磁盘空间>4.8G 设置虚拟机名称 : 4.进入安装界面: 5.点击安装红帽,接下来: 6.进行一些设置,语言环境( 建议选择英语 ),时间等。在这一步,只需把带感叹号的设置成功,便可进行安装! 时区部分: 语言支持部分建议选择中文: 选择GUI 图形化基本环境 接下来是比较重要的部分,磁盘分区。采用标准分区,划分为三个扇区:/boot:200MB,/swap:500MB,/:剩余部分。 注意:分区提前规划好,一般swap分区为物理内存的1.5~2倍,/boot分区200M, 最后两个设置,是设置超级用户的密码,添加普通用户及密码 接下来,尝试编写脚本来完成安装工作,脚本可以一直使用(一次改到,终生受益!): 1.新建脚本文件 其中注释如下: #!/bin/bash ##命令运行环境的指定 virt-install \ ##安装虚拟机 --name $1 \ ##虚拟机名称指定,$1表示脚本后的第一串字符 --ram 1000 \ ##内存 --file /var/lib/libvirt/images/$1.img \ ##硬盘文件 -

ucore_lab1

时光毁灭记忆、已成空白 提交于 2019-12-04 04:12:01
一、实验内容 通过阅读bootmain.c,了解bootloader如何加载ELF文件。通过分析源代码和通过qemu来运行并调试bootloader&OS, bootloader如何读取硬盘扇区的? bootloader是如何加载ELF格式的OS? 二、实验相关 ELF文件格式 ELF(Executable and linking format)文件格式是Linux系统下的一种常用 目标文件(object file)格式 ,有 三种主要类型 : 用于执行的可执行文件(executable file),用于提供程序的进程映像,加载到内存执行。 这也是本实验的OS文件类型。 用于连接的可重定位文件(relocatable file),可与其它目标文件一起创建可执行文件和共享目标文件。 共享目标文件(shared object file),连接器可将它与其它可重定位文件和共享目标文件连接成其它的目标文件,动态连接器又可将它与可执行文件和其它共享目标文件结合起来创建一个进程映像。 ELF文件有 两种视图 (View), 链接视图和执行视图 ,如下图: 链接视图通过Section Header Table描述,执行视图通过Program Header Table描述。Section Header Table描述了所有Section的信息,包括所在的文件偏移和大小等;Program

kafka速度快的原因

人走茶凉 提交于 2019-12-04 03:22:40
我们都知道Kafka非常快,比绝大多数的市场上其他消息中间件都要快。这里来研究下那么为什么Kafka那么快(当然不会是因为它用了Scala)。 Kafka的消息是保存或缓存在磁盘上的,一般认为在磁盘上读写数据是会降低性能的,因为寻址会比较消耗时间。 但是实际上,Kafka其中一个特性却是高吞吐率,即使是普通的服务器,Kafka也能轻松支持每秒百万级的写入请求,超过了大部分的消息中间件。这种特性使得Kafka在日志处理等海量数据场景中应用广泛。那么为什么Kafka速度那么快,可以从数据写入和数据读取两方面来分析。 Kafka的数据写入(生产者) 生产者(Producer)是负责向Kafka提交数据的,Kafka会把收到的消息都写入到磁盘中,因此可以认为它绝对不会丢失数据。 而为了优化写入速度,Kafka采用了两种技术,一种是顺序写入,一种是MMFile。 顺序写入 磁盘读写的快慢取决于你怎么使用它,一般可以分为顺序读写或者随机读写。 因为硬盘是机械结构,每次读写都会经过一个【寻址->写入】的过程,其中的寻址是一个十分耗时的机械动作,所以硬盘最讨厌随机I/O,最喜欢顺序I/O。为了提高读写硬盘的速度,Kafka就是使用的顺序I/O。而且Linux对于磁盘的读写优化也比较多,包括read-ahead、write-behind和磁盘缓存等。更多的,对Java的内存管理和垃圾回收会有优化

RAID磁盘阵列介绍

孤人 提交于 2019-12-04 02:01:41
磁盘阵列 RAID介绍 一、简介: 磁盘阵列( Redundant Arrays of Independent Drives,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 最初是由加利福尼亚大学伯克利分校在1988年发表的,旨在效能与成本。简单来说,RAID 是利用多块物理硬盘来组成一个虚拟硬盘,并由这些虚拟的硬盘组成一个矩阵的存储系统的一种技术。它的目的很简单却很重要,毕竟关系到数据,保证数据的安全性、提高数据读写的效率。磁盘阵列主要分类三种: 外接式磁盘矩阵列柜、内接式磁盘矩阵列卡、软件模拟仿真。 磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。 磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。 独立磁盘冗余阵列 是把相同的数据存储在多个硬盘的不同的地方(因此而冗余)的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错。 容量计算: RAID 0: N块盘组成, 逻辑容量为 N 块盘容量之和; RAID 1: 两块盘组成, 逻辑容量为 1 块盘容量