OpenZFS安装和使用

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 在Ubuntu 22.04.3 LTS上,本文介绍了OpenZFS的容错功能,如RAID-Z(类似RAID 5)、Mirror(类似RAID 1)、RAID-Z2和RAID-Z3,以及Hot Spare和Scrubbing。推荐使用RAID-Z1以平衡容量和预算。主要步骤包括安装zfsutils-linux,创建RAID-Z1存储池和ZFS文件系统,以及管理文件系统。此外,还提到了使用nfs共享ZFS文件系统的命令。

操作环境

其他环境请酌情转换处理

系统环境: Ubuntu 22.04.3 LTS
```bash

lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.3 LTS
Release: 22.04
Codename: jammy


> 磁盘情况
```bash
# lsblk -e 7
# -e 排除 loop设备类型

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   7.3T  0 disk
sdb           8:16   0   7.3T  0 disk
sdc           8:32   0   7.3T  0 disk
sdd           8:48   0   7.3T  0 disk
AI 代码解读

OpenZFS 中常见的容错功能

OpenZFS 是一个强大的文件系统和逻辑卷管理器,它提供了多种容错功能,可以保护数据免受硬件故障和数据损坏的影响。下面是一些 OpenZFS 中常见的容错功能:

  1. RAID-Z

    • RAID-Z1 是 RAID-Z 的别名。The raidz vdev type is an alias for raidz1
    • RAID-Z 是一种 ZFS 特有的软件 RAID 方案,类似于传统 RAID 5,但提供更强大的功能和更好的性能。
    • RAID-Z 通过在数据块中存储校验信息来提供数据完整性保护。在磁盘故障时,它可以使用校验信息恢复丢失的数据。
  2. Mirror

    • Mirror 是 OpenZFS 中的镜像功能,类似于传统 RAID 1。
    • 在 Mirror 中,数据被复制到至少两个磁盘上,如果一个磁盘失败,数据仍然可以从其他镜像中恢复。
  3. RAID-Z2 和 RAID-Z3

    • 类似于 RAID-Z,但提供了更高级别的容错保护。
    • RAID-Z2 允许在两个磁盘故障的情况下继续运行,而 RAID-Z3 允许在三个磁盘故障的情况下继续运行。
  4. Hot Spare

    • Hot Spare 是一种备用磁盘,当检测到磁盘故障时,它会自动替换故障磁盘。
    • 这可以减少故障对系统的影响,并在故障发生时自动恢复数据。
  5. Scrubbing

    • Scubbing 是一种定期检查和修复数据完整性的过程。
    • 它会定期扫描存储池中的所有数据,并检查它们与校验信息是否匹配,以及是否存在任何损坏的数据。

选择容错的方案

选择RAID-Z1, 如果有N个相等的磁盘 , 则容量为 (N-1)* 磁盘容量,读取、写入性能均为:N-1, 适用追求最大容量、最小预算的情况。

RAIDZ官网介绍: https://openzfs.github.io/openzfs-docs/Basic%20Concepts/RAIDZ.html

主要操作步骤

参考资料: https://openzfs.github.io/openzfs-docs/

  1. 安装 OpenZFS

On Ubuntu, ZFS is included in the default Linux kernel packages. To install the ZFS utilities, first make sure universe is enabled in /etc/apt/sources.list

deb http://archive.ubuntu.com/ubuntu CODENAME main universe

apt update
apt install zfsutils-linux

# zpool version
zfs-2.1.5-1ubuntu6~22.04.4
zfs-kmod-2.2.0-0ubuntu1~23.10.2

# zfs --version
zfs-2.1.5-1ubuntu6~22.04.4
zfs-kmod-2.2.0-0ubuntu1~23.10.2
AI 代码解读
  1. 创建 ZFS 存储池
    ```bash

    下面两条命令效果相同

    sudo zpool create mdata -m /mdata raidz1 /dev/sda /dev/sdb /dev/sdc /dev/sdd

    sudo zpool create mdata -m /mdata raidz /dev/sda /dev/sdb /dev/sdc /dev/sdd

zpool list

zpool status

pool: mdata
state: ONLINE
config:

    NAME        STATE     READ WRITE CKSUM
    mdata       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
        sdd     ONLINE       0     0     0
AI 代码解读

errors: No known data errors

zpool --help

销毁存储池

sudo zpool destroy mdata


3. 创建 ZFS 文件系统
```bash
# 创建文件系统
sudo zfs create -o mountpoint=/mdata/zfs mdata/zfs

cd /mdata/
chown -R user:user admin-user zfs

zfs list

# 移除文件系统
sudo zfs unmount mdata/zfs
sudo zfs destroy -r mdata/zfs
AI 代码解读

其他命令

nfs共享

zfs set sharenfs="rw,root=192.168.xxx.xxx,root=172.10.xxx.xxx" /mata/share
AI 代码解读
目录
打赏
0
0
0
0
12
分享
相关文章
Vcpkg 的安装与使用
Windows 下 Vcpkg 的安装与使用
1412 0
Vcpkg 的安装与使用
振弦式应变计埋设与安装
GEO久岩系列振弦式应变计是多年来的实践而设计出的振弦式弹性梁结构的产品(已获国家专利),彻底改变了传统的把波纹管作为弹性元件的测量方法,并具有抗高压,抗径向力,二次密封,零点稳定,全不锈钢外壳等特点。适用于长期埋设在混凝土结构的梁、柱、桩基、军便梁、支撑、挡土墙、水工建筑物、衬砌、墩与底脚及其岩中,监测其应力与应变,并可同步测量埋设点的温度,也可选择热敏电阻作为测温元件。加装配套附件可组成多向应变组,无应力计,钢板计,岩基变位计,表面应变计等。
振弦式应变计埋设与安装
fsarchiver安装及使用
fsarchiver安装及使用
675 0
KBEngine 安装
其实这篇的内容官方文档都有, 但是既然打算记录一下学习笔记, 也就先从安装开始了. 一 下载源代码 进入github下载最新release的源码压缩包. windows选择zip, 下载完成之后右键解压缩.
2544 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等