AWS

There are several options for deploying Remoting SDK services to Amazon Web Services (AWS) using the Elastic Cloud Computing (EC2) service.

Manual Deployment

At its simplest, an EC2 instance is just a regular (virtualized) Linux or Windows machine that you can have full control over. So to run a Remoting SDK server, you can simply boot up a new EC2 instance of your choice (or use an existing machine that already runs other services for you), and deploy your server as described in the topics on deployment for Linux and Windows, respectively.

Automatic Deployment from S3

Starting with Remoting SDK 9.1, you can also use the ROStarter tool to automatically deploy and run your servers on EC2 instances from S3.

ROStarter is a handy tool that will automatically download the latest version of your server and all related files from an S3 bucket, and run it. This way, all you need to do to deploy new versions of your server is to upload a copy to S3 and start or restart new EC2 instances.

This also helps with scalability and failover support by best leveraging AWSs strengths in this area. You define a base image (AMI) for your EC2 instances (either creating one manually or by using the one provided by RemObjects Software) which contains only a static copy of ROStarter, but no other state and no specific version of your actual server software. You can then start and stop EC2 instances from that image as you see fit, and they will grab the correct version of your server software, and other data, automatically. When servers fail, or more servers are needed to cope with client requests, simply boot up more.

Using the Predefined ROStarter AMI

Getting started with the predefined ROStarter AMI is easy.

  1. Simply log into your AWS Console and start a new server instance with the ROStarter AMI, linked below.
  2. Configure the User Data field of the instance with information about and access keys to the S3 bucket that contains your server, using the snippet below as starting point.
  3. Upload your server to the S3 bucket in question.
  4. Launch the instance(s).
  • Coming soon, as Remoting SDK 9.1 enters beta.

Example User Data

The user data for ROStarter uses a simple ini-style format of value pairs. You can also add your own values and use them from your server.

RO_AWS_S3_Bucket=my-server-bucket
RO_AWS_S3_Prefix=subfolder/with/server
RO_AWS_S3_RegionEndPoint=s3-sa-east-1.amazonaws.com
RO_AWS_AccessKeyID=AK............HA
RO_AWS_SecretAccessKey=7C....................18
RO_BaseFolder=~/rostarter

The RO_AWS_S3_RegionEndPoint, RO_AWS_S3_Prefix and RO_BaseFolder settings are optional.

Beta Notes

Note: ROStarter is an upcoming feature for a future release of Remoting SDK (currently planned for version 9.1). More details will be provided when it enters beta, and exact details may be subject to change between now and release.