vxcached - resize cache volumes when required
/etc/vx/bin/vxcached [-v] [mail-address ...]
The Veritas Volume Manager cache daemon, vxcached, is invoked by the VxVM kernel to monitor the cache objects that are used by space-optimized snapshots. When usage of a cache volume by space-optimized snapshots reaches the high watermark level that has been set for the cache, vxcached automatically grows the cache volume if this is required and configured.
The -v option enables the daemon in verbose mode. If no mail addresses are given as arguments, mail is sent to root.
If the autogrow feature has been enabled on a cache object, the values of the highwatermark, autogrowby and maxautogrow attributes for the cache object determine the behavior of vxcached:
The values of the highwatermark, autogrowby and maxautogrow attributes can be set when a cache object is created using vxmake. If necessary, you can use the vxcache set command to change the values of these attributes for an existing cache.
o When cache usage reaches the high watermark value, highwatermark, (default value is 90 percent), and the new required cache size would not exceed the value of maxautogrow (default value is twice the size of the cache volume in blocks), vxcached grows the size of the cache volume by the value of autogrowby (default value is 20% of the size of the cache volume in blocks). o When cache usage reaches the high watermark value, and the new required cache size would exceed the value of maxautogrow, vxcached deletes the oldest snapshot in the cache. If there are several snapshots with the same age, the largest of these is deleted. If the autogrow feature has been disabled on a cache object: o When cache usage reaches the high watermark value, vxcached deletes the oldest snapshot in the cache. If there are several snapshots with the same age, the largest of these is deleted. If there is only a single snapshot, the snapshot is detached and marked as invalid.
The vxcached daemon is started automatically if a license for the FastResync feature is already present on the system. If you add such a license while VxVM is running, you can either start vxcached manually, or shut down and reboot the system.
Killing the vxcached process stops it from removing snapshots. The daemon can be prevented from being started by commenting out its entry in the startup script, /etc/init.d/vxvm-recover.
The vxcached daemon does not remove snapshots that are currently open, and it does not remove the last or only snapshot in the cache.
If the cache space becomes exhausted, the snapshot is detached. If this happens, the snapshot is unrecoverable and must be removed manually. Enabling the autogrow feature on the cache helps to avoid this situation occurring. However, for very small caches (of the order of a few megabytes), it is possible for the cache to become exhausted before the system has time to respond and grow the cache. In such cases, either increase the size of the cache manually, or reduce the value of highwatermark.
You can use the maxautogrow attribute to limit the maximum size to which a cache can grow. To estimate this size, consider how much the contents of each source volume are likely to change between snapshot refreshes, and allow some additional space for contingency.
vxcache(1M), vxintro(1M), vxmake(1M), vxsnap(1M)