Agent Daemon Listener¶
- Listen on the address specified by listener.addr and port specified by listener.port.
 - Executes om node dequeue actions when receiving empty packets
 - Execute valid requests
 
Requests Validation¶
A request message must be AES256-encrypted using the cluster.secret. The sender nodename and encryption salt are sent unencrypted.
- The sender nodename is verified to be in the cluster.nodes (expect for join requests)
 - The encrypted data must pass decryption using the received salt and cluster.secret
 
A node sending 5 consecutive invalid messages is blacklisted, and its future messages will be dropped before decryption.
Requests¶
Blacklist Status¶
Return the blacklist contents.
$ om node daemon blacklist status
{
    "data": {
        "node1": 1,
        "node2": 5,
    },
    "status": 0
}
Daemon Stop¶
Stop the daemon or a single thread.
Stopping the whole daemon advertizes to its peers its going into maintenance. The local service instances are not stopped.
$ om node daemon stop [--thread-id <id>]
Daemon Shutdown¶
Stop service instances, advertize maintenance to peers and stop the daemon.
$ om node daemon shutdown
Get Service Config¶
Serve a service configuration file content.
Request format:
{
    "action": "get_service_config",
    "options": {
        "svcname": "svc1",
    }
}
Clear¶
Clear the service monitor start failed and stop failed states.
Clear the resource restart count, so the service monitor will retry <rid>.restart times again to start a resource evaluated down when the local_expect is started.
$ om <svcname> clear
Set Node Monitor¶
Set the node monitor attributes.
statusThe node monitor status.idle,freezing,thawinglocal_expectThe target node status. The node monitor will try to take actions to make the node reach that status.thawed,frozen.
Request format:
{
    "action": "set_node_monitor",
    "options": {
        "local_expect": "thawed"
    }
}
Set Service Monitor¶
Set a service monitor attributes:
statusThe service monitor status.idle,starting,stopping, ...local_expectThe target local service instance status. The service monitor will try to take actions to make the service instance reach that status.global_expectThe target service status. The service monitor will discuss with its peers how to make the service reach that status.reset_retriesClear the resource restart count, so the service monitor will retry<rid>.restarttimes again to start a resource evaluated down when the local_expect isstarted.
Request format:
{
    "action": "set_service_monitor",
    "options": {
        "svcname": "svc1",
        "local_expect": "started",
        "global_expect": "started",
        "reset_retries": True
    }
}
Get Service Monitor¶
Return the service monitor attributes.
Request format:
{
    "action": "set_service_monitor",
    "options": {
        "svcname": "svc1",
    }
}
Join¶
Merge the joining nodename in the cluster.nodes.
Return the cluster and heartbeats configuration sections the joiner must merge.
$ om node daemon join --secret <secret> --node <nodename>
Leave¶
Remove the leaving nodename from cluster.nodes.
Service Action¶
Execute an arbitrary service instance action on the node.
Support synchronous or asynchronous execution.
Request format:
{
    "action": "service_action",
    "options": {
        "svcname": "svc1",
        "command": ["compliance", "fix", "--moduleset", "foo"],
        "sync": True,
    }
}
Service Logs¶
Return or stream the local service instance logs.
$ om <svcname> logs [--follow] [--backlog <n>]
Request logs from all service nodes daemons and aggregate the results.
Maintenance¶
The listener thread is restarted by the agent daemon if it exits uncleanly.
om node daemon stop --thread-id listener
Stop the listener thread. The thread state transitions from running to stopped.
om node daemon start --thread-id listener
Start the listener tx thread. The thread state transitions from stopped to running.
om node set --param listener.port --value 1215
om node edit config
Any command causing a timestamp change on <OSVCETC>/node.conf triggers a listener reconfiguration:
- Modified parameters are applied