Managing Software Event Broker Storage
The software event broker uses a special construct called a storage-group
to store state information. The storage-group
is further subdivided into storage-elements
that allow you to customize the event broker storage resources to meet the needs of your application.
For assistance with planning and optimizing the storage configuration of your deployment, contact Solace.
Understanding the Storage-Group
The event broker maintains a significant amount of state on disk, including spooled messages, runtime configuration, and diagnostic information. This state is represented by a storage unit called a storage-group
, which is further organized into directories called storage-elements
.
The storage-group
is portable—that is, you can map a storage-group
to any storage device that meets the capacity, persistence, and performance requirements of the application. In the container filesystem, the storage-group
is mounted to /var/lib/solace
.
The amount of disk space needed for the storage-group
depends on the event broker configuration. See System Resource Requirements for more information.
We recommend that you map the storage-group
to external storage and that you use full disk encryption. For more information, see Managing Storage for Container Images.
The storage-group
consists of six storage-elements
, each of which is independently monitored and managed by the event broker. The storage-elements
are described in the table below.
Storage-Element | Purpose | Device Considerations | Mounted On |
---|---|---|---|
jail | Stores logs and configuration database backups. | Depending on the level of broker activity, the write load of this storage-element can be moderate to high. The contents of this storage-element are not necessary during upgrade but are helpful in the event support is required. |
/var/lib/solace/jail |
var | Stores the configuration database. | Typically, the write load of this storage-element is low, however, poor device throughput can lead to system instability. The contents of this storage-element must be preserved during upgrades. |
/var/lib/solace/var |
diagnostics | Storage for diagnostic information for support. | The contents of this storage-element are not necessary during upgrade but are helpful in the event support is required. |
/var/lib/solace/diagnostics |
spool | Stores spooled messages. | Broker stability and performance is directly related to device performance. The contents of this storage-element must be preserved during upgrades to prevent message loss. |
/var/lib/solace/spool |
spool-cache | Stores undelivered messages. | Broker stability and performance is directly related to device performance. The contents of this storage-element must be preserved during upgrades to prevent losing undelivered messages. |
/var/lib/solace/spool-cache |
spool-cache-backup | Stores runtime information used for recovery after system shutdown. | The contents of this storage-element are not necessary during upgrade but are helpful in the event support is required. |
/var/lib/solace/spool-cache-backup |