In general, VxFS works best if the percentage of free space
in the file system does not get below 10 percent. This is because
file systems with 10 percent or more free space have less fragmentation
and better extent allocation. Regular use of the df_vxfs(1M) command to monitor free space is desirable.
Full file systems may have an adverse effect on file system performance.
Full file systems should therefore have some files removed, or should
be expanded (see fsadm_vxfs(1M) for a description of online file system expansion).
Monitoring Fragmentation |
 |
Fragmentation reduces performance and availability. Regular
use of fsadm's fragmentation reporting and reorganization
facilities is therefore advisable.
The easiest way to ensure that fragmentation does not become
a problem is to schedule regular defragmentation runs from cron.
Defragmentation scheduling should range from weekly (for frequently used
file systems) to monthly (for infrequently used file systems). Extent fragmentation
should be monitored with fsadm_vxfs(1M) or the -o s options of df_vxfs(1M). There are three factors which can be used
to determine the degree of fragmentation:
percentage of free space in extents
of less than eight blocks in length
percentage of free space in extents of less than
64 blocks in length
percentage of free space in extents of length 64
blocks or greater
An unfragmented file system will have the following characteristics:
less than 1 percent of free space
in extents of less than eight blocks in length
less than 5 percent of free space in extents of
less than 64 blocks in length
more than 5 percent of the total file system size
available as free extents in lengths of 64 or more blocks
A badly fragmented file system will have one or more of the
following characteristics:
greater than 5 percent of free space
in extents of less than 8 blocks in length
more than 50 percent of free space in extents of
less than 64 blocks in length
less than 5 percent of the total file system size
available as free extents in lengths of 64 or more blocks
The optimal period for scheduling of extent reorganization
runs can be determined by choosing a reasonable interval, scheduling fsadm runs at the initial interval, and running the
extent fragmentation report feature of fsadm before and after the reorganization.
The "before" result is the degree of fragmentation
prior to the reorganization. If the degree of fragmentation is approaching
the figures for bad fragmentation, then the interval between fsadm runs should be reduced. If the degree of fragmentation
is low, the interval between fsadm runs can be increased.
The "after" result is an indication of how
well the reorganizer is performing. The degree of fragmentation
should be close to the characteristics of an unfragmented file system.
The file system may be a candidate for expansion. (Full file systems
tend to fragment and are difficult to defragment.) It is also possible
that the reorganization is not being performed at a time during
which the file system in question is relatively idle.
Directory reorganization is not nearly as critical as extent reorganization,
but regular directory reorganization will improve performance. It
is advisable to schedule directory reorganization for file systems
when the extent reorganization is scheduled. The following is a sample
script that is run periodically at 3:00 A.M. from cron for a number of file systems:
outfile=/tmp/fsadm_out.&212#;/bin/date +'%m%d'&212#; for i in /home /home2 /project /db do /bin/echo "Reorganizing $i" /bin/timex fsadm -F vxfs -e -E -s $i /bin/timex fsadm -F vxfs -s -d -D $i done > $outfile 2>&1
|