zfs

raid5硬盘掉线但热备盘没激活怎么办

ⅰ亾dé卋堺 提交于 2020-05-09 16:56:03
一、服务器数据恢复故障描述 某公司的一台服务器数据恢复需求。该公司有一台emc的服务器,搭建了raid5磁盘阵列进行数据存储,有两块热备盘,因为服务器上有两块硬盘出现故障,但是热备盘中只有一块被成功激活,导致了raid阵列瘫痪,服务器的上层应用不可用。需要进行服务器数据恢复。 二、服务器数据恢复检测 首先对客户的两块掉线的硬盘进行物理检测,如果发现物理故障,需要对物理硬盘进行修复,然后才能继续下一步数据恢复操作,在本次服务器数据恢复案例中,硬盘不存在物理故障及坏道。 三、备份服务器所有硬盘 在服务器数据恢复开始前需要将客户的所有硬盘进行镜像备份。由于客户的服务器硬盘不存在物理故障,因此直接备份即可。使用winhex将所有磁盘都镜像成文件,由于源磁盘的扇区大小为520字节,因此还需要使用特殊工具将所有备份的数据再做520 to 512字节的转换。 四、故障分析及恢复过程 先对服务器底层raid组进行数据分析,以便通过基础raid信息重组阵列,恢复服务器数据。经过对raid阵列的分析发现,客户原服务器内的两块热备盘内均为空,没有写入任何数据(因此推断有一块热备盘虽然上线,但此时raid组仍然处于缺盘状态,数据并没有开始同步。)随后工程师依次分析到了整个raid5阵列上的条带大小,磁盘顺序等基础信息,开始进行raid重组。 根据上述分析的RAID信息

老白学编程

给你一囗甜甜゛ 提交于 2020-04-30 19:39:21
存储相关的Metrics disk /proc/diskstats $ cat /proc/diskstats 8 0 sda 19845 144 2468979 81307 5380 1084 181174 47385 0 19839 128640 8 1 sda1 168 0 48862 7580 10 0 4136 192 0 1151 7772 8 2 sda2 19612 144 2416997 73544 4757 1084 177038 44181 0 18997 117673 11 0 sr0 0 0 0 0 0 0 0 0 0 0 0 253 0 dm-0 19443 0 2407493 73345 5693 0 175134 58916 0 19577 132260 253 1 dm-1 206 0 7024 393 238 0 1904 8073 0 1385 8466 前3项是主设备号,次设备号和设备名称。 后面11个域的描述如下: Name units description ---- ----- ----------- read I/Os requests 完成的读请求次数 read merges requests 在IO队列中合并的IO次数,对于机械盘来讲,IO合并对性能帮助太大了, innodb设计中change buffer,double

老白学编程

夙愿已清 提交于 2020-04-22 23:03:33
NetData plugin 之 proc Netdata 的数据采集都是通过各个plugin来进行的。找几个有代表性的plugin来看看。 概述 该plugin 顾名思义, 是针对于类Linux系统(BSD有单独的plugin), 通过读取 /proc 下面的数据来进行采集。 列表 先列一下都有哪些项。 文件 说明 /proc/stat 系统和内核的统计信息 /proc/uptime 系统运行时间 /proc/loadavg 负载 /proc/sys/kernel/random/entropy_avail 熵池大小,单位bit /proc/pressure 参考一下 psi /proc/interrupts 中断表 /proc/softirqs 系统软中断信息 /proc/vmstat 虚拟内存统计信息 /proc/meminfo 当前内存信息 /sys/kernel/mm/ksm ksmd 类似一个COW机制 /sys/block/zram 虚拟内存的压缩 /sys/devices/system/edac/mc EDAC即error detection and correction(错误检测与纠正) /sys/devices/system/node numa node 信息 /proc/pagetypeinfo 伙伴系统信息 /proc/net/dev 网络适配器统计信息

计算机领域中随处可见的抽象

血红的双手。 提交于 2020-04-13 15:54:33
【今日推荐】:为什么一到面试就懵逼!>>> 想要管理多种具体的东西,那么需要遵守每种东西的规范。如果想要提供一种通用模式来对这些具体的东西统一管理,需要使用一种古老的技术:抽象。 抽象是将多种具体的东西(管理时需要遵守的规范)的共同点抽取出来,放入到更高一层的抽象层。在抽象层不定义或少量定义具体的规范细则,而是让下层更具体的东西遵守抽象出来的规则去各自实现。之后只需通过这个抽象层中的通用规范就能管理所有具体的事物(即面向对象范畴中的多态概念,事实上面向对象的本质就是抽象),并且随时可以添加新事物到这个抽象层之下,扩展性和适应性大大增强。 所以,抽象的两个要点: 从多个具体事物中抽取出共同点,放入抽象层 ; 具体事物遵守抽象层的规则,各自实现细节 ; 比如,各种类型的文件系统(ext2、xfs、fat、zfs等)的特性都不一样,但主要功能都一样:读、写。操作系统希望以一种更通用的方式去管理这些不同的文件,可以在这些文件系统的更高一层提供一个抽象文件系统,这个抽象文件系统中定义读和写的规范,同时要求各种具体的文件系统按照这个规范去实现读和写的操作。以后就可以在操作系统上使用多种文件系统,不管使用何种文件系统,都可以直接通过这个抽象的文件系统来调用。 再继续往下,还有抽象层。文件系统可以指定读写功能,从何处读写?可以是各种类型的块设备,比如IDE磁盘、SATA磁盘等

通过GlusterFS黏合多节点SSD剩余空间

与世无争的帅哥 提交于 2020-04-12 16:25:35
固态盘(SSD)的速度比机械硬盘快很多(400MB/s~1.7GB/s),但是价格昂贵,所以往往容量比较小。通过GlusterFS可以把多节点SSD黏合为 一块大的网络SSD ,可以在局域网上任意节点上连接使用,从而更方便使用,大幅度提高SSD的使用效率,提升系统速度、降低总体成本。 建议使用多口的万兆网络,否则网络会成为GlusterFS传输的瓶颈。 带宽计算参考:一般带宽使用bps计算,标称带宽*80%/8为以Byte计算的带宽。 如10Gbps网络,实际传输速度大概为1GB/s。 Intel 760P写入速度大概1.4GB/s,Samsung 960P写入速度大约1.7GB/s。 同一个盘同时读写,速度至少减半。 这里使用的系统为Ubuntu18.04.1 LTS版本,下面是对实验过程的一些记录。 1、安装支持软件 安装软件: #安装ZFS系统 sudo apt install zfsutils-linux #安装GlusterFS系统 sudo apt install glusterfs-server 在所有节点上安装上面的软件,也可以通过ansible来批量完成。 在 每个节点 创建好zfs的存储池zpool,如:sudo zpool create zpool /dev/sda /dev/sdb /dev/sdc,更多的设置模式参见: ZFS的配置参见

总结Docker的存储和网络相关

亡梦爱人 提交于 2020-04-05 23:02:03
一、Docker概述 LXC所实现的隔离性主要是来自kernel的namespace, 其中pid, net, ipc, mnt, uts 等namespace将container的进程, 网络, 消息, 文件系统和hostname 隔离开。 cgroups 实现了对资源的配额和度量。 cgroups 的使用非常简单,提供类似文件的接口,在 /cgroup目录下新建一个文件夹即可新建一个group,在此文件夹中新建task文件,并将pid写入该文件,即可实现对该进程的资源控制。 二、网络 (1)网络模型 bridge:网桥网络 当Docker进程启动时,会在主机上创建一个名为docker0的虚拟网桥,此主机上启动的Docker容器会连接到这个虚拟网桥上。虚拟网桥的工作方式和物理交换机类似,这样主机上的所有容器就通过交换机连在了一个二层网络中。 host:主机网络 如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。 none:禁用容器网络 container:容器网络 这个模式指定新创建的容器和已经存在的一个容器共享一个 Network

ZFS使用:挂载文件系统、更改挂载点、

送分小仙女□ 提交于 2020-03-25 23:17:12
第一讲:mounting a File System 特性 a.创建文件系统也会在路径上创建一个具有相同文件系统名称的挂载点,文件系统会自动挂载在那里 b.可以通过更改挂载点属性的值来更改挂载点 c.挂载也可以通过传统的方式(UFS)完成遗留安装 附:查看目录权限是否继承了父级 zfs get -r compression upool,查看source字段 local:已为数据集显示设置了属性 inherited from data_name:继承了父的属性 default:属性未被设置 第二讲:更改挂载点(更改挂载点,或者使用legacy mount) specify a mount point zfs set mountpoint=/test upool/test zfs set mountpoint=legacy upool/test 其中:Legacy mount method example:mount rz2pool/data2 to /zfs/fs2 (1)Set the mountpoint property for legacy mount. zfs set mountpoint=legacy upool/test 备注:可能是这个命令,我还没测试,等待测试 (2)Create a mount point #mkdir /zfs/fs2 (3)Execute

服务器ZFS文件系统故障后的数据恢复过程

左心房为你撑大大i 提交于 2020-03-04 20:05:29
一、服务器数据恢复环境部署介绍: 今天为大家介绍的数据恢复成功案例服务器型号为:ORACLE-SUN-ZFS7320。服务器内涉及硬盘32块,服务器操作采用的是Windows操作系统。 · 二、服务器数据恢复故障情况 服务器在正常运行的时候突然崩溃,没有断电、进水、异常操作、机房不稳定等外部因素。服务器管理员对设备进行重启后发现无法进入系统,需要对服务器内的数据进行恢复。 · 三、分析服务器磁盘底层数据 服务器管理员对所有硬盘进行扇区级镜像后将镜像文件送到数据恢复中心进行数据恢复。服务器数据恢复工程师对客户的故障服务器进行底层数据分析得到如下信息:故障服务器采用zfs文件系统;所有磁盘被分为4个组,每组8块硬盘;热备盘全部启用。 · 四、服务器故障情况分析 在服务器ZFS文件系统中,池被称为ZPOOL。ZPOOL的子设备可以有很多种类,包括块设备、文件、磁盘等等,在本案例中所采用的是其中的一种------三组RAIDZ作为子设备。 经过分析发现,三组RAIDZ内有两组分别启用热备盘个数为1和3。在启用热备盘后,第一组内仍出现一块离线盘,第二组内则出现两块。以此进行故障现场模拟:三组RAIDZ内第一二组分别出现离线盘,热备盘及时进行替换;热备盘无冗余状态下第一组出现一块离线盘,第二组出现两块离线盘,ZPOOL进入高负荷状态(每次读取数据都需要进行校验得到正确数据)

Ubuntu上使用ZFS(Zettabyte File System)

限于喜欢 提交于 2020-02-28 22:57:13
ZFS-基于Ubuntu使用Zettabyte File System 什么是ZFS, http://open-zfs.org/wiki/Main_Page ZFS 的支持从 Ubuntu Wily 15.10 开始作为技术预览加入,到 Ubuntu Xenial 16.04 实现完整支持。注意 ZFS 只支持 64位架构。另外,ZFS 仅支持 data storage, 不支持 root filesystem(在18.04经过配置后可以支持)。 运行ZFS要求空余内存多于 2GB,建议 ZFS 系统不少于 8GB 内存。 安装 ZFS, 使用: sudo apt install zfsutils-linux 下面快速预览 ZFS, 更多的关于 ZFS的信息请参考 excellent documentation ,由 Aaron Toponce 编写。 注意 为了节约篇幅,本文档中 devices 指 /dev/sda /dev/sdb 等等。 使用device路径 /dev/disk/by-uuid 可以唯一地代表一个设备从而避免在设备名称映射改变时启动失败。 ZFS 虚拟设备 (ZFS VDEVs) 一个 VDEV 是一个meta-device,代表着一个或多个设备。ZFS 支持 7 中不同类型的 VDEV: File - 预先分类的文件,为*.img的文件

如何在Centos7上安装和使用ZFS

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-28 14:30:03
ZFS优势 ZFS是一种先进的、高度可扩展的文件系统,最初是由Sun Microsystems开发的,现在OpenZFS是项目的一部分。有这么多文件系统可用在Linux上,那自然要问ZFS有什么特别之处。不同于其它文件系统,它不仅是一个文件系统逻辑卷管理器。ZFS使其受欢迎的特性是: 1. 数据完整性——数据一致性和完整性通过即写即拷和校验技术保证。 2. 存储空间池——可用存储驱动器一起放入称为zpool的单个池。 3. 软件 RAID ——像发出一个命令一样,建立一个raidz数组。 4. 内置的卷管理器——ZFS充当卷管理器。 5. Snapshots、克隆、压缩——这些都是一些ZFS提供的高级功能。 在本指南中,我们将学习在CentOS 7服务器上如何安装、设置和使用一些重要的ZFS命令。 术语 在我们继续之前,让我们了解一些ZFS的常用的术语。 Pool:存储驱动器的逻辑分组,它是ZFS的基本构建块,从这里将存储空间分配给数据集。 Datasets:ZFS文件系统的组件即文件系统、克隆、快照和卷被称为数据集。 Mirror:一个虚拟设备存储相同的两个或两个以上的磁盘上的数据副本,在一个磁盘失败的情况下,相同的数据是可以用其他磁盘上的镜子。 Resilvering:在恢复设备时将数据从一个磁盘复制到另一个磁盘的过程。 Scrub