A step by step guide for manual setting up ScaleOut StateServer in AWS

Kekayan
4 min readDec 1, 2018

--

I wanted to keep a note on what i did to setting up the ScaleOut StateServer in AWS EC2 instances. Because cloud vendors don’t support multicast .So we have to use unicast here.So it’s a bit difference process.I am just sharing a draft here.Hope it will be helpful

Why State Servers?

Spurred by the growth of Web-based applications running on server-farms, a new category of data is beginning to play a key role in driving high performance. Called workload data, this information claims the unique properties of being simultaneously mission critical, frequently accessed, and often short lived. Workload data can either be generated by the application or it can represent data cached from recent access to a database server. Examples include intermediate business logic state, Web session-state, and cached data sets.

Distributed caching enables server-farms to meet the new performance, scalability and availability challenges created by the management of workload data.

above quoted paragraph taken from scale-out white paper explains well.For the full paper click here .

more links

Redis vs ScaleOut

Now Dive in to setting up ScaleOut State Server

  1. Register and Get the Trail license

You can get evaluation license for 30 days which limited to 1 host server here.But in this guide we are going to create a grid with at least 2 scaleout host servers.So you have to mail them and get the evaluation key for that we can mail to support@scaleoutsoftware.com to obatain a demo license according to our need for demo purposes which have 60days of time .

2. Create an EC2 Instance

Login to your aws console and select EC2 Services and Launch instance.I am selecting ubuntu 18.04 AMI and t2.micro instance which is on free tier.I am going with default VPC and moving forward important part is in the “Step 6: Configure Security Group” here we have to setup TCP rule over the port 720–724 to our vpc network and the remote client/application server ips.Yoiu can find your VPC network sub net ip in VPC service since i am using default it will be 172.31.0.0/16 .

sample security group

Finally create the key and launch the instance.

create 2nd instance by clicking launch more like this

Then create two elastic ips and associate with instances .If you feel any difficulty ask in comment section :) .

2.Install SOSS / ScaleOut StateServer

ssh to your instances from terminal. I am doing parallel in both instances

To download scaleout stateserver run

wget https://www.scaleoutsoftware.com/pkg/soss_5.8.1.331_amd64.deb

To install

sudo dpkg -i soss_5.8.1.331_amd64.deb

3.Configurations

Now add license and change other parameters

cd /usr/local/soss
nano soss_params.txt

Change below parameters

  1. net_interface — 172.31.0.0 (our vpc IPv4 )
  2. subnet_mask — 255.255.0.0 (since vpc cidr is 16)
  3. use_multicast — 0
  4. license_key — the one you obtained from mail
  5. gateway_ip — the public ip of the instance
  6. auto_join — 1

After the changes save the text file. And run terminal command

SOSS restart

so changes will take effect

Then disconnect from existing group by

soss disconnect

And create a new host group in the first server you do only.

soss create_group

In the second server just change as above without creating group run below command to join that group

soss add_host privateip of the 1st host
other servers

now run query to check the host group servers

soss query all

This will display group of ips.

You can now use your client to communicate with the state server :)

If you are interested to know more on how to add retrieve update data.how to write callback function when TIME-TO-LIVE is over comment to the post I ll write in next post

Thank you

--

--

No responses yet