45°

ZFS创建raidz1(RAID5)

一、VDEVs简介

首先,我们需要了解虚拟设备或VDEV的概念。如果你已经熟悉RAID,那么这个概念对你来说并不陌生,尽管你可能没有将其称为“VDEVs”。基本上,我们有一个代表一个或多个物理设备的元设备。在Linux软件RAID中,您可能有一个“/dev/md0”设备,它代表一个包含4个磁盘的RAID-5阵列。在这种情况下,“/dev/md0”将是您的“VDEV”。

ZFS中有七种类型的VDEV:

    disk(default)   -   系统中的物理硬盘驱动器。
    file                 -   预分配文件/镜像的绝对路径。
    mirror            -   标准软件RAID-1镜像。
    raidz1/2/3      -   非标准分布式基于奇偶校验的软件RAID级别。

    备用硬盘标记为ZFS软件RAID的“热备件”
    cache             -   用于2级自适应读缓存(L2ARC)的设备。
    log                 -  一个单独的日志(SLOG),称为“ZFS Intent Log”或ZIL。


值得注意的是,VDEV始终是动态条带化的。但是,假设ZFS条带中有4个磁盘,条带大小由磁盘数量和阵列中磁盘的大小计算得出。如果添加了更多磁盘,则可以根据需要调整其他磁盘的条带大小。

二、zfs池

2.1 创建raidz1池

# zpool create storage raidz1 sda sdb sdc

RAIDZ-1类似于RAID-5,因为在阵列中的所有磁盘上都有一个奇偶校验位。 条带宽度是可变的,可以覆盖阵列中磁盘的精确宽度,更少的磁盘或更多的磁盘。 RAIDZ-1只允许一个磁盘故障来维护数据,两次磁盘故障会导致数据丢失。RAIDZ-1中至少应使用3个磁盘,存储容量将是阵列中磁盘的数量乘以最小磁盘的存储量,减去一个用于奇偶校验存储的磁盘。

2.2 查看pool信息

# zpool list
NAME      SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
storage  8.12T  2.48M  8.12T         -     0%     0%  1.00x  ONLINE  -

zpool status storage

pool: storage state: ONLINE scan: none requested config:

NAME        STATE     READ WRITE CKSUM
storage     ONLINE       0     0     0
  raidz1-0  ONLINE       0     0     0
    sda     ONLINE       0     0     0
    sdb     ONLINE       0     0     0
    sdc     ONLINE       0     0     0

errors: No known data errors

三、文件系统

3.1 创建adfs

# zfs create storage/adfs

3.2 查看adfs相关信息

# zfs get all storage/adfs
NAME          PROPERTY              VALUE                  SOURCE
storage/adfs  type                  filesystem             -
storage/adfs  creation              Mon May  6 14:27 2019  -
storage/adfs  used                  128K                   -
storage/adfs  available             5.24T                  -
storage/adfs  referenced            128K                   -
storage/adfs  compressratio         1.00x                  -
storage/adfs  mounted               no                     -
storage/adfs  quota                 none                   default
storage/adfs  reservation           none                   default
storage/adfs  recordsize            128K                   default
storage/adfs  mountpoint            /storage/adfs          default
storage/adfs  sharenfs              off                    default
storage/adfs  checksum              on                     default
storage/adfs  compression           off                    default
storage/adfs  atime                 on                     default
storage/adfs  devices               on                     default
storage/adfs  exec                  on                     default
storage/adfs  setuid                on                     default
storage/adfs  readonly              off                    default
storage/adfs  zoned                 off                    default
storage/adfs  snapdir               hidden                 default
storage/adfs  aclinherit            restricted             default
storage/adfs  createtxg             3453                   -
storage/adfs  canmount              on                     default
storage/adfs  xattr                 on                     default
storage/adfs  copies                1                      default
storage/adfs  version               5                      -
storage/adfs  utf8only              off                    -
storage/adfs  normalization         none                   -
storage/adfs  casesensitivity       sensitive              -
storage/adfs  vscan                 off                    default
storage/adfs  nbmand                off                    default
storage/adfs  sharesmb              off                    default
storage/adfs  refquota              none                   default
storage/adfs  refreservation        none                   default
storage/adfs  guid                  17063632217463997049   -
storage/adfs  primarycache          all                    default
storage/adfs  secondarycache        all                    default
storage/adfs  usedbysnapshots       0B                     -
storage/adfs  usedbydataset         128K                   -
storage/adfs  usedbychildren        0B                     -
storage/adfs  usedbyrefreservation  0B                     -
storage/adfs  logbias               latency                default
storage/adfs  dedup                 off                    default
storage/adfs  mlslabel              none                   default
storage/adfs  sync                  standard               default
storage/adfs  dnodesize             legacy                 default
storage/adfs  refcompressratio      1.00x                  -
storage/adfs  written               128K                   -
storage/adfs  logicalused           40K                    -
storage/adfs  logicalreferenced     40K                    -
storage/adfs  volmode               default                default
storage/adfs  filesystem_limit      none                   default
storage/adfs  snapshot_limit        none                   default
storage/adfs  filesystem_count      none                   default
storage/adfs  snapshot_count        none                   default
storage/adfs  snapdev               hidden                 default
storage/adfs  acltype               off                    default
storage/adfs  context               none                   default
storage/adfs  fscontext             none                   default
storage/adfs  defcontext            none                   default
storage/adfs  rootcontext           none                   default
storage/adfs  relatime              off                    default
storage/adfs  redundant_metadata    all                    default
storage/adfs  overlay               off                    default

3.3 修改属性

# zfs set atime=off storage/adfs

zfs get atime storage/adfs

NAME PROPERTY VALUE SOURCE storage/adfs atime off local

 

本文由【l】发布于开源中国,原文链接:https://my.oschina.net/u/3021599/blog/3159578

全部评论: 0

    我有话说: