This topic describes how SAN File System automates the placement
of newly created files into storage pools using policies and rules.
Policies and the rules that they contain are used to automatically assign
files to specific storage pools.
Policies
A policy is a set of rules that
determine where specific files are placed based on the file's attributes.
You can define any number of policies, but only one policy can be active at
a time. If you switch from one policy to another or make changes to a policy,
that action has no effect on existing files in the global namespace. The new
or changed policy is effective only on newly created files in SAN File System.
Moving a file does not cause the policy to be applied.
A policy can
contain any number of rules. There is no limit to the size of a policy.
SAN
File System performs error checking for policies in the following phases:
When you creates a new policy, the master metadata server checks the basic
syntax of all the rules in the policy.
When you activate the policy, the master metadata server checks all references
to filesets and storage pools. If a rule in the policy refers to a fileset
or storage pool that does not exist, the policy is not activated and an error
is returned.
When a new file is created by a client, the rules in the
active policy are evaluated in order. If an error is detected, the metadata
server responsible for creating the file logs an error, skips all subsequent
rules, and assigns the file to the default storage pool. If
a default pool does not exist, the file is not created and the metadata server
returns an error to the client application.
If your environment is set up in a non-uniform zone configuration
(in which clients cannot access all volumes), you need to ensure that the
rules in the active policy place files into volumes that are accessible to
the clients that use them.
Tip: When SAN File System is first installed, a default policy
is created and remains active until you create and activate a new one. The default policy assigns all files to the default storage pool.
Although the default storage pool is created when SAN File System is first
started, you must assign volumes to it before it can be used. If a user or
application on a SAN File System client attempts to create new files that
would be assigned to the default storage pool, and there are no volumes assigned
to it, the user or application receives No Space errors.
Rules
A rule is an SQL-like statement that
tells the metadata server to place the data for a file in a specific storage
pool if the file meets specific criteria. A rule can apply to any file being
created or only to files being created within a specific fileset or
group of filesets.
Rules can specify any of these conditions,
which when matched, causes that rule to be applied:
Fileset
Filename or extension
Date and time when the file is created
User ID and Group ID on UNIX® clients
SAN File System evaluates rules in order, from
top to bottom, as they appear in the active policy. The
first rule that matches determines the file's placement. In other words, when
a client creates a file, SAN File System scans the list of rules in the active
policy to determine which rule applies to the file. When a rule applies to
the file, SAN File System stops processing the rules and assigns the file
to the appropriate storage pool. If no rule applies, the file is assigned
to the default storage pool.
Tip:
After a file has been created, you can check its storage-pool assignment
from the administrative command-line interface using the statfile command.
You can use the statpolicy command from the
administrative command-line interface to view the statistics about the policy
rules.
If you base your policies on user IDs, be aware of the manner in which
the UNIX tar command restores files from backup. During the
restore, a file is first created from backup with the user ID of the performer
of the backup and is then changed to the user ID of the original creator of
the file. With SAN File System, the policy is applied to the file at creation,
so the policy applies to the user ID of the performer of the backup rather
than to the user ID of the original file creator.
During a restore or migration, a rule that uses the creation
date as the placement criteria will assign a file based on the time of the
restore or migration, not the original creation time, and a rule that uses
a user ID or group ID as the placement criteria will assign a file based on
the user ID or group ID of the restore or migration. Therefore, do not use
creation time, user ID or group ID to place file.
For detailed information about creating policies and rules,
see the related topics below.