Search This Blog

Showing posts with label multi hosted zpool. Show all posts
Showing posts with label multi hosted zpool. Show all posts

Saturday, 19 March 2011

Configuring Zpool with Solaris Zone

Set up details: 
Server: globalzone
Zone name: testzone
1. Creating testpool named testpool with two disks in global zone

root@global # testpool create testpool  c4t60050768018E8327B800000000000005d0s0 
c4t60050768018E8327B800000000000008d0s0 

2. Checking the status of created pool testpool 

root@global # zpool status -v testpool
  pool: testpool
 state: ONLINE
 scrub: none requested
config:


        NAME                                       STATE     READ WRITE CKSUM
        testpool                                      ONLINE       0     0     0
          c4t60050768018E8327B800000000000005d0s0  ONLINE       0     0     0
          c4t60050768018E8327B800000000000008d0s0  ONLINE       0     0     0


errors: No known data errors
3. Adding the pool to zone
root@global # zoneadm -z testpool halt
root@global # zonecfg -z testpool
zonecfg:testzone> add dataset
zonecfg:testzone:dataset> set name="testpool"
zonecfg:testzone:dataset> end
zonecfg:testzone> commit
zonecfg:testzone> exit
root@global # zoneadm -z testzone boot

4. Creating first filesystem named mqm 
root@testzone# zfs create testpool/mqm
5. Setting quota for each file sy stem
root@testzone# zfs set quota=110G testpool/apps
root@testzone# zfs set quota=1G testpool/oraapps          
root@testzone# zfs set quota= 4G testpool/mqm  
6. Changing  mount point from non-global zone
bash-3.00# zfs set mountpoint=/apps testpool/apps
bash-3.00# zfs set mountpoint=/var/mqm  testpool/mqm
bash-3.00# zfs set mountpoint=/oracle/orapp testpool/oraapps
7. Since we don’t  need to pool to mounted,  removing pool from mounting
bash-3.00# zfs set mountpoint=legacy testpool

Tuesday, 19 October 2010

Importing and exporting zpool

For migrating Zpool from one system to other, below are the steps. 
Here, we use two systems ( white and black) as source and destination hosts. 
1. Creating a zpool named testpool on white using 5 disks. 

root@white # zpool create -f testpool  /dev/dsk/c4t6005076305FFC08C000000000000100Ad0  /dev/dsk/c4t6005076305FFC08C000000000000100Bd0  /dev/dsk/c4t6005076305FFC08C0000000000001012d0 /dev/dsk/c4t6005076305FFC08C0000000000001013d0  /dev/dsk/c4t6005076305FFC08C0000000000001014d0 
2. Creating a zfs volume named testfs
root@white # zfs create testpool/testfs

3. Making an 8GB file for testing purpose.
root@white # cd /testpool/testfs 
root@white # df . 
Filesystem             size   used  avail capacity  Mounted on 
testpool/testfs        9.8G    24K   9.8G     1%    /testpool/testfs 
root@white # mkfile 9G testfile 
root@white # df -h|grep testpool 
testpool               9.8G    25K   782M     1%    /testpool 
testpool/testfs        9.8G   9.0G   782M    93%    /testpool/testfs 
4. Now we can export the zpool from white. Its mandatory to free up all zpool devices related to testpool.
root@white # zpool export testpool

Once the zpool is exported, it disappears from df output of source server (white)

root@white # df -h|grep testpool

Below are the steps to export the filesystem to destination host (here, black). W assume that all the five disks are accessible from both hosts.

1. To list all the importable zpool and corresponding statutes apply below command. 
root@black #zpool import 
  pool: testpool 
    id: 15485920734056515199 
 state: ONLINE 
action: The pool can be imported using its name or numeric identifier. 
config: 
        testpool                                 ONLINE 
          c4t6005076305FFC08C000000000000100Ad0  ONLINE 
          c4t6005076305FFC08C000000000000100Bd0  ONLINE 
          c4t6005076305FFC08C0000000000001012d0  ONLINE 
          c4t6005076305FFC08C0000000000001013d0  ONLINE 
          c4t6005076305FFC08C0000000000001014d0  ONLINE 
Above output shows that, all the disks related to test pool is available and it can be imported. 
2. Now it can be imported.
root@black # zpool import testpool
3. Verifying imported zpool file file created from white server
root@black# df -h|grep testpool 
testpool               9.8G    25K   782M     1%    /testpool 
testpool/testfs        9.8G   9.0G   782M    93%    /testpool/testfs 
4. Example for exporting a zpool volume with different name. Here the testpool of white is exporting as testpool1 in black
root@black # zpool import testpool testpool1 
root@white # df -h|grep testpool 
testpool1              9.8G    25K   782M     1%    /testpool1 
testpool1/testfs       9.8G   9.0G   782M    93%    /testpool1/testfs 
5. Example for importing/recovering a destroyed zpool.

root@white # zpool destroy testpool1 
The zpool testpool1 is destroyed by above command for testing purpose. For listing the destroyed zpool, –D option must be used.

root@white # zpool import -D 
  pool: testpool1 
    id: 15485920734056515199 
 state: ONLINE (DESTROYED) 
action: The pool can be imported using its name or numeric identifier. 
        The pool was destroyed, but can be imported using the '-Df' flags. 
config: 
        testpool1                                ONLINE 
          c4t6005076305FFC08C000000000000100Ad0  ONLINE 
          c4t6005076305FFC08C000000000000100Bd0  ONLINE 
          c4t6005076305FFC08C0000000000001012d0  ONLINE 
          c4t6005076305FFC08C0000000000001013d0  ONLINE 
          c4t6005076305FFC08C0000000000001014d0  ONLINE 

Below is the command for importing/recovering a deleted zpool. Notice the option –D and –f with import command.

root@white # zpool import -Df testpool1 
root@white # df -h|grep testpool 
testpool1              9.8G    25K   782M     1%    /testpool1 
testpool1/testfs       9.8G   9.0G   782M    93%    /testpool1/testfs