Serengeti helps you deploy Hadoop clusters on vSphere fast and easy. It's a management service, which makes user start with Hadoop very easy. This repo holds Serengeti Web Service and CLI.
To jump into using Serengeti, follow our ![Installation Guide] (https://github.com/vmware-serengeti/doc/blob/master/installation_guide_from_source_code.txt).
Serengeti Web Service provides RESTful API for VC resources managment and hadoop cluster spec management. It works as a proxy to invoke Serengeti provision engine and return fine-grained process execution status to caller.
Method | URL Template | Request | Response | Description |
GET | /hello | void | void | |
GET | /tasks | void | List of TaskRead | List all tasks |
GET | /task/{taskId} | taskId | TaskRead | Get task by task id |
POST | /clusters | ClusterCreate | Redirect to /task/{taskId} | Create cluster |
GET | /clusters | void | List of ClusterRead | List all clusters |
GET | /cluster/{clusterName} | clusterName | ClusterRead | Get cluster by name |
PUT | /cluster/{clusterName} | clusterName; state=start/stop/resume | Redirect to /task/{taskId} | Operate a cluster: start; stop or resume a failed creation |
PUT | /cluster/{clusterName}/nodegroup/{groupName} | clusterName; groupName; instanceNum | Redirect to /task/{taskId} | Resize cluster with a new instance number |
DELETE | /cluster/{clusterName} | clusterName | Redirect to /task/{taskId} | Delete a cluster by name |
POST | /resourcepools | ResourcePoolAdd | void | Add a resource pool |
GET | /resourcepools | void | List of ResourcePoolRead | List all resource pools |
GET | /resourcepool/{rpName} | rpName | ResourcePoolRead | Get resource pool by name |
DELETE | /resourcepool/{rpName} | rpName | void | Delete a resource pool by name |
POST | /datastores | DatastoreAdd | void | Add a datastore |
GET | /datastores | void | List of DatastoreRead | List all datastores |
GET | /datastore/{dsName} | dsName | DatastoreRead | Get datastore by name |
DELETE | /datastore/{dsName} | dsName | void | Delete a datastore by name |
POST | /networks | NetworkAdd | void | Add a network |
GET | /networks | details=true/false | List of NetworkRead | List all networks |
GET | /network/{networkName} | networkName; details=true/false | NetworkRead | Get a network by name |
DELETE | /network/{networkName} | networkName | void | Delete a network by name |
GET | /distros | void | List of DistroRead | List all distros |
GET | /distro/{distroName} | distroName | DistroRead | Get a distro by name |
true
http
proxy.domain.com
3128
*.domain.com
<TODO: Adding CLI instruction...>