...
PURPOSE Replication best practices dictate that workloads should be broken into multiple contexts. Sometimes VTL configurations are created outside of these best practices by using one (or few) large pool(s) and experience performance degradation. When this occurs, Data Domain support recommends breaking the pool into multiple contexts. APPLIES TO Data Domain OS versions 5.2.x and above All Data Domain SystemsVTL
NA
With VTL Pool based on Mtree tapes can be safely moved between Pools at source or copied to a different Pool at destination with no downtime.The only caveat is to export tapes into Vault at source before moving them to a different Pool, to guarantee that tapes are not accessed by clients while moving.There are 2 different approaches to break up a big VTL Pool into multiple smaller Pools: Move Tapes at source to new Pools without breaking existing Replication The main advantage is that you don t need to break replication. In order to guarantee that replica tapes are always available at destination, even before the synchronization of the new VTL Pools, you should copy in a temporary Pool Replica Tapes that you plan to move at source to different Pools. Break Replication then move tapes at source to new Pools The main advantage is that you can just rename the VTL Pool at destination to keep a copy of all the Replica Tapes. The disadvantage is that you need to recreate replication for all tapes, even for tapes staying in its original Pool at source. In order to provide command examples, let's assume that we have one big VTL Pool, named Big_Pool, containing 10000 tapes with barcodes BG0000L5-BG9999L5, all imported into VTL library, named big_vtl, and that we want to break it up in 10 VTL Pools with 1000 tapes each.Source DD is DD1 and destination DD is DD2. sysadmin@DD1# vtl pool show all VTL Pools Pool Status Tapes Size (GiB) Used (GiB) Comp ---------------- ------ ----- ---------- ---------- ---- Default RW 0 0 0 0x Big_Pool RW 10000 15000000 0 0x ---------------- ------ ----- ---------- ---------- ---- 10000 tapes in 2 pools sysadmin@DD1# replication show config CTX Source Destination Connection Low-bw-optim Encryption Enabled Max-repl- Host and Port (Auth-mode) streams --- ---------------------------------------------------- --------------------------------------------------- ---------------------------------- ------------ ----------- ------- --------- 1 mtree://DD1.localhost/data/col1/Big_Pool mtree://DD2.localhost/data/col1/Big_Pool DD2.localhost (default) disabled disabled yes 32 --- ---------------------------------------------------- --------------------------------------------------- ---------------------------------- ------------ ----------- ------- --------- DD System default Max-repl-streams per context: 32 * Used for recovery only. sysadmin@DD2# vtl pool show all VTL Pools Pool Status Tapes Size (GiB) Used (GiB) Comp ----------------- ----------- ----- ---------- ---------- ---- Default RW 0 0 0 0x Big_Pool RO/RD 10000 15000000 0 0x ----------------- ----------- ----- ---------- ---------- ---- 10000 tapes in 2 pools RO : Read Only RD : Replication Destination RLGD : Retention-Lock Governance Disabled BCM : Backwards-Compatibility sysadmin@DD2# replication show config CTX Source Destination Connection Low-bw-optim Crepl-gc-bw-optim Encryption Enabled Max-repl- Host and Port (Auth-mode) streams --- ------------------------------------------------------ ------------------------------------------------------ --------------------------------------- ------------ ----------------- ----------- ------- --------- 1 mtree://DD1.localhost/data/col1/Big_Pool mtree://DD2.localhost/data/col1/Big_Pool DD1.localhost* (default)* disabled disabled disabled yes 32 --- ------------------------------------------------------ ------------------------------------------------------ --------------------------------------- ------------ ----------------- ----------- ------- --------- DD System default Max-repl-streams per context: 32 * Used for recovery only. Move tapes at source to new Pools without breaking existing Replication Create as many VTL Pools as needed to reduce the number of tapes per Pool to the suggested limit sysadmin@DD1# vtl pool add Big_Pool_2 VTL pool added. sysadmin@DD1# vtl pool add Big_Pool_3 VTL pool added. ... ... ... sysadmin@DD1# vtl pool add Big_Pool_10 VTL pool added. Stop access to the VTL where tapes are importedExport all tapes belonging to the Pool that we are going to split sysadmin@DD1# vtl export big_vtl slot 1001 count 9000 ... exported 9000 tape(s)... At destination, create a new VTL Temporary Pool sysadmin@DD2# vtl pool add TEMP-Big_pool At destination, copy all tapes that you are going to move at source to the VTL Temporary Pool sysadmin@DD2# vtl tape copy barcode BG1000L5 count 9000 source Big_Pool destination TEMP-Big_Pool ... copied 9000 tape(s)... At source, move tapes to the new VTL Pools sysadmin@DD1# vtl tape move barcode BG1000L5 count 1000 source Big_Pool destination Big_Pool_2 ... moved 1000 tape(s)... sysadmin@DD1# vtl tape move barcode BG2000L5 count 1000 source Big_Pool destination Big_Pool_3 ... moved 1000 tape(s)... ... ... ... sysadmin@DD1# vtl tape move barcode BG9000L5 count 1000 source Big_Pool destination Big_Pool_10 ... moved 1000 tape(s)... All tapes moved to different Pools after some time will be automatically deleted at destination from the original Replica PoolImport all tapes into the original VTL sysadmin@DD1# vtl import big_vtl barcode BG1000L5 count 1000 pool Big_Pool_2 ... imported 1000 tape(s)... sysadmin@DD1# vtl import big_vtl barcode BG2000L5 count 1000 pool Big_Pool_3 ... imported 1000 tape(s)... ... ... ... sysadmin@DD1# vtl import big_vtl barcode BG9000L5 count 1000 pool Big_Pool_10 ... imported 1000 tape(s)... Create new Replication contexts to replicate the new VTL PoolsWait for Replication initialization to complete before allowing VTL clients to access the VTL againWait for all Replication contexts to be in syncAt destination, delete all the tapes in the VTL Temporary Pool and remove the Pool Break Replication then move tapes at source to new Pools Break Replication context at source and destination sysadmin@DD1# replication break rctx://1 The 'replication break' command irrevocably turns off logical replication from this mtree. To reconfigure the mtree for replication, the destination mtree must not exist, or, alternatively, 'replication resync' must be used. Are you sure? (yes|no) [no]: yes ok, proceeding. sysadmin@DD2# replication break rctx://1 The 'replication break' command irrevocably turns off logical replication from this mtree. To reconfigure the mtree for replication, the destination mtree must not exist, or, alternatively, 'replication resync' must be used. Are you sure? (yes|no) [no]: yes ok, proceeding. Rename the VTL Pool at destination sysadmin@DD2# vtl pool rename Big_Pool SAVED-Big_Pool VTL pool 'Big_Pool' renamed to 'SAVED-Big_Pool'. Create as many VTL Pools as needed to reduce the number of tapes per Pool to the suggested limit (refers to I.1 for command example)Stop access to the VTL where tapes are importedExport all tapes belonging to the Pool that we are going to split (refers to I.3 for command example)At source, move tapes to the new VTL Pools (refers to I.6 for command example)Import all tapes into the original VTL (refers to I.8 for command example)Create new Replication contexts to replicate the new VTL PoolsWait for Replication initialization to complete before allowing VTL clients to access the VTL againWait for all Replication contexts to be in syncAt destination, delete all the tapes in the VTL Renamed Pool and remove the Pool