These parameters only apply to Monitors.

use_antietcd

  • Type: boolean
  • Default: false

Enable experimental built-in etcd replacement (clustered key-value database): antietcd.

When set to true, monitor runs internal antietcd automatically if it finds a network interface with an IP address matching one of addresses in the etcd_address configuration option (in /etc/vitastor/vitastor.conf or in the monitor command line). If there are multiple matching addresses, it also checks antietcd_port and antietcd is started for address with matching port. By default, antietcd accepts connection on the selected IP address, but it can also be overridden manually in the antietcd_ip option.

When antietcd is started, monitor stores cluster metadata itself and exposes a etcd-compatible REST API. On disk, these metadata are stored in /var/lib/vitastor/mon_2379.json.gz (can be overridden in antietcd_data_file or antietcd_data_dir options). All other antietcd parameters (see here) except node_id, cluster, cluster_key, persist_filter, stale_read can also be set in Vitastor configuration with antietcd_ prefix.

You can dump/load data to or from antietcd using Antietcd anticli tool:

npm exec anticli -e http://etcd:2379/v3 get --prefix '' --no-temp > dump.json
npm exec anticli -e http://antietcd:2379/v3 load < dump.json

enable_prometheus

  • Type: boolean
  • Default: true

Enable built-in Prometheus metrics exporter at mon_http_port (8060 by default).

Note that only the active (master) monitor exposes metrics, others return HTTP 503. So you should add all monitor URLs to your Prometheus job configuration.

Grafana dashboard suitable for this exporter is here: Vitastor-Grafana-6+.json.

mon_http_port

  • Type: integer
  • Default: 8060

HTTP port for monitors to listen on (including metrics exporter)

mon_http_ip

  • Type: string

IP address for monitors to listen on (all addresses by default)

mon_https_cert

  • Type: string

Path to PEM SSL certificate file for monitor to listen using HTTPS

mon_https_key

  • Type: string

Path to PEM SSL private key file for monitor to listen using HTTPS

mon_https_client_auth

  • Type: boolean
  • Default: false

Enable HTTPS client certificate-based authorization for monitor connections

mon_https_ca

  • Type: string

Path to CA certificate for client HTTPS authorization

etcd_mon_ttl

  • Type: seconds
  • Default: 1
  • Minimum: 5

Monitor etcd lease refresh interval in seconds

etcd_mon_timeout

  • Type: milliseconds
  • Default: 1000

etcd request timeout used by monitor

etcd_mon_retries

  • Type: integer
  • Default: 5

Maximum number of attempts for one monitor etcd request

mon_change_timeout

  • Type: milliseconds
  • Default: 1000
  • Minimum: 100

Optimistic retry interval for monitor etcd modification requests

mon_stats_timeout

  • Type: milliseconds
  • Default: 1000
  • Minimum: 100

Interval for monitor to wait before updating aggregated statistics in etcd after receiving OSD statistics updates

osd_out_time

  • Type: seconds
  • Default: 600

Time after which a failed OSD is removed from the data distribution. I.e. time which the monitor waits before attempting to restore data redundancy using other OSDs.

placement_levels

  • Type: json
  • Default: {"host":100,"osd":101}

Levels for the placement tree. You can define arbitrary tree levels by defining them in this parameter. The configuration parameter value should contain a JSON object with level names as keys and integer priorities as values. Smaller priority means higher level in tree. For example, “datacenter” should have smaller priority than “osd”. “host” and “osd” levels are always predefined and can’t be removed. If one of them is not present in the configuration, then it is defined with the default priority (100 for “host”, 101 for “osd”).

use_old_pg_combinator

  • Type: boolean
  • Default: false

Use the old PG combination generator which doesn’t support level_placement and raw_placement for pools which don’t use this features.