Router Clusters¶
RouterCluster¶
- class cfxdb.mrealm.RouterCluster(oid: Optional[UUID] = None, label: Optional[str] = None, description: Optional[str] = None, tags: Optional[List[str]] = None, name: Optional[str] = None, status: Optional[int] = None, owner_oid: Optional[UUID] = None, changed: Optional[datetime64] = None, _unknown=None)[source]¶
Bases:
Cluster
A router cluster is able to run (application) realms, and is hosted on a groups of router workers kept in sync and meshed via router-to-router links.
- Parameters
oid – Object ID of this router cluster.
label – Optional user label of this router cluster.
description – Optional user description of this router cluster.
tags – Optional list of user tags on this router cluster.
- static parse(data)[source]¶
Parse generic host language object into an object of this class.
- Parameters
data (dict) – Generic host language object
- Returns
instance of
ManagementRealm
- class cfxdb.mrealmschema.RouterClusters(slot=None, compress=None, marshal=None, unmarshal=None)[source]¶
Bases:
MapUuidCbor
A router cluster is able to run (application) realms, and is hosted on a groups of router workers kept in sync and meshed via router-to-router links (
routercluster_oid -> routercluster
).
- class cfxdb.mrealmschema.IndexRouterClusterByName(slot=None, compress=None)[source]¶
Bases:
MapStringUuid
Index of router clusters by router cluster names (
routercluster_name -> routercluster_oid
).
- class cfxdb.mrealm.RouterClusterNodeMembership(cluster_oid: Optional[UUID] = None, node_oid: Optional[UUID] = None, softlimit: Optional[int] = None, hardlimit: Optional[int] = None, _unknown=None)[source]¶
Bases:
ClusterNodeMembership
Membership of a managed node (paired within a management realm) to a router cluster. A router cluster is able to run “data planes”, which are groups of router workers kept in sync, and meshed via router-to-router links. Finally, “(application) realms” can be started in data planes.
- Parameters
cluster_oid – Object ID of router cluster the node is becoming member of.
node_oid – Object ID of the node becoming member of the router cluster.
softlimit – Limits the number of router workers started on this node. When this number of workers is reached, efforts are taken to actively reduce the resource load on this node (eg stopping other running router workers “currently being idle”). New router workers will still be started.
hardlimit – Maximum number of router workers started on this node. This hard limits the number of router workers started on this node.
- static parse(data)[source]¶
Parse generic host language object into an object of this class.
- Parameters
data (dict) – Generic host language object
- Returns
instance of
WebService
- class cfxdb.mrealmschema.RouterClusterNodeMemberships(slot=None, compress=None, marshal=None, unmarshal=None)[source]¶
Bases:
MapUuidUuidCbor
Membership of a managed node (paired within a management realm) to a router cluster (
(cluster_oid, node_oid) -> cluster_node_membership
).
RouterWorkerGroup¶
- class cfxdb.mrealm.RouterWorkerGroup(oid: Optional[UUID] = None, label: Optional[str] = None, description: Optional[str] = None, tags: Optional[List[str]] = None, cluster_oid: Optional[UUID] = None, name: Optional[str] = None, scale: Optional[int] = None, status: Optional[int] = None, changed: Optional[datetime64] = None, _unknown=None)[source]¶
Bases:
ConfigurationElement
Router worker group database configuration object.
- Parameters
oid – Object ID of router worker group.
label – Optional user label of router worker group.
description – Optional user description of router worker group.
tags – Optional list of user tags on router worker group.
- static parse(data)[source]¶
Parse generic host language object into an object of this class.
- Parameters
data (dict) – Generic host language object
- Returns
instance of
ManagementRealm
- class cfxdb.mrealmschema.RouterWorkerGroups(slot=None, compress=None, marshal=None, unmarshal=None)[source]¶
Bases:
MapUuidCbor
Router worker group database configuration object (
workergroup_oid -> workergroup
).
- class cfxdb.mrealmschema.IndexWorkerGroupByCluster(slot=None, compress=None)[source]¶
Bases:
MapUuidStringUuid
Index of router worker groups by router clusters and group names (
(cluster_oid, workergroup_name) -> workergroup_oid
).
- class cfxdb.mrealmschema.IndexWorkerGroupByPlacement(slot=None, compress=None)[source]¶
Bases:
MapUuidUuidUuidUuid
Index of router worker groups by cluster, node and placement (
(cluster_oid, node_oid, placement_oid) -> workergroup_oid
).
- class cfxdb.mrealm.RouterWorkerGroupClusterPlacement(oid: Optional[UUID] = None, worker_group_oid: Optional[UUID] = None, cluster_oid: Optional[UUID] = None, node_oid: Optional[UUID] = None, worker_name: Optional[str] = None, status: Optional[int] = None, changed: Optional[datetime64] = None, tcp_listening_port: Optional[int] = None, _unknown: Optional[dict] = None)[source]¶
Bases:
object
Placement of router worker groups onto router clusters, specifically router workers and xbrmm workers running as part of router worker groups.
- Parameters
oid – Object ID of this placement itself.
worker_group_oid – Object ID of the router worker group this placement applies to. Refers to
cfxdb.mrealm.RouterWorkerGroup
cluster_oid – Object ID of the router cluster this placement applies to. Refers to
cfxdb.mrealm.RouterCluster
node_oid – Object ID of the node (within the router cluster) this placement is assigned to. Refers to
cfxdb.mrealm.Node
worker_name – Run-time ID (in the node) of the router worker this placement is assigned to.
status – Status of this placement, which essentially reflects the router worker status of this placement.
changed – Timestamp when the status of this placement last changed.
tcp_listening_port – TCP listening port the router worker this placement is assigned to is listening on for incoming proxy front-end and router-to-router connections.
- static parse(data)[source]¶
Parse generic host language object into an object of this class.
- Parameters
data (dict) – Generic host language object
- Returns
instance of
WebService
- class cfxdb.mrealmschema.RouterWorkerGroupClusterPlacements(slot=None, compress=None, marshal=None, unmarshal=None)[source]¶
Bases:
MapUuidCbor
Router worker group placements of workers (
placement_oid -> placement
).
- class cfxdb.mrealmschema.IndexClusterPlacementByWorkerName(slot=None, compress=None)[source]¶
Bases:
MapUuidUuidUuidStringUuid
Index of router worker group placements by worker group, cluster, node and worker name (
(workergroup_oid, cluster_oid, node_oid, worker_name) -> placement_oid
).