helm voltadmin

Documentation

VoltDB Home » Documentation » VoltDB Kubernetes Administrator's Guide

helm voltadmin

helm voltadmin — Performs administrative functions on a VoltDB database in Kubernetes.

Synopsis

helm voltadmin --release={release-name} collect

helm voltadmin --release={release-name} dr drop

helm voltadmin --release={release-name} dr reset [--cluster={cluster-id}]

helm voltadmin mask {config-file} [output-file]

helm voltadmin --release={release-name} pause

helm voltadmin --release={release-name} resume

helm voltadmin --release={release-name} shutdown

global qualifiers:
--chart={chart-name}
--context={context-name}
--help
--namespace={namespace-name}
--verbose

Description

The helm voltadmin command allows you to perform administrative tasks on a VoltDB database. You specify the Helm release name and the action to take. There are global arguments to disambiguate the context (such as the chart name, Kubernetes context, and namespace) which can also precede the command keyword. Individual commands may have they own unique arguments as well.

Arguments

The following global arguments are available for all helm voltadmin commands and must precede the command name.

- -help

Displays a list of available commands and qualifiers. To see help for a specific command and its options, put the --help qualifier after the command name. For example:

$ helm voltadmin collect --help
--chart={helm-chart-name}

Specifies the Helm chart the database is using.

--context={context-name}

Specifies the Kubernetes context where the database is running.

--namespace={namespace-name}

Specifies the Kubernetes namespace where the database is running.

--verbose

Displays additional information about the specific commands being executed.

Commands

The following are the administrative functions that you can invoke using voltadmin.

collect

Collects logs, error files, stack dumps and other information needed for debugging any problems with database operation.

dr drop

Removes the current cluster from an XDCR environment. Performing a drop breaks existing DR connections, deletes pending binary logs and stops the queuing of DR data on the current cluster. It also tells all other clusters in the XDCR relationship to drop their connection to the current cluster and remove any associated binary logs for that cluster.

The helm voltadmin dr drop command lets you effectively remove a single cluster — the cluster on which the the command is executed — from a multi-cluster XDCR environment in a single command.

dr reset

Resets the database replication (XDCR) connection(s) for the database. Performing a reset breaks existing XDCR connections, deletes pending binary logs and stops the queuing of DR data on the current cluster.

If there are two clusters in an XDCR environment, you can use helm voltadmin dr reset from one cluster to drop the connection to the other cluster. If you are using multiple XDCR clusters, the helm voltadmin dr drop command is the recommended way to remove a running cluster from the environment.

In a multi-cluster XDCR environment you can use the --cluster qualifier to drop the connection to just one cluster. Specify the ID of the remote cluster you wish to drop as an argument to the --cluster option. For example, if one cluster has stopped and you want to remove it from the XDCR environment, you can reset the connections to that cluster by issuing the helm voltadmin dr reset --cluster={id} command on all the remaining clusters.

mask {configuration-file} [output-file}]

Reads a YAML configuration file containing user and password declarations and hashes the passwords so they are not readable in plain text, but still usable for configuring the database. If you do not specify an output file, the command overwrites the input file.

pause

Pauses the database, stopping any additional activity on the client port.

resume

Resumes normal database operation after a pause.

shutdown

Shuts down the database process on all nodes of the cluster. The shutdown command performs an orderly shutdown, pausing the database, completing all pending transactions and writing any queued export, import, or DR data to disk before shutting down the database.

Examples

The following example pauses the database cluster associated with the mydb release.

$ helm voltadmin --release=mydb pause

The next example shuts down the database.

$ helm voltadmin --release=mydb shutdown

The last example uses the mask command to encrypt the passwords in the configuration file myusers.yaml and writes out the masked entries as a new YAML file, maskedusers.yaml.

$ helm voltadmin mask myusers.yaml maskedusers.yaml