influxdb3 stop node
The influxdb3 stop node command requests a graceful, two-phase stop of a
node in your InfluxDB 3 Enterprise cluster.
When you run this command against a live node:
- The node is marked as
stoppingin the catalog. - The node completes its stop cascade, then confirms the stop. The cascade drains the node’s WAL tail—the writes buffered in the write-ahead log (WAL) since the last snapshot.
- The node reads as
stoppedin the catalog, and its licensed cores are freed for other nodes.
By default, the command waits until the node reaches the stopped state
(up to --timeout, default 5m) and exits with a non-zero
status if the node does not reach stopped in time.
Use --no-wait to return as soon as the stop request is accepted.
Run this command against the live node—do not kill it first
stop node is how a node drains its
WAL tail.
If you kill the process first (for example, with kill -9 or by
force-stopping a container) and run stop node afterward, the dead process
cannot drain anything: recently acknowledged writes that were not yet
flushed or snapshotted remain stranded in the WAL, and
removing the node
can then permanently delete them.
If a node has already stopped ungracefully, follow
Recover a crashed node instead.
Sending the server process a bare SIGTERM (without calling stop node)
does not force a WAL snapshot on the upgraded storage engine.
Always use stop node to stop a cluster node gracefully.
Usage
influxdb3 stop node [OPTIONS] --node-id <NODE_ID>Options
| Option | Description | |
|---|---|---|
--node-id | (Required) The node ID to stop | |
--no-confirm | Skip the confirmation prompt (--force is a deprecated alias) | |
--timeout | How long to wait for the node to reach stopped before giving up—for example: 30s, 5m, 1h (default is 5m) | |
--no-wait | Return as soon as the stop request is accepted instead of waiting for stopped | |
-H | --host | Host URL of the running InfluxDB 3 Enterprise server (default is http://127.0.0.1:8181) |
--token | Authentication token | |
--tls-ca | Path to a custom TLS certificate authority (for testing or self-signed certificates) | |
--tls-no-verify | Disable TLS certificate verification (Not recommended in production, useful for self-signed certificates) | |
-h | --help | Print help information |
Option environment variables
You can use the following environment variables to set command options:
| Environment Variable | Option |
|---|---|
INFLUXDB3_HOST_URL | --host |
INFLUXDB3_AUTH_TOKEN | --token |
INFLUXDB3_TLS_NO_VERIFY | --tls-no-verify |
Behavior
The node lifecycle is two-phase: stop node marks the node stopping, but
the node only reads as stopped after its own stop cascade completes and it
confirms the stop.
That cascade is what drains the node’s WAL tail. How the node drains it depends on the storage engine: on the Parquet engine, the node persists the buffered writes to Parquet files; on the upgraded storage engine, it captures them in a WAL snapshot.
- By default, the command polls the node state (from
system.nodes) until it reachesstopped, up to--timeout(default5m). - If the node does not reach
stoppedwithin the timeout, the command prints the last observed state and exits with a non-zero status. The node may be wedged instopping—for example, if the process died mid-cascade. To recover, follow Recover a crashed node. - With
--no-wait, the command returns after the stop request is accepted. Verify that the node reachesstoppedbefore removing it. - Other nodes in the cluster see the state change after their catalog sync interval (default 10 seconds).
- The command requires authentication if the server has auth enabled.
Running stop node against a node whose process is already dead cannot
drain anything: the catalog still moves the node toward stopped, but the
WAL tail
remains at risk until the node is restarted.
See Recover a crashed node.
Examples
- Stop a node gracefully
- Stop a node without waiting
- Stop a node without confirmation
- Stop a node on a remote server
In the examples below, replace the following:
NODE_ID: The node identifier of the node to stopAUTH_TOKEN: Authentication token with sufficient privilegesINFLUXDB_HOST: Host URL of the running InfluxDB 3 Enterprise server
Stop a node gracefully
Run stop node against the live node.
The command prompts for confirmation, requests the stop, and waits for the
node to finish its final flush and confirm the stop:
influxdb3 stop node --node-id NODE_IDAfter the node reads as stopped, you can
remove it from the cluster
if you intend to permanently remove it.
Stop a node without waiting
Use --no-wait to return as soon as the stop request is accepted.
Verify that the node reaches stopped (for example, with
influxdb3 show nodes)
before removing it:
influxdb3 stop node --node-id NODE_ID --no-waitStop a node without confirmation
influxdb3 stop node --node-id NODE_ID --no-confirmStop a node on a remote server
influxdb3 stop node \
--host INFLUXDB_HOST \
--node-id NODE_ID \
--token AUTH_TOKENVerify node status
Verify the node state using the
influxdb3 show nodes command:
influxdb3 show nodesA gracefully stopped node appears with state: "stopped" in the output.
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB 3 Enterprise and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support. Customers using a trial license can email trial@influxdata.com for assistance.