乐趣区

关于freebsd:云服务器FreeBSD系统zfs-zpool扩容的一种方案

近期服务器因为磁盘空间满而产生了谬误,数据盘有了扩容的需要。以后的零碎采纳了稳如磐石的 FreeBSD 零碎,文件系统应用了更加平安、牢靠的 ZFS。

扩容计划

云硬盘满,咱们首先想到的是去服务商那扩容。但应用了 zfs 文件系统后,扩容的最并没有反馈到零碎中,也就是说尽管云服务端给咱们扩容到了 100G,但咱们可能应用的依然为 40G。

搜寻了相干的扩容关键字,但基本上所有的文章都在讲如何对实体的硬盘进行扩容(老的硬盘换了新的更大的硬盘),却没有一篇文章提及如何在云盘扩容后同步扩容 zpool。

最终查阅了 oracle 的官网文档失去了答案:

计划一

查看 zpool 状态,失去 zpool 名称以及退出到 zpool 的硬盘名称:

root@xxx:/dev # zpool status
  pool: zroot
 state: ONLINE
  scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    ①zroot       ONLINE       0     0     0
      ②vtbd1     ONLINE       0     0     0

失去①zpool 的名称为 zroot ②以后挂载的硬盘为 vtbd1.

而后执行扩容命令:

root@PingTai:/dev # zpool online -e ①zroot ②vtbd1

计划二

查看 zpool 状态,失去 zpool 名称:

root@xxx:/dev # zpool status
  pool: zroot
 state: ONLINE
  scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    ①zroot       ONLINE       0     0     0
      vtbd1     ONLINE       0     0     0

失去 zpool 的名称为 zroot,将zpoolautoexpand属性设置为on:

# zpool set autoexpand=on ①zroot

而后当磁盘扩容后,重新启动服务器,扩容主动实现。

ZFS

简略介绍下 ZFS,它是一个文件系统,外部有多种模式:disk、file、mirror、raidz、spare(统称为 VDEV —- 虚构设施)等,比拟罕用的是 raidz,该模式下有三个子模式,别离为 raidz1、raidz2、raidz3。raidz1 相当于一般的 raid5,而 raidz2 及 raidz3 则在 raid5 的根底上应用了 2 块或 3 块硬盘做校验盘,同时一个 zpool(虚构硬盘)中又能够包含多个虚构设施,所以能够每个 zpool 最大反对 16EB,也就是 1600 万 TB。

参考官网文档:https://docs.oracle.com/cd/E19120-01/open.solaris/817-2271/githb/index.html

退出移动版