ZPOOL: Grow a zpool by adding new device(s)

ZPOOL: Grow a zpool by adding new device(s)

# Tested on RHEL 6 & 7


# Even if ZFS can use individual slices or partitions, it is recommended to use whole disks.


# -------------------------------------------------------------------------------------
# Extending a concat zpool
# -------------------------------------------------------------------------------------

POOLNAME=c_pool
POOLMNTP=/c_pool
DEVICE01=/dev/sdd



# Given following zpool:

zpool status $POOLNAME
     pool: c_pool
    state: ONLINE
    scan: none requested
   config:

           NAME        STATE     READ WRITE CKSUM
           c_pool      ONLINE       0     0     0
             sdb       ONLINE       0     0     0
             sdc       ONLINE       0     0     0

   errors: No known data errors


zpool list $POOLNAME
   NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
   c_pool  19.9G   104K  19.9G     0%  1.00x  ONLINE  -



# Extend zpool

zpool add $POOLNAME $DEVICE01

# If you have an error like this one:

   invalid vdev specification
   use '-f' to override the following errors:
   /dev/sdd does not contain an EFI label but it may contain partition
   information in the MBR.

# you should use '-f' option to create the pool - first ensure that disk(s) are the
# right one(s):

# zpool add -f $POOLNAME $DEVICE01



# Check

zpool status $POOLNAME
     pool: c_pool
 state: ONLINE
    scan: none requested
   config:

           NAME        STATE     READ WRITE CKSUM
           c_pool      ONLINE       0     0     0
             sdb       ONLINE       0     0     0
             sdc       ONLINE       0     0     0
             sdd       ONLINE       0     0     0   <----

   errors: No known data errors


zpool list $POOLNAME
   NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
   c_pool  29.8G   166K  29.8G     0%  1.00x  ONLINE  -




# -------------------------------------------------------------------------------------
# Extending a mirrored zpool
# -------------------------------------------------------------------------------------

POOLNAME=m_pool
SUBMIRR1=/dev/sdd
SUBMIRR2=/dev/sde



# Given following zpool:

zpool status $POOLNAME
     pool: m_pool
    state: ONLINE
    scan: none requested
   config:

           NAME        STATE     READ WRITE CKSUM
           m_pool      ONLINE       0     0     0
             mirror-0  ONLINE       0     0     0
               sdb     ONLINE       0     0     0
               sdc     ONLINE       0     0     0

   errors: No known data errors

zpool list $POOLNAME
   NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
   m_pool  9.94G   100K  9.94G     0%  1.00x  ONLINE  -



# Extend zpool

zpool add $POOLNAME mirror $SUBMIRR1 $SUBMIRR2

# If you have an error like this one:

   invalid vdev specification
   use '-f' to override the following errors:
   /dev/sdd does not contain an EFI label but it may contain partition
   information in the MBR.

# you should use '-f' option to create the pool - first ensure that disk(s) are the
# right one(s):

# zpool add -f $POOLNAME mirror $SUBMIRR1 $SUBMIRR2



# Check

zpool status $POOLNAME
     pool: m_pool
    state: ONLINE
    scan: none requested
   config:

           NAME        STATE     READ WRITE CKSUM
           m_pool      ONLINE       0     0     0
             mirror-0  ONLINE       0     0     0
               sdb     ONLINE       0     0     0
               sdc     ONLINE       0     0     0
             mirror-1  ONLINE       0     0     0
               sdd     ONLINE       0     0     0   <----
               sde     ONLINE       0     0     0
   <----

   errors: No known data errors



zpool list $POOLNAME
   NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
   m_pool  19.9G   104K  19.9G     0%  1.00x  ONLINE  -
0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
Do you Know These 5 Use of V$session View ?
Viewed 83102 times since Thu, Jun 21, 2018
Logrotate Example for Custom Logs
Viewed 2120 times since Sun, Jan 12, 2020
How To Run Multiple SSH Command On Remote Machine And Exit Safely
Viewed 3343 times since Tue, Aug 6, 2019
python learning
Viewed 1454 times since Wed, Dec 18, 2019
7 Tips – Tuning Command Line History in Bash
Viewed 4424 times since Fri, Jul 5, 2019
logrotate Understanding logrotate utility
Viewed 1468 times since Sun, Jan 12, 2020
LVM: Managing snapshots
Viewed 7315 times since Sat, Jun 2, 2018
RHEL: Extending a vmdk (Virtual Machine disk)
Viewed 3665 times since Sun, May 27, 2018
UUIDs and Linux: Everything you ever need to know [Update]
Viewed 4628 times since Tue, Jul 17, 2018
How to Configure ‘FirewallD’ in RHEL/CentOS 7 and Fedora 21
Viewed 9817 times since Wed, Oct 9, 2019