mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00

This hooks into Telemetry::sync() to update Broker-level metrics tracking the peerings' send buffer state. We do this in the cluster framework so we can label the resulting metrics with Zeek cluster node names, not Broker's endpoint IDs.
68 lines
1.7 KiB
Text
68 lines
1.7 KiB
Text
# Load the core cluster support.
|
|
@load ./main
|
|
@load ./pools
|
|
|
|
@if ( Cluster::is_enabled() )
|
|
|
|
# Give the node being started up it's peer name.
|
|
redef peer_description = Cluster::node;
|
|
|
|
@if ( Cluster::enable_round_robin_logging )
|
|
redef Broker::log_topic = Cluster::rr_log_topic;
|
|
@endif
|
|
|
|
# Add a cluster prefix.
|
|
@prefixes += cluster
|
|
|
|
# Broker-specific additions:
|
|
@if ( Cluster::backend == Cluster::CLUSTER_BACKEND_BROKER )
|
|
@load ./broker-backpressure
|
|
@load ./broker-telemetry
|
|
@endif
|
|
|
|
@if ( Supervisor::is_supervised() )
|
|
# When running a supervised cluster, populate Cluster::nodes from the node table
|
|
# the Supervisor provides to new Zeek nodes. The management framework configures
|
|
# the cluster this way.
|
|
@load ./supervisor
|
|
@if ( Cluster::Supervisor::__init_cluster_nodes() && Cluster::get_node_count(Cluster::LOGGER) > 0 )
|
|
redef Cluster::manager_is_logger = F;
|
|
@endif
|
|
@endif
|
|
|
|
@if ( |Cluster::nodes| == 0 )
|
|
# Fall back to loading a cluster topology from cluster-layout.zeek. If Zeek
|
|
# cannot find this script in your ZEEKPATH, it will exit. The script should only
|
|
# contain the cluster definition in the :zeek:id:`Cluster::nodes` variable.
|
|
# The zeekctl tool manages this file for you.
|
|
@load cluster-layout
|
|
@endif
|
|
|
|
@if ( Cluster::node in Cluster::nodes )
|
|
|
|
@load ./setup-connections
|
|
|
|
@if ( Cluster::local_node_type() == Cluster::MANAGER )
|
|
@load ./nodes/manager
|
|
# If no logger is defined, then the manager receives logs.
|
|
@if ( Cluster::manager_is_logger )
|
|
@load ./nodes/logger
|
|
@endif
|
|
@endif
|
|
|
|
@if ( Cluster::local_node_type() == Cluster::LOGGER )
|
|
@load ./nodes/logger
|
|
@endif
|
|
|
|
@if ( Cluster::local_node_type() == Cluster::PROXY )
|
|
@load ./nodes/proxy
|
|
@endif
|
|
|
|
@if ( Cluster::local_node_type() == Cluster::WORKER )
|
|
@load ./nodes/worker
|
|
@endif
|
|
|
|
@load ./broker-stores.zeek
|
|
|
|
@endif
|
|
@endif
|