Deploys an additional replica process of an existing application replica set onto an existing host, which may be a shared host running processes of several replica sets. As a precondition, the host must be eligible for the deployment: in particular, the HTTP port used by the replica set must be free on the host and the server directory must be available. If the host is not eligible, the request fails with an error describing the reason (check port and directory). On success, the newly deployed replica process is returned.
| Webservice Type: | POST |
| Output format: | json |
| Mandatory query parameters: |
regionId, region where the replica set and the host are located, e.g., eu-west-1
replicaSetName, name of the replica set a replica of which is to be deployed; used as the hostname to which the
domain name is appended, as well as for the database and RabbitMQ exchange name
hostId, the AWS instance ID of the existing host on which the new replica process shall be deployed
|
| Optional form parameters: |
keyName, the name of the SSH key to use; must identify an existing SSH key by that name in the region specified
and will be used to log on to existing and new instances using a root ssh connection. If not specified, the
key used to launch an instance will be used for trying to connect to it, and a private key with matching name
for the respective region will be looked up.
privateKeyEncryptionPassphrase, the pass phrase to decrypt the private key for the key specified by the keyName parameter
replicaReplicationBearerToken, the bearer token the new replica will use to replicate its master server; defaults to the
bearer token of the user authenticated for this request. Note that this requires the
server processing this request to share the security information from security-service.sapsailing.com, too.
memoryInMegabytes, can be used to specify the absolute amount of heap size used for the Java VM running the replica process; if not
specified, memoryTotalSizeFactor may be used (see below); if that isn't used either, heap size
is computed based on the amount of memory available on the instance, not considering any swap space available.
memoryTotalSizeFactor, can be used if memoryInMegabytes is not used; it roughly specifies how many processes are intended to be run on the
host; e.g., if 4 is specified, approximately 1/4 of the physical memory available (not considering swap space) is
assigned as the process's heap space. If neither memoryInMegabytes nor memoryTotalSizeFactor are specified then
the amount of memory is calculated automatically based on the amount of physical memory available on the host.
igtimiRiotPort, the port on which the process shall listen for iGtimi RIOT connections; if not specified, no such port is configured.
timeoutInMilliseconds, timeout in milliseconds to wait for responses from nodes when analyzing the replica sets
existing in the region; if not specified, waiting will not time out.
|
| Request method: | POST |
| Example: | curl -X POST -d 'regionId=eu-west-2' -d 'replicaSetName=mynewevent' -d 'hostId=i-0123456789abcdef0' -d 'keyName=Horst' --data-urlencode 'privateKeyEncryptionPassphrase=HorstsSuperSecretPassword' -H 'Authorization: Bearer RwGK+DV38LKjeuDu+Bx87/3blLJHD7Ff+NCLeud9nRQ=' "https://sapsailing.com/sailinglandscape/api/landscape/deployreplicatoexistinghost" produces output describing the deployed replica process:
{
"host": {
"instanceId": "i-0123456789abcdef0",
"name": "SL Multi-Server",
"availabilityZoneId": "euw2-az1",
"availabilityZoneName": "eu-west-2a",
"privateAddress": "172.31.36.221",
"publicAddress": "18.130.0.1"
},
"port": 8081,
"serverDirectory": "/opt/sailing/mynewevent"
}
|