diff --git a/pages/builders/chain-operators/tools/op-conductor.mdx b/pages/builders/chain-operators/tools/op-conductor.mdx
index 6d4d6cff0..2879e8d50 100644
--- a/pages/builders/chain-operators/tools/op-conductor.mdx
+++ b/pages/builders/chain-operators/tools/op-conductor.mdx
@@ -84,6 +84,8 @@ At OP Labs, op-conductor is deployed as a kubernetes statefulset because it
requires a persistent volume to store the raft log. This guide describes
setting up conductor on an existing network without incurring downtime.
+You can utilize the [op-conductor-ops](https://github.com/ethereum-optimism/infra/tree/main/op-conductor-ops) tool to confirm the conductor status between the steps.
+
### Assumptions
This setup guide has the following assumptions:
@@ -138,7 +140,7 @@ This setup guide has the following assumptions:
{
Pause two conductors
}
- Pause `sequencer-0` &` sequencer-1` conductors with [conductor\_pause](#conductor_pause)
+ Pause `sequencer-0` &` sequencer-2` conductors with [conductor_pause](#conductor_pause)
RPC request.
{Update op-node configuration and switch the active sequencer
}
@@ -150,7 +152,7 @@ This setup guide has the following assumptions:
* all sequencer op-node configs:
```yaml
- OP_NODE_CONDUCTOR_ENABLED: "true"
+ OP_NODE_CONDUCTOR_ENABLED: "true" # this is what commits unsafe blocks to the raft logs
OP_NODE_RPC_ADMIN_STATE: "" # this flag cant be used with conductor
```
@@ -162,7 +164,7 @@ This setup guide has the following assumptions:
{Add voting nodes
}
- Add voting nodes to cluster using [conductor\_AddServerAsVoter](#conductor_addServerAsVoter)
+ Add voting nodes to cluster using [conductor_AddServerAsVoter](#conductor_addserverasvoter)
RPC request to the leader conductor (`sequencer-1`)
{Confirm state
}
@@ -188,11 +190,11 @@ This setup guide has the following assumptions:
{Confirm state
}
- Confirm all conductors successfully resumed with [conductor\_paused](#conductor_paused)
+ Confirm all conductors successfully resumed with [conductor_paused](#conductor_paused)
{Tranfer leadership
}
- Trigger leadership transfer to `sequencer-0` using [conductor\_transferLeaderToServer](#conductor_transferLeaderToServer)
+ Trigger leadership transfer to `sequencer-0` using [conductor_transferLeaderToServer](#conductor_transferleadertoserver)
{Confirm state
}
@@ -357,7 +359,7 @@ It is configured via its [flags / environment variables](https://github.com/ethe
Conductor exposes [admin RPCs](https://github.com/ethereum-optimism/optimism/blob/develop/op-conductor/rpc/api.go#L17)
on the `conductor` namespace.
-#### conductor\_overrideLeader
+#### conductor_overrideLeader
`OverrideLeader` is used to override the leader status, this is only used to
return true for `Leader()` & `LeaderWithID()` calls. It does not impact the
@@ -382,7 +384,7 @@ manually started sequencer.
-#### conductor\_pause
+#### conductor_pause
`Pause` pauses op-conductor.
@@ -402,7 +404,7 @@ manually started sequencer.
-#### conductor\_resume
+#### conductor_resume
`Resume` resumes op-conductor.
@@ -422,7 +424,7 @@ manually started sequencer.
-#### conductor\_paused
+#### conductor_paused
Paused returns true if the op-conductor is paused.
@@ -442,7 +444,7 @@ Paused returns true if the op-conductor is paused.
-#### conductor\_stopped
+#### conductor_stopped
Stopped returns true if the op-conductor is stopped.
@@ -482,7 +484,7 @@ SequencerHealthy returns true if the sequencer is healthy.
-#### conductor\_leader
+#### conductor_leader
API related to consensus.
@@ -506,7 +508,7 @@ Leader returns true if the server is the leader.
-#### conductor\_leaderWithID
+#### conductor_leaderWithID
API related to consensus.
@@ -530,13 +532,13 @@ LeaderWithID returns the current leader's server info.
-#### conductor\_addServerAsVoter
+#### conductor_addServerAsVoter
- API related to consensus.
+ API related to consensus. The address parameter is the raft consensus address, not the RPC address.
-AddServerAsVoter adds a server as a voter to the cluster.
+AddServerAsVoter adds a server as a voter to the cluster.
@@ -549,12 +551,12 @@ AddServerAsVoter adds a server as a voter to the cluster.
```sh
- cast rpc conductor_addServerAsVoter --rpc-url http://127.0.0.1:50050
+ cast rpc conductor_addServerAsVoter --rpc-url http://127.0.0.1:50050
```
-#### conductor\_addServerAsNonvoter
+#### conductor_addServerAsNonvoter
API related to consensus.
@@ -579,7 +581,7 @@ The non-voter will not participate in the leader election.
-#### conductor\_removeServer
+#### conductor_removeServer
API related to consensus.
@@ -603,7 +605,7 @@ RemoveServer removes a server from the cluster.
-#### conductor\_transferLeader
+#### conductor_transferLeader
API related to consensus.
@@ -627,7 +629,7 @@ TransferLeader transfers leadership to another server.
-#### conductor\_transferLeaderToServer
+#### conductor_transferLeaderToServer
API related to consensus.
@@ -651,7 +653,7 @@ TransferLeaderToServer transfers leadership to a specific server.
-#### conductor\_clusterMembership
+#### conductor_clusterMembership
ClusterMembership returns the current cluster membership configuration.
@@ -671,7 +673,7 @@ ClusterMembership returns the current cluster membership configuration.
-#### conductor\_active
+#### conductor_active
API called by `op-node`.
@@ -695,7 +697,7 @@ Active returns true if the op-conductor is active (not paused or stopped).
-#### conductor\_commitUnsafePayload
+#### conductor_commitUnsafePayload
API called by `op-node`.
@@ -725,3 +727,4 @@ layer.
* Checkout [op-conductor-mon](https://github.com/ethereum-optimism/infra):
which monitors multiple op-conductor instances and provides a unified interface
for reporting metrics.
+* Get familiar with [op-conductor-ops](https://github.com/ethereum-optimism/infra/tree/main/op-conductor-ops)to interact with op-conductor.