policy/frameworks/cluster/controller/types.zeek¶
-
ClusterController::Types
¶
This module holds the basic types needed for the Cluster Controller framework. These are used by both agent and controller, and several have corresponding equals in the zeek-client implementation.
- Namespace
ClusterController::Types
Summary¶
Types¶
Data structure capturing a cluster’s complete configuration. |
|
Configuration describing a Zeek instance running a Cluster Agent. |
|
Configuration describing a Cluster Node process. |
|
A Zeek-side option with value. |
|
Return value for request-response API event pairs |
|
Management infrastructure node type. |
|
State that a Cluster Node can be in. |
Detailed Interface¶
Types¶
- ClusterController::Types::Configuration¶
- Type
-
- id:
string
&default
=fD0qxAnfwOe
&optional
Unique identifier for a particular configuration
- instances:
set
[ClusterController::Types::Instance
]&default
={ }
&optional
The instances in the cluster.
- nodes:
set
[ClusterController::Types::Node
]&default
={ }
&optional
The set of nodes in the cluster, as distributed over the instances.
- id:
Data structure capturing a cluster’s complete configuration.
- ClusterController::Types::Instance¶
- Type
Configuration describing a Zeek instance running a Cluster Agent. Normally, there’ll be one instance per cluster system: a single physical system.
- ClusterController::Types::Node¶
- Type
-
- name:
string
Cluster-unique, human-readable node name
- instance:
string
Name of instance where node is to run
- p:
port
Port on which this node will listen
- role:
Supervisor::ClusterRole
Role of the node.
- state:
ClusterController::Types::State
Desired, or current, run state.
- scripts:
vector
ofstring
&optional
Additional Zeek scripts for node
- options:
set
[ClusterController::Types::Option
]&optional
Zeek options for node
- interface:
string
&optional
Interface to sniff
- cpu_affinity:
int
&optional
CPU/core number to pin to
- env:
table
[string
] ofstring
&default
={ }
&optional
Custom environment vars
- name:
Configuration describing a Cluster Node process.
- ClusterController::Types::Option¶
-
A Zeek-side option with value.
- ClusterController::Types::Result¶
- Type
-
- reqid:
string
Request ID of operation this result refers to
- instance:
string
&default
=""
&optional
Name of associated instance (for context)
- success:
bool
&default
=T
&optional
True if successful
- data:
any
&optional
Addl data returned for successful operation
- error:
string
&default
=""
&optional
Descriptive error on failure
- node:
string
&optional
Name of associated node (for context)
- reqid:
Return value for request-response API event pairs
- ClusterController::Types::Role¶
- Type
-
-
ClusterController::Types::NONE
¶
-
ClusterController::Types::AGENT
¶
-
ClusterController::Types::CONTROLLER
¶
-
Management infrastructure node type. This intentionally does not include the data cluster node types (worker, logger, etc) – those continue to be managed by the cluster framework.
- ClusterController::Types::State¶
- Type
-
-
ClusterController::Types::Running
¶ Running and operating normally
-
ClusterController::Types::Stopped
¶ Explicitly stopped
-
ClusterController::Types::Failed
¶ Failed to start; and permanently halted
-
ClusterController::Types::Crashed
¶ Crashed, will be restarted,
-
ClusterController::Types::Unknown
¶ State not known currently (e.g., because of lost connectivity)
-
State that a Cluster Node can be in. State changes trigger an API notification (see notify_change()).