After the VM Storage Policies interface is populated with the appropriate data, you can start defining your storage policies. A basic element of a VM storage policy is a rule. Each individual rule is a statement that describes a single requirement for virtual machine storage and data services. Within the policy, rules are grouped in collections of rules. Two types of collections exist, regular rule sets and common rule sets.

Regular Rule Sets
Regular rule sets are datastore-specific. Each rule set must include placement rules that describe requirements for virtual machine storage resources. All placement rules within a single rule set represent a single storage entity. These rules can be based on tags or storage capabilities. In addition, the regular rule set can include optional storage policy components that describe data services to provide for the virtual machine.

To define the storage policy, one regular rule set is required. Additional rule sets are optional. A single policy can use multiple sets of rules to define alternative storage placement parameters, often from several storage providers.

Common Rule Sets
Unlike datastore-specific regular rule sets, common rule sets do not define storage placement for the virtual machine, and do not include placement rules. Common rule sets are generic for all types of storage and do not depend on the datastore. These rule sets activate data services for the virtual machine. Common rule sets include rules or storage policy components that describe particular data services, such as encryption or replication.
Table 1. Structure of a VM Storage Policy
Common Rules Regular Rule Sets
Rules or predefined storage policy components to activate data services installed on ESXi hosts. For example, replication by I/O filters. Placement rules that describe requirements for virtual machine storage resources. For example, Virtual Volumes placement.
Rules or predefined storage policy components that activate data services provided by storage. For example, caching by Virtual Volumes.

Relationships Between Rules and Rule Sets

The boolean operator OR defines the relationship between the regular rule sets within the policy. The AND operator defines the relationship between all rules within a single rule set. The policy can contain only common rules, or only datastore-specific rule sets, or both. If common rules are not present, meeting all the rules of a single regular rule set is sufficient to satisfy the entire policy. If common rules are present, the policy matches the datastore that satisfies the common rules and all rules in one of the regular rule sets.

The boolean operator OR defines the relationship between regular rule sets within a policy. AND defines the relationship between all rules within a single rule set.