Professional Documents
Culture Documents
1 2 3
BEST PRACTICES................................................................................................ 11 4.1 When not to use CPGs ................................................................................... 11 4.2 When to use different CPGs for different VVs ................................................. 11
4.2.1 4.2.2 Use different CPGs for VVs that require different LD characteristics...................... 11 Use different CPGs when there is a large number of VVs ..................................... 11
4.3 When to use the same CPG for different VVs ................................................. 12 4.4 Avoid creating VVs with explicit SD and SA space .......................................... 12 4.5 Avoid changing LD characteristics within a CPG ............................................. 12 4.6 Managing Free Space .................................................................................... 12 4.7 Use Allocation and Warning Limits for CPGs .................................................. 13 4.8 Use the allocation warning and allocation limit for TPVVs ............................... 13 5 6 SUMMARY ............................................................................................................ 14 ABOUT 3PAR........................................................................................................ 15
FALL 2003
3PAR PROPRIETARY
PREFACE
This white paper covers the advanced topic of 3PAR Thin Provisioning. It is recommended the readers have a good familiarity with 3PAR InSpire Architecture and basic understanding of Thin Provisioning before reading on. A 3PAR Account Executive or Systems Engineer can provide a copy of these primers. Alternatively, a copy of Thin Provisioning white paper can be obtained from 3PARs website (www.3par.com/products/prodlib.html) and a copy of the Architecture white paper can be requested by clicking on send more info.
FALL 2003
3PAR PROPRIETARY
I NT RO DUCT IO N
3PAR Thin Provisioning offers a simple solution to the problem of unused allocated capacity. conceivably needed over its lifetime. accordance with application writes. This white paper provides a technical overview of 3PAR Thin Provisioning including a discussion on the capacity allocation scheme and Thin Provisioning control mechanisms and alerts. recommendations on best practices for taking maximum advantage of Thin Provisioning. It concludes with Thin
Provisioning allows IT departments to safely allocate to an application as much virtual logical capacity as Meanwhile, physical capacity is drawn from a common pool of purchased storage on an as-needed basis. That is, physical capacity is drawn from the pool in direct
FALL 2003
3PAR PROPRIETARY
Volumes can be sized precisely and not according to large arbitrary increments. The chunklets fine-grained nature also enhances performance for all applications, regardless of their capacity requirements, by allowing distribution of chunklets across scores, or even hundreds of disks. Complete system access to every chunklet means no pockets of inaccessible storage. The second level of mapping associates chunklets with Logical Disks (LDs). This association allows logical devices to be created with template properties based upon RAID characteristics and the location of chunklets across the system. LDs can be tailored to meet a variety of cost, capacity, performance, and availability characteristics, depending upon the service levels required. In addition, the first and second level mappings taken together serve to parallelize work massively across disks and their Fibre Channel connections. The third level of mapping associates traditional Virtual Volumes (VVs) with multiple LDs. VVs are virtual capacity representations that are ultimately exported to hosts and applications. A traditional base VV consists of three separate spaces that are mapped to LDs: User Space represents the size of the Virtual Volume seen by a host to which the Virtual Volume has been exported as a Virtual LUN. Snapshot Data (SD) Space used for copy-on-write data space created by all the snapshots Snapshot Administration (SA) Space used for the mapping structure for all the snapshots
FALL 2003
3PAR PROPRIETARY
For traditional VVs, the user space is 100% pre-mapped to the underlying LDs and ultimately to chunklets (i.e. a 10GB base VV requires a dedicated 10GB user space). Though changes may be made subsequent to creation (for example, to optimize the chunklet location), a full mapping exists at all times for all underlying LDs of a base VV. Underlying chunklets and LDs (or portion of LDs) are thus pre-dedicated to a given VV, regardless of how much has been written to that VV. 3.2 3PAR Thin Provisioning Volume Management
3PAR Thin Provisioning Volume Management removes the pre-dedication of physical capacity. It builds on the 3PAR traditional volume management, but adds an intermediate function, known as a Common Provisioning Group. and the LD layer. where The CPG Unlike VVs are function sits between the VV layer traditional 3PAR virtual volume management backed 100% by LDs, a CPG effectively creates LDs from free chunklets on an as-needed basis. A CPG then maintains mappings from its owned LDs to VVs that have been associated with it. A base VV that depends on a CPG is known as a Thin Provisioned Virtual Volume (TPVV). Note that just as with traditional VV management, there is still massive parallelism of work over system resources, with chunklets distributed across scores, or even hundreds of disks. 3.2.1 Common Provisioning Groups
As discussed above, a Common Provisioning Group (CPG) is a group of LDs with an associated mechanism to automatically provision logical capacity to the Snapshot Administration and Snapshot Data spaces for associated Thin Provisioned Virtual Volumes or traditional base Virtual Volumes. It consists of two disjoint sets of LDs one set of LDs for SA spaces and another set of LDs for SD spaces. Key attributes of CPGs include: Auto Growth. By default, a CPG is configured to create new LDs when the available LD space falls below the configured grow size. The initial buffer pool of LDs starts off at a fraction of the exported capacity of mapped VVs and grows over time as needed. Effectively logical capacity growth tracks the growth in actual used capacity, allowing customers to purchase and install physical capacity as needed over time. Alternatively, auto-growth of LDs can be disabled and unused LDs can be manually added to a CPG to limit available logical capacity to a fixed pool.
FALL 2003
3PAR PROPRIETARY
Capacity Pooling. CPGs enable shared access to pooled logical capacity. Instead of prededicating LDs, however small or large, to traditional VVs, a CPG allows multiple TPVVs and snapshot space of normal VVs to share a buffer pool of LDs. When the SA or SD space for an associated TPVV or a normal VV are close to running out of space, the SA or SD space grows automatically by mapping new regions from LDs in the CPG (on each node). So, while a CPG contains dedicated LDs, pooled resources remain undedicated to TPVVs or normal VVs until needed.
3.2.2
Virtual capacity is represented to host servers and applications using Virtual Volumes (VVs).
traditional VVs for which the user space is 100% pre-mapped to the underlying LDs, a Thin Provisioned VV (TPVV) has no user space. Instead, the user space of base TPVVs is mapped on demand to the SD space on a copy-on-write basis (just like snapshot data). Thus, the physical storage space allocated to a TPVV may be much less than its virtual size (the size of the LUN as seen from the host). The SA and SD spaces of a TPVV are always associated with a CPG and automatically grow from space on LDs within the CPG. TPVVs behave like traditional VVs the differences are transparent to the host. TPVVs can serve as base volumes for Virtual Copies, Full Copies, or Remote Copies. As with traditional VVs, application-tailored TPVVs are created and exported to hosts in a just a few seconds.
FALL 2003
3PAR PROPRIETARY
3.2.3
Physical Disks
broken into Chunklets (256MB each)
Logical Disk Mapped LD Space Mapped LD Space Written data less than allocated TPVV LD capacity
Logical Disk
4 GB
Logical Disk Logical Disk
16 KB pages
Note beginning in InForm OS Release 2.1.1, the allocation scheme will change as follows: Minimum TPVV SD space allocation will change from 4GB to 256 MB (per node) CPGs will auto-grow LD capacity when unallocated LD space falls below three-quarter the configured growth increment
FALL 2003
3PAR PROPRIETARY
upon TPVV creation. Subsequent allocations driven by actual usage of allocated capacity will be adaptive the allocation amount will vary based on the rate of capacity consumption. By default, an allocation of 256 MB (per node) is mapped from the CPG unless the last LD allocation amount is consumed within one minute. Anticipating a quick rate of storage consumption, subsequent LD space allocations will grow progressively by 256 MB (per node) up to the maximum of 1 GB (per node). As the TPVV exported size or allocation limit is reached, the last allocation will map 256 MB (per node) over TPVV exported size to ensure that full exported TPVV address space is usable. Base TPVV Space Mapping Unlike a standard VV, a TPVV has no user space that is premapped to LDs and ultimately to chunklets. Instead, the user space of a TPVV is segmented into 16 KB pages, which are mapped on host writes to the TPVV SD space. The fine granularity of this mapping optimizes capacity usage.
3.2.4
Multiple control mechanisms are available and configurable to enable alerts that notify storage administrators of important events.
3.2.4.1 Allocation Warning
Allocation warning provides a mechanism for warning storage administrators when a specified logical capacity threshold is reached. An allocation warning can be specified independently for CPGs and TPVVs: CPG Allocation Warning For a CPG there are two different warning limits depending on whether CPG auto-grows or whether auto-grow is disabled: Allocation Warning Limit (using the aw option on createcpg or setcpg commands) If the used SD space exceeds this limit (as a percentage of total SD space), an alert is generated. This limit is useful mainly for CPGs for which auto-grow is disabled. SD Grow Warning Limit (using the sdgw option on createcpg or setcpg commands) Under default auto-grow configuration, an alert is generated if the aggregate size of the SD LDs exceeds this limit.
3.2.4.2
TPVV Allocation Warning An alert is generated if the SD space of the TPVV exceeds the allocation warning point (specified as percent of TPVV size).
Allocation Limit
Allocation Limit provides a control mechanism to pre-determine the maximum consumption of logical capacity. An allocation limit can be specified independently for CPGs and TPVVs: CPG Allocation Limit Once reached, the set of SD LDs in the CPG is not allowed to grow beyond the configured limit. New application writes to TPVVs mapped to the CPG receive a write failure once the existing SD LDs in the CPG become filled up. The write failures persist until the CPG allocation limit is raised. TPVV Allocation Limit - Once reached, the SD space of a TPVV is not allowed to exceed the allocation limit (specified as a percent of TPVV size) and new application writes fail.
FALL 2003
3PAR PROPRIETARY
3.2.4.3
Beginning with InForm OS Release 2.1.1, a history of used and free CPG space will be available.1 The InForm OS samples CPGs and the space available to the CPGs for growth once per day. This history is stored in a table in the Admin VV and can be displayed using the hist option in the showspace and showcpg commands. Up to 365 entries of history are stored. An alert is automatically generated if the sampled available free space for a CPG falls below the point at which the CPG cannot grow to either the CPG warning limit or the CPG allocation limit.
3.2.4.4 Used Physical Capacity Alerts
As available physical capacity across the 3PAR InServ Storage Server is utilized by traditional VVs and/or TPVVs, multiple pre-configured alerts are generated that provide information about used physical capacity as a percent of total system capacity. These alerts in conjunction with available free space alerts serve as an advance warning to the storage administrator to plan for and add necessary physical capacity. In the unlikely scenario that effective physical capacity becomes used, the 3PAR InServ Storage Server naturally prevents new writes from occurring until more capacity is added. These control mechanisms and alerts combined with various alert delivery mechanisms (3PAR InForm CLI, 3PAR InForm GUI, SNMPv2 Traps, and email/page from 3PAR Central) enable storage administrators to manage 3PAR Thin Provisioning in the way that suites them.
All the VVs associated with a CPG allocate space from a shared pool of LDs. There is no way for a storage administrator to explicitly specify the use of a specific LD within a CPG to a particular space allocation. When auto-grow is used, the LDs are created using the uniform LD characteristics (configurable at CPG creation or once CPG already exists). So VVs associated with a single CPG should require similar LD characteristics. For VVs that require different LD characteristics use different CPGs. For example: 4.2.2 Use a different CPG for RAID 1 VVs and RAID 5 VVs. Use a different CPG for VVs restricted to nodes 0,1 and for VVs restricted to nodes 2,3. Use different CPGs for VVs for which it is desirable to use different disks to minimize interaction with each other for performance reasons.
VVs in the same CPG can share the same LD. It is not desirable to have too many VVs sharing a single LD for two reasons: In the unlikely event that the LD is damaged (due to multiple simultaneous disk failures for example) all the VVs associated with the LD will be unavailable. Performance of the VVs will suffer from too much interleaving between VVs.
In consideration of these factors, it is recommended that no more than 32 VVs be associated with a single CPG.
FALL 2003
3PAR PROPRIETARY
11
FALL 2003
3PAR PROPRIETARY
12
available to other CPGs. It is recommended that storage administrators implement the following strategies to stay abreast of available free space: 1) Set the CPG allocation and warning limits; 2) Monitor free space reduction rate using the command: showspace cpg cpgname hist; 3) Monitor available free space alerts; and 4) Maintain a buffer stock of physical capacity.
4.8 Use the allocation warning and allocation limit for TPVVs
When multiple TPVVs share a CPG, unexpected growth of one VV can limit the ability of other VVs to grow. The allocation warning and allocation limit for the VVs can be used to limit the growth of individual VVs.
FALL 2003
3PAR PROPRIETARY
13
SUMMARY
3PAR Thin Provisioning offers Dedicate-on-Write as opposed to Dedicate-on-Allocation capacity provisioning, allowing logical capacity growth to track the growth in actual used capacity. Dedicate-on-Write provisioning is enabled by two key provisioning features - Common Provisioning Groups (CPGs) and Thin Provisioned Virtual Volumes (TPVVs). CPGs automatically create Logical Disks (LDs) and provision capacity on a metered basis to associated TPVVs and snapshot space of traditional Virtual Volumes (VVs). TPVVs export logical capacity to hosts and map application writes in fine-grained increments to allocated logical capacity. While the 3PAR InForm OS presents a simple, virtualized interface for provisioning, some upfront and on going planning and management are required. Available control mechanisms and alerts allow storage Moreover, recommended best administrators to manage Thin Provisioning in a way that suites them. demand.
practices allow storage administrators to take maximum advantage of capacity pooling and allocation on
FALL 2003
3PAR PROPRIETARY
14
ABO UT 3PAR
3PAR is the leading provider of a new category of enterprise storage arrays called Utility Storage that offers a highly scalable, efficient, and controllable information infrastructure. 3PARs tightly tuned system of software, hardware, and mission-critical service allows customers to securely consolidate storage, centralize information, and reduce total cost of ownershipsimply. been serving enterprise customers since 2002. The companys corporate headquarters is located at 4209 Technology Drive, Fremont, CA 94538. Phone: 510-413-5999, fax: 510-354-3070, email: info@3pardata.com <mailto:info@3pardata.com>, Web site: www.3par.com <http://www.3par.com>. Well positioned with key strategic investors including Oracle, Sun, and VERITAS, 3PAR has been operating successfully for the past four years and has
2002 2003 3PARdata, Inc. All rights reserved. 3PARdata, the 3PAR logo, 3PAR, and Serving Information are all trademarks of 3PARdata, Inc.
tp-arch-wp-01.0
FALL 2003
3PAR PROPRIETARY
15