QuantaStor Configuration Files: Difference between revisions

From OSNEXUS Online Documentation Site
Jump to navigation Jump to search
m Point at the renamed Encryption Bypass page directly rather than through the redirect - the feature is not Ceph-specific
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
QuantaStor has a series of configuration files that support the platform and make it customizable by our engineering and support team (usually to support new hardware) without requiring code level changes. Configuration files are stored in /opt/osnexus/quantastor/conf and most can be overridden using a customized version of the file stored in /var/opt/osnexus/quantastor/conf.
[[Category:admin_guide]]
QuantaStor keeps its own configuration files in <code>/opt/osnexus/quantastor/conf</code>. They let OSNEXUS engineering and support adapt the platform -- most often to support new hardware -- without a code change, and a few of them expose settings an administrator will legitimately want to review.
 
'''QuantaStor's own configuration files carry the <code>qs_</code> prefix.''' Anything else in that directory belongs to a third-party agent (the Telegraf and Zabbix templates, for instance) or is a template rather than live configuration. General Linux service files that QuantaStor writes into -- <code>smb.conf</code>, <code>multipath.conf</code>, <code>ceph.conf</code>, <code>sysctl.conf</code> and others -- are deliberately not covered here; QuantaStor manages them and they should not be hand-edited.
 
''(Note: most of these files are only to be changed with guidance from OSNEXUS support. They exist for hardware enablement and for exceptional cases, and an edit that survives an upgrade needs the override mechanism below.)''
 
== How QuantaStor finds these files ==
 
The core service registers every configuration file it uses with an internal registry, which resolves each one at service start. That indirection is what makes overrides and per-distribution paths possible, and it means '''the path a file resolves to is not always the path you expect''' -- several files carry a legacy location that is still honoured.
 
Resolution is first-existing-wins, so an override is found before the shipped copy:
 
<pre style="font-size: smaller">
/var/opt/osnexus/quantastor/conf/<name>            <- override, survives upgrade
/var/opt/osnexus/quantastor/conf/<name>.override
/opt/osnexus/quantastor/conf/<name>.override
/opt/osnexus/quantastor/conf/<name>                <- shipped, replaced on upgrade
</pre>
 
'''Never edit the shipped copy.''' The files under <code>/opt/osnexus/quantastor/conf</code> are not package configuration files in the packaging sense, so an upgrade replaces them without prompting and without saving your changes. Put customisations in <code>/var/opt/osnexus/quantastor/conf</code> instead.
 
'''An override replaces the file; it does not merge with it.''' Copy the shipped file, edit the copy, and keep every entry you still want -- for several of these files an entry that is absent from the file in force is removed from the system, not left at its previous value.
 
== Configuration file reference ==
 
The descriptions below come from the service's own registry, so they track the product rather than this page.
 
{| class="wikitable"
! File !! Purpose
|-
| <code>qs_containerservice.conf</code> || Configuration file for container service definitions.
|-
| <code>qs_dbconnection.conf</code> || Controls SQLite DB connection settings for QuantaStor core service.
|-
| <code>qs_device_blocklist.conf</code> || List of devices that should be excluded from discovery such as 0 byte SD sticks and such.
|-
| <code>qs_device_link.conf</code> || List of udev optimal path priorities.
|-
| <code>qs_enclosure_layout.conf</code> || List of supported JBOD and Server enclosures with slot mapping information.
|-
| [[Encryption Bypass|<code>qs_encryption_bypass.conf</code>]] || List of devices that should be excluded from encryption checks.
|-
| <code>qs_endpoint_security.conf</code> || Configuration parameters for endpoint security settings.
|-
| <code>qs_es_pool_profile.conf</code> || ''Not present in the service configuration registry -- purpose not yet established.''
|-
| <code>qs_eventmanager.conf</code> || Event manager retention bounds: pull-cache max age, count and byte caps.
|-
| <code>qs_firmware_check.conf</code> || Firmware check list to ensure system isn't using devices/media running bad/incompatibile firmware.
|-
| <code>qs_global_namespaces.conf</code> || Per-pool VIF scoping for global namespace (Network Share Namespace) SMB/DFS redirects.
|-
| <code>qs_grid_sync.conf</code> || Configuration parameters for grid sync concurrency controls and event broadcaster basket-cache retention bounds.
|-
| <code>qs_hwadapter.conf</code> || configuration settings for the hwadapter manager and the individual hwadapters.
|-
| [[qs_io_profiles.conf|<code>qs_io_profiles.conf</code>]] || List of disk IO profiles which may be applied to Storage Pools <small>(also honoured at its legacy path <code>/etc/</code>)</small>
|-
| <code>qs_ipmi.conf</code> || Mapping information for IPMI discovered fans, power supplies, and system temperature information.
|-
| <code>qs_keyvault_modules.conf</code> || ''Not present in the service configuration registry -- purpose not yet established.''
|-
| <code>qs_loadbalancer.conf</code> || Configuration settings for load balancers.
|-
| <code>qs_nvme_adapter.conf</code> || Customizable settings for NVMe server hardware integration/adapter.
|-
| <code>qs_nvme_initiator.conf</code> || Customizable settings for NVMeoF client/initiator connection options.
|-
| <code>qs_nvme_slotmap.conf</code> || NVME Device Slot Mapping configuration file.
|-
| <code>qs_object_settings.conf</code> || Configuration parameters for object storage settings such as s5cmd bucket delete options.
|-
| <code>qs_rbac_deprecated_types.conf</code> || Deprecated object types to be removed from RBAC system.
|-
| <code>qs_replication.conf</code> || Configuration parameters for replication manager settings.
|-
| <code>qs_service_ports.conf</code> || Configuration file for monitoring service ports via osn__clientConnections API.
|-
| <code>qs_services_firewall.conf</code> || Configuration file to define the port numbers for different protocols.
|-
| <code>qs_shareusage.conf</code> || Configuration parameters for network share user/group usage tracking.
|-
| <code>qs_smartmanager.conf</code> || Configuration parameters for SMART monitoring error count thresholds.
|-
| <code>qs_smb_audit_defaults.conf</code> || Default conf values for SMB vfs full_audit plugin.
|-
| <code>qs_systemprofiles.conf</code> || Pre-canned Storage System Tuning Optimization profiles loaded at service startup.
|-
| [[qs_systemtunables.conf|<code>qs_systemtunables.conf</code>]] || Configuration parameters for Storage System Tuning settings.
|-
| <code>qs_target_blocklist.conf</code> || List of NVMeoF/iSCSI targets that should be excluded from discovery such as in-band management devices.
|-
| <code>qs_telemetry.conf</code> || Telemetry configuration settings.
|-
| <code>qs_volume_profiles.conf</code> || List of storage volume profiles which are used to optimize volumes for specific use cases like virtualization and backups.
|-
| <code>qs_vsftpd.conf</code> || ''Not present in the service configuration registry -- purpose not yet established.''
|}
 
== Files not in the registry ==
 
Three <code>qs_</code> files in the directory are not registered with the service and their purpose is not yet established: <code>qs_es_pool_profile.conf</code>, <code>qs_keyvault_modules.conf</code> and <code>qs_vsftpd.conf</code>. Do not assume an unregistered file is read by anything.
 
The directory also holds items that are not live configuration: log-rotation templates ending <code>.dist</code>, which are instantiated into <code>/etc/logrotate.d</code>; DKMS manifests ending <code>.yaml</code>; an example container-handler file ending <code>.example</code>; and the Telegraf and Zabbix templates belonging to those third-party agents.
 
== Notes on individual files ==
 
These notes predate the per-file pages and are kept until each file has its own. Where a file already has a page, that page is authoritative.


==qs_ceph_defaults.conf==
==qs_ceph_defaults.conf==
Line 15: Line 123:
==qs_nvme_initiator.conf==
==qs_nvme_initiator.conf==
Some NVMeoF system vendors require special options to be applied at the time of NVMeoF connection in order for the device to work optimally with QuantaStor.  One common example is customizing the number of IO queues:
Some NVMeoF system vendors require special options to be applied at the time of NVMeoF connection in order for the device to work optimally with QuantaStor.  One common example is customizing the number of IO queues:
<pre>
<pre style="font-size: smaller">
--nr-io-queues=8
--nr-io-queues=8
</pre>
</pre>
Line 23: Line 131:


==qs_cloudcontainers.conf==
==qs_cloudcontainers.conf==
Custom settings to adjust how we use rclone for mounting object storage as local NAS storage.  These settings should generally not be modified but can be helpful for performance tuning.
Custom settings to adjust how rclone is used for mounting object storage as local NAS storage.  These settings should generally not be modified but can be helpful for performance tuning.


==qs_device_blocklist.conf==
==qs_device_blocklist.conf==
Line 38: Line 146:


==qs_nvme_adapter.conf==
==qs_nvme_adapter.conf==
NVMe devices effectively connect directly to the PCIe bus of a server motherboard rather than through an HBA like one would see with SAS and SATA media.  QuantaStor creates a synthetic virtual NVMe Adapter on NVMe based servers which can then be associated with a PCIe NVMe slotmap.  These in turn are mapped to an enclosure layout so that QuantaStor is able to support newer NVMe based servers and JBOFs with the same level of device correlation as we get for SAS/SATA.
NVMe devices effectively connect directly to the PCIe bus of a server motherboard rather than through an HBA like one would see with SAS and SATA media.  QuantaStor creates a synthetic virtual NVMe Adapter on NVMe based servers which can then be associated with a PCIe NVMe slotmap.  These in turn are mapped to an enclosure layout so that QuantaStor is able to support newer NVMe based servers and JBOFs with the same level of device correlation available for SAS/SATA.


==qs_nvme_slotmap.conf==
==qs_nvme_slotmap.conf==
Line 44: Line 152:


==qs_volume_profiles.conf==
==qs_volume_profiles.conf==
This contains a list of configuration settings as 'profiles' for Storage Volumes that can be applied as a Storage Volume Profile when a new Storage Volume is created or modified.
== Related pages ==
* [[QuantaStor Touch Files]] -- the companion registry of <code>tf_*</code> markers, also support-guided
* [[Storage System Optimization]] -- the dialog that edits the system tunables
* [[Performance Tuning]] -- the I/O and volume profiles these files define
* [[QuantaStor Shell Utilities]] -- the command-line tools that read and write several of these
* [[Upgrade Manager]] -- why an edit to a shipped file does not survive
----
<small>''Verified against QuantaStor 6.9.0.''</small>

Latest revision as of 05:58, 4 September 2026

QuantaStor keeps its own configuration files in /opt/osnexus/quantastor/conf. They let OSNEXUS engineering and support adapt the platform -- most often to support new hardware -- without a code change, and a few of them expose settings an administrator will legitimately want to review.

QuantaStor's own configuration files carry the qs_ prefix. Anything else in that directory belongs to a third-party agent (the Telegraf and Zabbix templates, for instance) or is a template rather than live configuration. General Linux service files that QuantaStor writes into -- smb.conf, multipath.conf, ceph.conf, sysctl.conf and others -- are deliberately not covered here; QuantaStor manages them and they should not be hand-edited.

(Note: most of these files are only to be changed with guidance from OSNEXUS support. They exist for hardware enablement and for exceptional cases, and an edit that survives an upgrade needs the override mechanism below.)

How QuantaStor finds these files

The core service registers every configuration file it uses with an internal registry, which resolves each one at service start. That indirection is what makes overrides and per-distribution paths possible, and it means the path a file resolves to is not always the path you expect -- several files carry a legacy location that is still honoured.

Resolution is first-existing-wins, so an override is found before the shipped copy:

/var/opt/osnexus/quantastor/conf/<name>            <- override, survives upgrade
/var/opt/osnexus/quantastor/conf/<name>.override
/opt/osnexus/quantastor/conf/<name>.override
/opt/osnexus/quantastor/conf/<name>                <- shipped, replaced on upgrade

Never edit the shipped copy. The files under /opt/osnexus/quantastor/conf are not package configuration files in the packaging sense, so an upgrade replaces them without prompting and without saving your changes. Put customisations in /var/opt/osnexus/quantastor/conf instead.

An override replaces the file; it does not merge with it. Copy the shipped file, edit the copy, and keep every entry you still want -- for several of these files an entry that is absent from the file in force is removed from the system, not left at its previous value.

Configuration file reference

The descriptions below come from the service's own registry, so they track the product rather than this page.

File Purpose
qs_containerservice.conf Configuration file for container service definitions.
qs_dbconnection.conf Controls SQLite DB connection settings for QuantaStor core service.
qs_device_blocklist.conf List of devices that should be excluded from discovery such as 0 byte SD sticks and such.
qs_device_link.conf List of udev optimal path priorities.
qs_enclosure_layout.conf List of supported JBOD and Server enclosures with slot mapping information.
qs_encryption_bypass.conf List of devices that should be excluded from encryption checks.
qs_endpoint_security.conf Configuration parameters for endpoint security settings.
qs_es_pool_profile.conf Not present in the service configuration registry -- purpose not yet established.
qs_eventmanager.conf Event manager retention bounds: pull-cache max age, count and byte caps.
qs_firmware_check.conf Firmware check list to ensure system isn't using devices/media running bad/incompatibile firmware.
qs_global_namespaces.conf Per-pool VIF scoping for global namespace (Network Share Namespace) SMB/DFS redirects.
qs_grid_sync.conf Configuration parameters for grid sync concurrency controls and event broadcaster basket-cache retention bounds.
qs_hwadapter.conf configuration settings for the hwadapter manager and the individual hwadapters.
qs_io_profiles.conf List of disk IO profiles which may be applied to Storage Pools (also honoured at its legacy path /etc/)
qs_ipmi.conf Mapping information for IPMI discovered fans, power supplies, and system temperature information.
qs_keyvault_modules.conf Not present in the service configuration registry -- purpose not yet established.
qs_loadbalancer.conf Configuration settings for load balancers.
qs_nvme_adapter.conf Customizable settings for NVMe server hardware integration/adapter.
qs_nvme_initiator.conf Customizable settings for NVMeoF client/initiator connection options.
qs_nvme_slotmap.conf NVME Device Slot Mapping configuration file.
qs_object_settings.conf Configuration parameters for object storage settings such as s5cmd bucket delete options.
qs_rbac_deprecated_types.conf Deprecated object types to be removed from RBAC system.
qs_replication.conf Configuration parameters for replication manager settings.
qs_service_ports.conf Configuration file for monitoring service ports via osn__clientConnections API.
qs_services_firewall.conf Configuration file to define the port numbers for different protocols.
qs_shareusage.conf Configuration parameters for network share user/group usage tracking.
qs_smartmanager.conf Configuration parameters for SMART monitoring error count thresholds.
qs_smb_audit_defaults.conf Default conf values for SMB vfs full_audit plugin.
qs_systemprofiles.conf Pre-canned Storage System Tuning Optimization profiles loaded at service startup.
qs_systemtunables.conf Configuration parameters for Storage System Tuning settings.
qs_target_blocklist.conf List of NVMeoF/iSCSI targets that should be excluded from discovery such as in-band management devices.
qs_telemetry.conf Telemetry configuration settings.
qs_volume_profiles.conf List of storage volume profiles which are used to optimize volumes for specific use cases like virtualization and backups.
qs_vsftpd.conf Not present in the service configuration registry -- purpose not yet established.

Files not in the registry

Three qs_ files in the directory are not registered with the service and their purpose is not yet established: qs_es_pool_profile.conf, qs_keyvault_modules.conf and qs_vsftpd.conf. Do not assume an unregistered file is read by anything.

The directory also holds items that are not live configuration: log-rotation templates ending .dist, which are instantiated into /etc/logrotate.d; DKMS manifests ending .yaml; an example container-handler file ending .example; and the Telegraf and Zabbix templates belonging to those third-party agents.

Notes on individual files

These notes predate the per-file pages and are kept until each file has its own. Where a file already has a page, that page is authoritative.

qs_ceph_defaults.conf

This file contains a series of defaults to be written to the global section of the ceph.conf file when a new cluster is being created.

qs_cloud_providers.conf

QuantaStor supports integration of object storage with a number of public cloud service providers including Amazon S3, Azure Blob, Dropbox, Wasabi and others. This feature is accessible via the Cloud Integration section of the QuantaStor web management interface. This configuration file enables one to add new service providers and locations to the Cloud Integration system.

qs_device_link.conf

This is an internal configuration file that controls how QuantaStor prioritizes device paths generated by udev. The Linux udev system generates links to block devices and stores them in /dev/disk/by-id and other areas under /dev/disk. These links generally contain unique identifiers or serial numbers for the device within the link name so that devices can be referred to via a strong name that will not change between reboots. Some of these links are better than others and this configuration file applies weights to the different paths according to what works best for unique device identification. It should only be edited by OSNexus support and engineering but can be used to hide invalid devices and add support for media with unique udev rules.

qs_io_profiles.conf

When creating or modifying a Storage Pool there's an option to apply a performance tuning profile to the pool so that it operates optimally for specific use cases like Server Virtualization. New profiles can be added to the system via this configuration file.

qs_nvme_initiator.conf

Some NVMeoF system vendors require special options to be applied at the time of NVMeoF connection in order for the device to work optimally with QuantaStor. One common example is customizing the number of IO queues:

--nr-io-queues=8

qs_target_blocklist.conf

This file is used to hide iSCSI and NVMeoF targets from showing up in the discovered targets list of a Software Adapter. This is used to hide control device LUNs shared by 3rd party systems.

qs_cloudcontainers.conf

Custom settings to adjust how rclone is used for mounting object storage as local NAS storage. These settings should generally not be modified but can be helpful for performance tuning.

qs_device_blocklist.conf

Certain devices can show up on some server platforms which are block devices but are not suitable for use with Storage Pools. These are often internal use devices or USB storage devices and they can be masked and hidden based on their vendor / product identifiers. If you have a device that's appearing within your QuantaStor system that shouldn't be presented in the WUI this file can help hide those.

qs_enclosure_layout.conf

This is the main configuration file for adding support for new server, JBOF, and JBOD enclosures of all types. It has key information about the layout of the drive slots, vendor, and manufacture details and more. If you have new hardware that needs adding to QuantaStor it can be done by editing this file but we recommend contacting OSNexus support to get assistance with this so that the hardware can be added to our official supported HCL.

qs_hwadapter.conf

QuantaStor has internal hardware integration modules to support most of the major HBAs and RAID controllers and this configuration file indicates which version of the vendor CLI to use. HBAs are used for Storage Pool devices and RAID controllers are generally only used for boot devices.

qs_ipmi.conf

The IPMI (Intelligent Platform Management Interface) standard provides QuantaStor with server platform information about system thermals, power-supplies, fans, CPUs, and other sensors. Unfortunately the identifier tags for these different pieces of information can vary by vendor as there is very little standardization of the tags. This configuration file helps to normalize the vendors so that QuantaStor can monitor hardware from a broad spectrum of manufacturers and generations of hardware.

qs_nvme_adapter.conf

NVMe devices effectively connect directly to the PCIe bus of a server motherboard rather than through an HBA like one would see with SAS and SATA media. QuantaStor creates a synthetic virtual NVMe Adapter on NVMe based servers which can then be associated with a PCIe NVMe slotmap. These in turn are mapped to an enclosure layout so that QuantaStor is able to support newer NVMe based servers and JBOFs with the same level of device correlation available for SAS/SATA.

qs_nvme_slotmap.conf

This maps each NVMe/NVMeoF device pcie slot identifier to a drive slot identifier like 1, 2, 3, 4. Each vendor/model of server has a unique pcie slot map identifier set and this file is used to store those.

qs_volume_profiles.conf

This contains a list of configuration settings as 'profiles' for Storage Volumes that can be applied as a Storage Volume Profile when a new Storage Volume is created or modified.

Related pages


Verified against QuantaStor 6.9.0.