From 6901a020f7e2402e074f0722ee6804f0ceda3b5f Mon Sep 17 00:00:00 2001 From: soyboy Date: Tue, 15 Oct 2024 14:22:13 -0600 Subject: [PATCH 1/4] small fixes --- .../chain-operators/tools/op-conductor.mdx | 47 ++++++++++--------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/pages/builders/chain-operators/tools/op-conductor.mdx b/pages/builders/chain-operators/tools/op-conductor.mdx index 6d4d6cff0..312c1a2bb 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 [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,14 +532,16 @@ LeaderWithID returns the current leader's server info. -#### conductor\_addServerAsVoter +#### conductor_addServerAsVoter - API related to consensus. + API related to consensus. This requires the AddServerAsVoter adds a server as a voter to the cluster. +Version + ```sh @@ -554,7 +558,7 @@ AddServerAsVoter adds a server as a voter to the cluster. -#### conductor\_addServerAsNonvoter +#### conductor_addServerAsNonvoter API related to consensus. @@ -579,7 +583,7 @@ The non-voter will not participate in the leader election. -#### conductor\_removeServer +#### conductor_removeServer API related to consensus. @@ -603,7 +607,7 @@ RemoveServer removes a server from the cluster. -#### conductor\_transferLeader +#### conductor_transferLeader API related to consensus. @@ -627,7 +631,7 @@ TransferLeader transfers leadership to another server. -#### conductor\_transferLeaderToServer +#### conductor_transferLeaderToServer API related to consensus. @@ -651,7 +655,7 @@ TransferLeaderToServer transfers leadership to a specific server. -#### conductor\_clusterMembership +#### conductor_clusterMembership ClusterMembership returns the current cluster membership configuration. @@ -671,7 +675,7 @@ ClusterMembership returns the current cluster membership configuration. -#### conductor\_active +#### conductor_active API called by `op-node`. @@ -695,7 +699,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 +729,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. From 9b16db86f2d4ae363d5fa9f11724bb9995efac5e Mon Sep 17 00:00:00 2001 From: soyboy Date: Tue, 15 Oct 2024 14:33:51 -0600 Subject: [PATCH 2/4] adding comment about the address parameter --- pages/builders/chain-operators/tools/op-conductor.mdx | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pages/builders/chain-operators/tools/op-conductor.mdx b/pages/builders/chain-operators/tools/op-conductor.mdx index 312c1a2bb..5ec7098d3 100644 --- a/pages/builders/chain-operators/tools/op-conductor.mdx +++ b/pages/builders/chain-operators/tools/op-conductor.mdx @@ -535,12 +535,10 @@ LeaderWithID returns the current leader's server info. #### conductor_addServerAsVoter - API related to consensus. This requires the + API related to consensus. The address parameter is the raft conesensus address, not the RPC address. -AddServerAsVoter adds a server as a voter to the cluster. - -Version +AddServerAsVoter adds a server as a voter to the cluster. @@ -553,7 +551,7 @@ Version ```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 ``` From 9fc4de2e5f75098d1738664880a6c44c8ef4a799 Mon Sep 17 00:00:00 2001 From: soyboy <85043086+sbvegan@users.noreply.github.com> Date: Tue, 15 Oct 2024 14:34:25 -0600 Subject: [PATCH 3/4] Update pages/builders/chain-operators/tools/op-conductor.mdx Co-authored-by: Bradley Camacho <42678939+bradleycamacho@users.noreply.github.com> --- pages/builders/chain-operators/tools/op-conductor.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/builders/chain-operators/tools/op-conductor.mdx b/pages/builders/chain-operators/tools/op-conductor.mdx index 5ec7098d3..8c2173486 100644 --- a/pages/builders/chain-operators/tools/op-conductor.mdx +++ b/pages/builders/chain-operators/tools/op-conductor.mdx @@ -84,7 +84,7 @@ 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 [op-conductor-ops](https://github.com/ethereum-optimism/infra/tree/main/op-conductor-ops) tool to confirm the conductor status between the steps. +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 From f840ecefd41dc04ebeba16bb2e46173087d67aae Mon Sep 17 00:00:00 2001 From: soyboy Date: Tue, 15 Oct 2024 14:36:09 -0600 Subject: [PATCH 4/4] fixing typo --- pages/builders/chain-operators/tools/op-conductor.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/builders/chain-operators/tools/op-conductor.mdx b/pages/builders/chain-operators/tools/op-conductor.mdx index 8c2173486..2879e8d50 100644 --- a/pages/builders/chain-operators/tools/op-conductor.mdx +++ b/pages/builders/chain-operators/tools/op-conductor.mdx @@ -535,7 +535,7 @@ LeaderWithID returns the current leader's server info. #### conductor_addServerAsVoter - API related to consensus. The address parameter is the raft conesensus address, not the RPC address. + 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.