32 lines
799 B
Python
32 lines
799 B
Python
# This plugin sets necessary environment variables to run Zeek with
|
|
# myricom load balancing.
|
|
|
|
import ZeekControl.plugin
|
|
|
|
|
|
class LBMyricom(ZeekControl.plugin.Plugin):
|
|
def __init__(self):
|
|
super().__init__(apiversion=1)
|
|
|
|
def name(self):
|
|
return "lb_myricom"
|
|
|
|
def pluginVersion(self):
|
|
return 1
|
|
|
|
def init(self):
|
|
useplugin = False
|
|
|
|
for nn in self.nodes():
|
|
if nn.type != "worker" or nn.lb_method != "myricom":
|
|
continue
|
|
|
|
useplugin = True
|
|
|
|
# Apply environment variables, but do not override values from
|
|
# the node.cfg or zeekctl.cfg files.
|
|
nn.env_vars.setdefault("SNF_NUM_RINGS", nn.lb_procs)
|
|
nn.env_vars.setdefault("SNF_FLAGS", "0x101")
|
|
|
|
return useplugin
|