API Actions: CreateCluster

API Actions: CreateCluster

 

Request Syntax:

XML

POST /api/CreateCluster HTTP/1.1
Host: use.your.host.name:82
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Content-Type: application/xml
X-Amz-Date: 20171115T202130Z
Authorization: AWS4-HMAC-SHA256 Credential= UQOPWUVNBALABCABCABC/20171115/us-east-1/cloudbasic/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date, Signature=995374189c189e8e68ed3de82c1764ca11971711fb5179eeab2b19edd883dd74
 
<CreateClusterRequest>
    <RemoteServer>52.91.179.60</RemoteServer>
    <Port>81</Port>
    <PublicKey>DFFCNBRXFYBHXKDASETJ</PublicKey>
    <PrivateKey>XYF18Dz+IgMDJSP9OwK5M0ujFhnd2yh4E3amiMLe</PrivateKey>  
</CreateClusterRequest>

JSON

POST /api/CreateCluster HTTP/1.1
Host: use.your.host.name:82
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Content-Type: application/json
X-Amz-Date: 20171115T202130Z
Authorization: AWS4-HMAC-SHA256 Credential= UQOPWUVNBALABCABCABC/20171115/us-east-1/cloudbasic/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date, Signature=995374189c189e8e68ed3de82c1764ca11971711fb5179eeab2b19edd883dd74
 
{
        "remoteServer": "52.91.179.60",
        "port": "81",
        "publicKey": "DFFCNBRXFYBHXKDASETJ",
        "privateKey": "XYF18Dz+IgMDJSP9OwK5M0ujFhnd2yh4E3amiMLe"
}

 

Request Parameters

Parameter Description Required
RemoteServer The IP or DNS Host of the second CloudBasic EC2 server being clustered.
Important: The second server need to be activated via submitting a ActivateInstance request to its API.
Yes
Type: String
Default: None
Port The default port is 81. For TLS 1.2/SSL cluster communication specify port 444 after installing SSL certificate. For more information see http://cloudbasic.net/documentation/encrypting-ha-cluster-communication/ . Yes
Type: Integer
Default: 81
PublicKey A valid public key of the second server being clustered. Yes
Type: String
Default: None
PrivateKey The private key paired with the above PublicKey. Yes
Type: String
Default: None

 

Request Headers

This implementation uses only request headers that are common to all operations. For more information please see the section Common Request Headers

 

Response Syntax:

HTTP/1.1 200
status: 200

 

Response Parameters

None
 

Error Response Syntax:

XML

HTTP/1.1 400
status: 400

<?xml version="1.0" encoding="utf-8"?>
<ErrorResponse> 
  <RequestId>request-id</RequestId> 
  <Errors> 
    <Error> {RemoteServer}:Invalid value for RemoteServer </Error> 
    <Error> {Port}:Invalid value for Port </Error> 
  </Errors> 
</ErrorResponse>

JSON

HTTP/1.1 400
status: 400

{
   "errors": [
       "{RemoteServer}:Invalid value for RemoteServer",
	   "{Port}:Invalid value for Port"
	],
	"requestId": 20
}