Get desktop application:
View/edit binary Protocol Buffers messages
Activate Broker
Target broker to activate (string id as published under /cluster/brokers/{broker_id})
Optional reason for auditability
Load Balancing & Rebalancing RPCs (Phase 3)
Request to get current cluster balance metrics
(message has no fields)
Response containing cluster balance metrics
Coefficient of variation (0.0 = perfectly balanced, higher = more imbalanced)
Mean load across all brokers (typically topic count)
Maximum load in the cluster
Minimum load in the cluster
Standard deviation of load
Number of active brokers
Detailed broker load information
Assignment strategy currently in use (fair, balanced, weighted_load)
Broker related RPCs
Response Messages
Request to trigger manual rebalancing
If true, only calculate and return proposed moves without executing
Maximum number of topic moves to execute (default: from config)
Response from rebalancing operation
True if rebalancing was successful or dry-run completed
Number of moves actually executed (0 for dry-run)
Proposed or executed moves
Error message if success = false
Broker Unload
Target broker to unload (string id as published under /cluster/brokers/{broker_id})
Unload concurrency (default: 1)
Optional filters
Dry-run does not perform changes; returns the topics to be affected
Per-topic timeout (seconds)
true if accepted/started
Raft cluster membership management. These RPCs are forwarded to the Raft leader internally.
Add a node as a Raft learner (non-voting). It will receive snapshots + log.
Raft transport address of the new node, e.g. "broker4:7650"
Optional: provide the node_id directly (discovered via transport if omitted)
Show Raft cluster state: leader, term, log index, voter/learner sets.
Current Raft leader node_id (0 if no leader)
Current Raft term
Last applied log index
Node IDs of current voters
Node IDs of current learners (non-voting)
This node's own ID
This node's Raft transport address
Promote a learner to a full voting member.
Remove a node from the Raft voter/learner set.
Namespace related RPCs
Bindings
Roles
"cluster", "namespace", "topic"
"" for cluster scope
/namespace/topic
number of partitions
Schema subject from Schema Registry (optional)
Schema subject from Schema Registry (optional: topics can have no schema)
Describe Topic (schema + subscriptions)
/namespace/topic
delivery: Reliable | NonReliable
Schema Registry fields (all optional - topic may have no schema)
Schema subject name
Schema ID from registry
Schema version
"json_schema", "avro", "protobuf", "string", "bytes"
"NONE", "BACKWARD", "FORWARD", "FULL"
Request to address a specific broker
Topic related RPCs
Used in: , ,
"service_account", "user"
"cluster", "namespace", "topic"
"" for cluster, namespace name, or topic path
Used in:
Load information for a single broker
Used in:
Keep enums/messages consistent with danube/DanubeApi.proto
Used in: ,
Common Messages
Used as request type in: BrokerAdmin.GetLeaderBroker, BrokerAdmin.ListBrokers, BrokerAdmin.ListNamespaces, ClusterAdmin.ClusterStatus, SecurityAdmin.ListAllBindings, SecurityAdmin.ListRoles
(message has no fields)
Used as response type in: SecurityAdmin.ListAllBindings, SecurityAdmin.ListBindings
Used as request type in: NamespaceAdmin.CreateNamespace, NamespaceAdmin.DeleteNamespace, NamespaceAdmin.GetNamespacePolicies, NamespaceAdmin.GetNamespaceTopics, TopicAdmin.ListNamespaceTopics
Used as response type in: NamespaceAdmin.CreateNamespace, NamespaceAdmin.DeleteNamespace
A proposed or executed topic move
Used in:
Used in: , ,
e.g. ["Produce", "Consume", "Lookup"]
Used in:
Used in: ,
Used in: ,
Used in:
Used as response type in: TopicAdmin.SetSubscriptionDispatchConfig, TopicAdmin.SetSubscriptionFailurePolicy, TopicAdmin.Unsubscribe
Detailed topic entry including hosting broker id
Used in:
/namespace/topic (leading slash)
hosting broker id; empty if unknown/unassigned
delivery: Reliable | NonReliable
Used as response type in: TopicAdmin.ListBrokerTopics, TopicAdmin.ListNamespaceTopics
Used as request type in: TopicAdmin.DeleteTopic, TopicAdmin.ListSubscriptions, TopicAdmin.UnloadTopic
Used as response type in: TopicAdmin.CreatePartitionedTopic, TopicAdmin.CreateTopic, TopicAdmin.DeleteTopic, TopicAdmin.UnloadTopic