Start a new cluster specifying a name and credential to use. A master instance is always created and the number of exec nodes and data nodes can be specified if desired.
Usage: vp-start-cluster [options]
Options:
-h, --help show this help message and exit
--host=HOST Host of webservice to contact
--conf-name=CONF_NAME
Config name, defaults to clovr.conf
--name=NAME Name of cluster
--num=NUM Number of exec nodes to start
--cred=CRED Credential to use
-b, --block Block until cluster is up
--update_dirs Want to update scripts dirs once instance is up
-t, --print-task-name
Print the name of the task at the end
Start a cluster named test_cluster with the credential my_ec2_account and start no exec nodes.
vp-start-cluster --name=test_cluster --cred=my_ec2_account --num=0
/vappio/startCluster_ws.py
Parameter | Required | Type | Meaning |
---|---|---|---|
cluster | Yes | String | The name of the cluster to create. |
num_exec | Yes | Int | The number of exec nodes to start. |
num_data | Yes | Int | The number of data nodes to start. |
cred_name | Yes | String | The name of the credential to use to start the cluster. |
The result is a string for the task name associated with starting this cluster
Terminate a running cluster and all of its exec and data nodes.
Usage: vp-terminate-cluster [options]
Options:
-h, --help show this help message and exit
--host=HOST Host of webservice to contact
--name=NAME Name of cluster
-f, --force Force cluster to shut down and be cleaned up, use with caution!
Terminate a cluster named test_cluster:
vp-terminate-cluster --name=test_cluster
Output
None
/vappio/terminateCluster_ws.py
Parameter | Required | Type | Meaning |
---|---|---|---|
cluster | Yes | String | The name of the cluster. |
force | No | Boolean | If the cluster is in an invalid state, such as not responding to requests, force a shut down. |
None
Give a list of all running clusters or provide information for a specific cluster.
Usage: vp-describe-cluster [options]
Options:
-h, --help show this help message and exit
--host=HOST Host of web services to connect to, defaults to local host
--name=NAME Name of cluster
-p, --partial Load partial data if a cluster is bad
-l, --list List all clusters
List all clusters
vp-describe-cluster --list
Output:
CLUSTER local
CLUSTER diag-3
CLUSTER diag-2
CLUSTER diag-1
Show information on a specific cluster
vp-describe-cluster --name=diag-1
Output:
MASTER i-84b7eb2e diag-128-18.igs.umaryland.edu running
GANGLIA http://diag-128-18.igs.umaryland.edu/ganglia
ERGATIS http://diag-128-18.igs.umaryland.edu/ergatis
SSH ssh -oNoneSwitch=yes -oNoneEnabled=yes -o PasswordAuthentication=no
-o ConnectTimeout=30 -o StrictHostKeyChecking=no -o ServerAliveInterval=30
-o UserKnownHostsFile=/dev/null -q -i /mnt/keys/devel1.pem root@diag-128-18.igs.umaryland.edu
Listing clusters (/vappio/listClusters_ws.py) takes no parameters.
Describing a specific cluster (/vappio/clusterInfo_ws.py) takes the following:
Parameter | Required | Type | Meaning |
---|---|---|---|
cluster | Yes | String | Name of the cluster. |
partial | No | Boolean | If a cluster is unresponsive do not error out but return a partial list of information. |
The response to listing clusters (/vappio/listClusters_ws.py) is a string of cluster names (strings).
The response to describing a cluster (/vappio/clusterInfo_ws.py) is a dictionary with the following attributes:
Parameter | Type | Meaning |
---|---|---|
name | String | Name of the cluster. |
cred | String | Name of the credential. |
execNodes | Instance list | List of exec instances. |
dataNodes | Instance list | List of data instances. |
master | Instance | Instance description for the master. |
config | Dictionary | Key value pairs of configuration options for the cluster. |
Instances are defined as the following, other attributes may be present but these are the bare minimum:
Parameter | Type | Meaning |
---|---|---|
amiId | String | The name of the image the instance is running. |
instanceId | String | The unique id for the instances. |
spotRequestId | String or null | If the instance is the result of a spot request this will be the spot request id string, otherwise null. |
bidPrice | String or null | If the instance is a spot request this will be the price that was bid, otherwise null. |
state | String | A string representing the state, valid states are pending, running and terminated. |
instanceType | String | The type of the instance created. |
key | String | The key the instance was created with. |
instanceType | String | The instance type (m1.small for example). |
publicDNS | String | The public domain name of the instance. |
privateDNS | String | The private domain name of the string. |
Add exec or data instances to a running cluster.
Note: This tool is currently being expanded
Usage: vp-add-instances [options]
Options:
-h, --help show this help message and exit
--host=HOST Host of webservice to contact
--name=NAME Name of cluster (in this case public host name of
master)
--num=NUM Number of nodes to create
-b, --block Block until cluster is up
--update-dirs Update scripts directories
-t, --print-task-name
Print the name of the task at the end
Add 200 instances to the cluster named my_ec2-cluster:
vp-add-instances --name=my_ec2_cluster --num=200
/vappio/addInstances_ws.py
Parameter | Required | Type | Meaning |
---|---|---|---|
cluster | Yes | String | Name of cluster to add instances to. |
num | Yes | Int | Number of exec instances to add. |
The response is the task name associated with adding instances