Prajna


Cluster

Cluster represents a set of remote nodes in either a private cloud or a public cloud. It is the class that govern which remote nodes that services, contracts and data analytical jobs are running upon.

Constructors

ConstructorDescription
new(masterFile, config)
Signature: (masterFile:string option * config:LocalClusterConfig) -> Cluster

Construct a Cluster from a cluster description, with optionally a master node. The master node may be used to query for the cluster used. User supplied local cluster configuration

new(masterFile, cluster)
Signature: (masterFile:string option * cluster:string) -> Cluster

Construct a Cluster from a cluster description, with optionally a master node. The master node may be used to query for the cluster used. It can either be a path to cluster file, which should be a .inf file contains the description of the cluster or a string in the format "local" or "local[n]", which means a local cluster with 1 client or n clients respectively In this case, both the clients and containers are started as an AppDomain. the system uses DeploymentSettings.LocalClusterNumJobPortsPerClient and DeploymentSettings.LocalClusterStartingPort. If these predefined ports are not accessible, the local cluster may not function properly. For user who wants to have full control of the configuration, please use the constructor that takes LocalClusterConfig as parameter

new(config)
Signature: config:LocalClusterConfig -> Cluster

Construct a Prajna Local cluster from configuration. User supplied local cluster configuration

new(cluster)
Signature: cluster:string -> Cluster

Construct a Cluster from cluster description.

It can either be a path to cluster file, which should be a .inf file contains the description of the cluster or a string in the format "local" or "local[n]", which means a local cluster with 1 client or n clients respectively In this case, both the clients and containers are started as an AppDomain. the system uses DeploymentSettings.LocalClusterNumJobPortsPerClient and DeploymentSettings.LocalClusterStartingPort. If these predefined ports are not accessible, the local cluster may not function properly. For user who wants to have full control of the configuration, please use the constructor that takes LocalClusterConfig as parameter

Instance members

Instance memberDescription
GetSingleNodeCluster(nodeIndex)
Signature: nodeIndex:int -> Cluster

Construct a single node using the existing cluster information.

GetSingleNodeCluster(nodeName)
Signature: nodeName:string -> Cluster

Construct a single node using the existing cluster information.

Name
Signature: string

Return name of the cluster

Nodes
Signature: ClientInfo []

Return a list of node that form the cluster

NumNodes
Signature: int

Return number of nodes.

UseSingleNodeCluser(nodeIndex)
Signature: nodeIndex:int -> unit

Use a single node at the current cluser

UseSingleNodeCluser(nodeName)
Signature: nodeName:string -> unit

Use a single node at the current cluser

Version
Signature: DateTime

Return version of the cluster

VersionString
Signature: string

Return version of the cluster as a printable string

Static members

Static memberDescription
Connects
Signature: NetworkConnections

Get the current connected queue set

Current()
Signature: unit -> Cluster option

Get, Set Current Cluster used by DSet, DStream, service launch, etc..

Current()
Signature: unit -> unit

Get, Set Current Cluster used by DSet, DStream, service launch, etc..

GetCombinedCluster(clusters)
Signature: clusters:seq<Cluster> -> Cluster

Construct a single node using the existing cluster information.

GetCurrent()
Signature: unit -> Cluster

Get the default cluster used by DSet, DStream, service launch, etc..

SetCurrent(cl)
Signature: cl:Cluster -> unit

Set the default cluster used by DSet, DStream, service launch, etc..

Start(...)
Signature: (masterFile:string * cluster:string * expClusterSize:int option) -> unit

Load a cluster, with optional a master (which may be queryed for cluster allocation), start the connection to their nodes, and use it as the current cluster

StartCluster(cluster)
Signature: cluster:string -> unit

Load a cluster, start the connection to their nodes, and use it as the current cluster

Stop()
Signature: unit -> unit

Stop all connnections and disconnect all clusters.

Fork me on GitHub