SwiftStack Controller On-Premises Data Locations

This section only applies to SwiftStack Controller On-Premises installations and is not relevant for SwiftStack customers using SwiftStack Controller As-a-Service.

The SwiftStack Controller On-Premises stores data in various subdirectories under /opt/ss/, depending on the type of data. There are three main places where the data is stored:

  • Local filesystem of the Controller
  • PostgreSQL database running on the Controller
  • OpenStack Swift cluster

Controller application code

The controller application code is stored under /opt/ss/deploy/current. This is a symbolic link pointing to a directory like /opt/ss/deploy/releases/DATE_STRING, which is unique to each version of the swiftstack-controller RPM.

Controller application configuration

Most controller configuration resides in the PostgreSQL database, but various controller services also get their configuration from files under /opt/ss/etc/

Metrics data

All the cluster metrics data coming from the nodes goes into the local filesystem in /opt/ss/var/lib/carbon, where it gets collected per node UUID under the whisper directory. The metrics data on the nodes is continuously collected and aggregated every 30 seconds and streamed up to the Controller.

Cluster rings and builder configs

The data used to create the cluster rings reside in the PostgreSQL database. The rings get re-computed and generated every time a change is made to a node or device (disk) in the cluster. The builder configuration files for each cluster UUID are located under /opt/ss/builder_configs.

Utilization data

The raw utilization data for storage, as well as bandwidth used is stored in the Swift cluster itself under various containers within a .utilization account. The raw utilization data is stored on the controller under /opt/ss/var/lib/ss-utilization until it is processed and the utilization_finalization_days has passed.

Utilization aggregation data

Aggregation of usage data is is stored in the Controller's PostgreSQL database. The aggregated data can be queried by using the SwiftStack Controller API, which provides detailed information about storage and bandwidth consumption for Swift accounts.

User data for API

User (account) data resides in the PostgreSQL database and can be queried and managed through the SwiftStack Controller API.