Articles of ZFS

是一个退化的RAIDZ2相同的RAIDZ?

在这个问题上的背景:我有一个litte服务器与五个硬盘在一个RAIDZ在一起。 上周我的一个硬盘坏了。 所以我买了一个新的硬盘,并更换了死硬盘。 在重新同步期间,不可避免的事情发生了 – 另一个硬盘驱动器死了,但是由于ZFS,我可以恢复大部分数据(感谢我的所有朋友提供外部磁盘)。 现在,因为我正在更换第二个硬盘,并且需要销毁旧池,所以我正在考虑用我的五个硬盘创build一个降级的RAIDZ2,以便在之后添加第六个硬盘。 为什么这可能是一个坏主意。

如何在Linux下最好地使用亚马逊的“短暂”SSD设备?

亚马逊将“临时”SSD设备附加到大多数实例types – 这些都包含在虚拟机的成本中,速度很快,但是当虚拟机closures时,它们上的任何数据都会丢失。 如何充分利用它们? 我列举了以下三种可能性。 你拿什么? 有没有类似“最佳做法”的指导呢? 交换和tmpfs 最简单的方法是将所有这些设备初始化为swap: NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvdn 202:208 0 37.5G 0 disk [SWAP] xvdo 202:224 0 37.5G 0 disk [SWAP] xvde 202:64 0 75G 0 disk / 然后在tmpfs上安装“discardable”文件系统(比如/ tmp)(大小设置为交换的100%)。 然后,可以将各种应用程序(varnish,rpmbuild,memcache,mysql)configuration为使用tmpfs支持的文件系统来存储任何可丢弃的数据。 这种方法的优点是简单,使所有的存储连接到一个虚拟机可用。 缺点是,应用程序可能没有足够的“可丢弃”数据来利用相当大比例的“短暂”存储 – 导致浪费。 镜像“短暂”和真正的存储 另一种方法是使用mdadm(8)将临时存储与镜像arrays(RAID1)中的实际(EBS卷)配对。 系统可以configuration为始终从镜像的快速“短暂”一侧读取,但等待双方写入时报告准备就绪。 这种方法在永久性和“短暂”设备上存储相同的数据,只有当存在更多的“临时”存储时才有意义,这比真正需要交换或直接使用应用程序更为重要。 快速SSD成为直写caching。 因为这样的arrays上的数据可以在重新启动后存活下来,并且可以用于所有的事情,而这些事情通常会被读取,但很less被写入,所以这似乎是一个很好的通用解决scheme 缺点是安装的复杂性和“成本” – 用这样一个镜像caching100Gb EBS卷,我们需要使用100Gb的临时存储。 使用ZFS […]

ZFS(Solaris 11) – SAS控制器死亡并被replace – 池被暂停

(注意,为了清楚起见,我将修改zpool状态,当我返回到服务器) 我有一个6x2TB磁盘raidz2 ZFS池,我在Solaris 11中托pipe 我原来的M1015(闪烁到IT模式)安装了两年前,当我build立这台服务器失败,并不再识别PCI-E总线。 我昨天用另一个M1015replace了它(闪烁到IT模式),Solarisfind了所有的磁盘。 但是,ZFS池被置于SUSPENDED模式(可能是因为之前M1015在运行时死机,所有的磁盘都在之前消失),而且我看到在两个磁盘(?)上发生了重新同步,所有磁盘都列为不可用。 我毫不怀疑在游泳池里有一些错误。 但是我已经清理了这个错误,希望这个池可以重新安装在退化状态。 然而,重启后,池首先出现DEGRADED(一些磁盘显示为不可用,一些显示为已降级),然后立即转换为SUSPENDED,所有磁盘显示为不可用,并重新启动。 重启速度从大约100MBps开始,迅速下降到50kbps或更低。 这相当于预计重复时间的数百小时。 更重要的是,iostat显示池中任何磁盘上发生的ZERO事务。 似乎所有事务在重新启动后不久都会突然发生,因为在顺序重新引导之后,我可以看到约1GB的扫描进度。 我没有办法使任何磁盘脱机,或者在处于挂起状态时导出池(另外,当“fmadm faulty”条目都被报告为已修复时,我不知道为什么它进入挂起状态) 我在哪里更换SAS控制器出错了,我该如何恢复? $ zpool status pool: rpool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 c8t0d0s1 ONLINE 0 0 0 errors: No known data errors pool: tank state: SUSPENDED status: One or […]

发送重复数据删除的ZFSstream需要多less内存?

去年,我为雇主build立了一对服务器,运行FreeBSD 10.1,在每台服务器上都有一个大容量的存储池。 12 x 2TB磁盘,在configuration为两个raidz2 vdevs每个六个磁盘的zpool中。 其中一台服务器是备用服务器,是活动服务器的副本。 我们希望在某种types的独立存储上创build备份,以防止pipe理员错误等非故障types的故障。 初步testing表明,只需使用备用副本服务器将“重复数据删除stream”(-D)“zfs”发送到某个外部存储就足够了,但我无法find有关发送重复数据删除stream的内存要求是否为与首先使用重复数据删除的要求相同。 zfs send -D与DDFS表具有相同的内存要求吗?

zfs池不可用,磁盘与其他池共享

我的ZFS池调用数据在closures后不再装载。 也许在电脑上有一些自动更新。 我不知道。 zpool status返回no pools available zpool import返回一些奇怪的东西给我 pool: data id: 14112227688943668786 state: ONLINE status: The pool is formatted using a legacy on-disk version. action: The pool can be imported using its name or numeric identifier, though some features will not be available without an explicit 'zpool upgrade'. config: data ONLINE raidz3-0 ONLINE ata-WDC_WD30EFRX-68EUZN0_WD-WMC4N0543911 […]

ZFS SAN引导 – 在SAN交换机更换期间,操作系统崩溃的原因

我有一台Solaris 10服务器 – 使用ZFS SAN引导 – 操作系统池具有两个不同的HBAconfiguration的磁盘c1,c2 – 具有来自SANarrays上不同FA端口的LUN – c1,c2 HBA连接到不同的交换机 – 但仍然如果其中一条电​​缆被拉(或失败)似乎操作系统挂起 – 并需要一个powercycle – 在ZFS中应该调整什么,以便即使它是一个SAN启动 提前致谢。

缺less新zfs raidz2 zpool中的可用空间?

我正在运行基于FreeBSD 10.2-RELEASE-p2#0 r287260M:2015年8月28日星期五18:38:18的Nas4Free 10.2.0.2 – Prester(修订版1814)。系统具有24 GB的内存。 我已经尝试了ashift=9和12没有区别。 我只得到14.7T的自由空间。 这是为什么? 编辑 :我现在尝试OpenIndiana的ZFS实施与同一台机器,它提供28.5T免费和列表驱动器为8001.49GB。 所以这可能是FreeBSD的ZFS实现或FreeBSD HDD驱动程序错误的一个错误? 编辑 :我现在已经尝试使用FreeBSD-10.2-STABLE-amd64-20150917-r287929-memstick.img,并提供28.1T的可用空间,所以这是一个错误。 磁盘: ada0 at ata2 bus 0 scbus2 target 0 lun 0 ada0: <ST8000AS0002-1NA17Z AR13> ACS-2 ATA SATA 3.x device ada0: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 8192bytes) ada0: 7630885MB (15628053168 512 byte sectors: 16H 63S/T 16383C) ada1 at ata2 […]

使用ZFS快照“重新安装”FreeBSD

我使用的是专用服务器,与VPS提供程序或VM机器不同,恢复到干净状态(安装后未改动)是相当费力的事情(大量点击Web控制面板并启动Java KVM查看器+手动进行安装)。 我的问题是,如果ZFS支持快照,只需发出一个命令就可以恢复到干净的状态吗? 我的ZFS分区表是安装程序提供的“Auto(ZFS)”,在我的服务器上看起来像这样(使用FreeBSD 10.2): NAME USED AVAIL REFER MOUNTPOINT zroot 34.8G 176G 96K /zroot zroot/ROOT 1.46G 176G 96K none zroot/ROOT/default 1.46G 176G 1.46G / zroot/tmp 76.8M 176G 76.8M /tmp zroot/usr 33.2G 176G 96K /usr zroot/usr/home 32.6G 176G 32.6G /usr/home zroot/usr/ports 631M 176G 631M /usr/ports zroot/usr/src 96K 176G 96K /usr/src zroot/var 692K 176G 96K /var […]

现有zpool从数据存储分配磁盘如何增加zpool和增加文件系统

第一个磁盘c1t0d0位于根文件系统的syspool中。 该磁盘来自esx主机的数据存储。 如果它们增加了此Solaris VM服务器的syspool磁盘c1t0d0的现有磁盘。 如何在线增加zpool并增加根文件系统。 它在c1t0d0上创build的片断s0,我必须在这里使用什么zpool和zfs命令…. root@server:/var/fm/fmd# echo |format |more Searching for disks…done AVAILABLE DISK SELECTIONS: 0. c1t0d0 <DEFAULT cyl 4093 alt 2 hd 128 sec 32> /pci@0,0/pci15ad,1976@10/sd@0,0 1. c1t1d0 <VMware-Virtual disk-1.0-500.00GB> /pci@0,0/pci15ad,1976@10/sd@1,0 2. c3t0d0 <VMware-Virtual disk-1.0-1.00TB> /pci@0,0/pci15ad,790@11/pci15ad,1976@2/sd@0,0 Specify disk (enter its number): Specify disk (enter its number): root@server:/var/fm/fmd# pool: syspool state: ONLINE scan: none […]

ZFS备份与ZFS服务数据文件夹

所以我最近在家里build立了自己的小型服务器。 我把我的主系统设置在一个SSD和一个大型硬盘的ZFS池上进行数据存储。 现在我问自己的问题是,如果我想build立的服务,如MySQL,ownCloud,gitolite等,将数据文件夹保持在SSD上,并做一个常规的RSYNC到一个特殊的备份数据集ZFS卷,或者将数据文件夹保留在ZFS池中。 在我看来,让他们在SSD和同步他们可能不是一个好主意,因为这使我失去了ZFS一致性检查和一种失败的首要目标。 在这种情况下推荐的选项是什么? 将/ var / lib中的所有内容合并到池文件夹中是否正确? 我应该修改configuration脚本吗? 我应该首先将/ var放在ZFS卷上吗? 一般来说,哪些文件夹应放在ZFS卷上?