Skip to content

Commit 00a19a3

Browse files
authored
Adds isolated instance mode description
* Adds isolated instance mode description * The ```isolated: true``` option moves the instance to RO mode * In this mode, various debugging & maintanance operations can be performed * Fixes #4632
1 parent a009ed8 commit 00a19a3

File tree

3 files changed

+46
-0
lines changed

3 files changed

+46
-0
lines changed

doc/admin/troubleshoot.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,10 @@ This issue can be fixed in two ways:
254254
- Manually: :ref:`reseed <replication-master-master-reseed-replica>` one master from another by removing write-ahead logs and snapshots.
255255
- Programmatically: set up a :ref:`conflict resolution trigger <replication-problem_solving>`.
256256

257+
.. NOTE::
258+
259+
If one of the instances must be isolated during troubleshooting, it can be put to the :ref:`isolated mode <_configuration_reference_isolated_mode>`.
260+
257261
Then, restart replication as described in :ref:`Restarting replication <replication-master-master-resolve-conflict>`.
258262

259263

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
groups:
2+
g:
3+
replicasets:
4+
r:
5+
instances:
6+
i-001: {}
7+
i-002: {}
8+
i-003: {}
9+
i-004:
10+
isolated: true

doc/reference/configuration/configuration_reference.rst

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2805,6 +2805,38 @@ instances
28052805
Any configuration parameter that can be defined in the instance :ref:`scope <configuration_scopes>`.
28062806
For example, :ref:`iproto <configuration_reference_iproto>` and :ref:`database <configuration_reference_database>` configuration parameters defined at the instance level are applied to this instance only.
28072807

2808+
.. _configuration_reference_isolated_mode:
2809+
2810+
isolated mode
2811+
------
2812+
2813+
Since version :doc:`3.3.0 </release/3.3.0>`, a new ``isolated`` option is added to instance configuration.
2814+
2815+
The option takes boolean values, by default it is set to ``false``.
2816+
``isolated: true`` moves the instance it has been applied at to the **isolated** mode.
2817+
2818+
The isolated mode allows the user to temporarily isolate an instance and perform maintenance activities on it.
2819+
2820+
In the isolated mode:
2821+
2822+
* The instance is moved to the read-only state
2823+
* iproto stops listening for new connections
2824+
* iproto drops all the current connections
2825+
* The instance is disconnected from all the replication upstreams
2826+
* Other replicaset members exclude the isolated instance from the replication upstreams
2827+
2828+
.. NOTE::
2829+
2830+
Isolated instance can't be bootstrapped (a local snapshot is required to start).
2831+
2832+
**Example**
2833+
2834+
The example below shows how to isolate an instance:
2835+
2836+
.. literalinclude:: /code_snippets/snippets/config/instances.enabled/isolated_mode/config.yaml
2837+
:language: yaml
2838+
:dedent:
2839+
28082840
.. _configuration_reference_labels:
28092841

28102842
labels

0 commit comments

Comments
 (0)