Hey all, I have a 10 TB root pool setup like so: pool: s78 state: ONLINE scrub: resilver completed after 2h0m with 0 errors on Wed Jan 19 22:04:39 2011 config: NAME STATE READ WRITE CKSUM s78 ONLINE 0 0 0 mirror ONLINE 0 0 0 c14t0d0 ONLINE 0 0 0 c7t0d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t1d0 ONLINE 0 0 0 c14t1d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t2d0 ONLINE 0 0 0 c14t2d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t3d0 ONLINE 0 0 0 c14t3d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t4d0 ONLINE 0 0 0 c15t6d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t5d0 ONLINE 0 0 0 c14t5d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t6d0 ONLINE 0 0 0 c14t6d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t7d0 ONLINE 0 0 0 c14t7d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c15t7d0 ONLINE 0 0 0 c14t4d0 ONLINE 0 0 1.11M 251G resilvered logs ONLINE 0 0 0 c15t2d0 ONLINE 0 0 0 spares c15t0d0 AVAIL errors: No known data errors Only 2 TB of the pool are used and I would like to remove one mirror set from the pool and use the two drives in that mirror set as hot spares (for a total of 3 hotspares). Is this possible? -- This message posted from opensolaris.org
On Mon, 2011-01-24 at 13:56 -0800, Phillip V wrote:> Hey all, > > I have a 10 TB root pool setup like so: > pool: s78 > state: ONLINE > scrub: resilver completed after 2h0m with 0 errors on Wed Jan 19 22:04:39 2011 > config: > > NAME STATE READ WRITE CKSUM > s78 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c14t0d0 ONLINE 0 0 0 > c7t0d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t1d0 ONLINE 0 0 0 > c14t1d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t2d0 ONLINE 0 0 0 > c14t2d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t3d0 ONLINE 0 0 0 > c14t3d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t4d0 ONLINE 0 0 0 > c15t6d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t5d0 ONLINE 0 0 0 > c14t5d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t6d0 ONLINE 0 0 0 > c14t6d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t7d0 ONLINE 0 0 0 > c14t7d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c15t7d0 ONLINE 0 0 0 > c14t4d0 ONLINE 0 0 1.11M 251G resilvered > logs ONLINE 0 0 0 > c15t2d0 ONLINE 0 0 0 > spares > c15t0d0 AVAIL > > errors: No known data errors > > Only 2 TB of the pool are used and I would like to remove one mirror set from the pool and use the two drives in that mirror set as hot spares (for a total of 3 hotspares). Is this possible?No. You cannot shrink the size of a pool, regardless of what type of vdev it is composed of. -- Erik Trimble Java System Support Mailstop: usca22-317 Phone: x67195 Santa Clara, CA Timezone: US/Pacific (GMT-0800)
Cindy Swearingen
2011-Jan-25 15:47 UTC
[zfs-discuss] Shrinking a pool, Increasing hotspares
Hi Phillip, We don''t yet support removing a mirrored pair, but you could reconfigure this pool by the process below. First, you would want to make sure that all the hardware is fully operational by reviewing fmdump -eV, iostat -En, /var/adm/messages and having a good backup. Yes, I''m paranoid after years of reports on this list of failing hardware at the worst possible times. Thanks, Cindy 0. Check the hardware, create file system snapshots or whatever you''ll need to migrate the data. 1. Remove the spare and possibly, even the log device, but the pool performance might suffer when the log device is removed. 2. Detach one or two disks from a mirrored set. 3. Depending on how much space you need for your 2 TBs of data, create a non-redundant config of three disks, like this: # zpool create new-pool disk-1 disk-2 disk-3 4. Scrub the new pool. 5. Export and import the new pool to ensure the devices are discovered and operational. (More paranoia) 6. Migrate your data over to the new pool. 7. Destroy the s78 pool. 8. Attach disks from the s78 pool to re-create a mirrored configuration. # zpool attach new-pool disk-1 disk-4 # zpool attach new-pool disk-2 disk-5 # zpool attach new-pool disk-3 disk-6 On 01/24/11 14:56, Phillip V wrote:> Hey all, > > I have a 10 TB root pool setup like so: > pool: s78 > state: ONLINE > scrub: resilver completed after 2h0m with 0 errors on Wed Jan 19 22:04:39 2011 > config: > > NAME STATE READ WRITE CKSUM > s78 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c14t0d0 ONLINE 0 0 0 > c7t0d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t1d0 ONLINE 0 0 0 > c14t1d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t2d0 ONLINE 0 0 0 > c14t2d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t3d0 ONLINE 0 0 0 > c14t3d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t4d0 ONLINE 0 0 0 > c15t6d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t5d0 ONLINE 0 0 0 > c14t5d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t6d0 ONLINE 0 0 0 > c14t6d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c7t7d0 ONLINE 0 0 0 > c14t7d0 ONLINE 0 0 0 > mirror ONLINE 0 0 0 > c15t7d0 ONLINE 0 0 0 > c14t4d0 ONLINE 0 0 1.11M 251G resilvered > logs ONLINE 0 0 0 > c15t2d0 ONLINE 0 0 0 > spares > c15t0d0 AVAIL > > errors: No known data errors > > Only 2 TB of the pool are used and I would like to remove one mirror set from the pool and use the two drives in that mirror set as hot spares (for a total of 3 hotspares). Is this possible?