Autoscaling

One of the single best features of using cloud servers, is the ability to add servers to a cluster on demand.

Here is a useful article about autoscaling and why you should consider in in your application design.

https://blog.codeship.com/autoscaling-purpose-strategies/

(Read more...)

AWS ELB upgrade - Layer 7 Load Balancing

AWS have announced Application (level 7 on the osi model) Load Balancing.
I've been using HA Proxy to achieve this for a while now.
Load balancer diagram
What does this mean to us?
You can now load balance and direct traffic to a 'target group' of servers. This means you can use on ELB for a website whilst using multiple server groups for each microservice. For instance anything with /api in the url can get directed at a different group to those with /backend in the url. In current setups we are using subdomains to do this, api.webdomain.com and backend.webdomain.com.

Having Application Load Balancers will allow us to simplify and reduce the number of ELBs needed, thus saving money.

This and more features can be found on amazon's blog. https://aws.amazon.com/blogs/aws/new-aws-application-load-balancer/

 

(Read more...)

Happy birthday WWW

25 years ago, 1991, the WorldWideWeb was created.

The first website is still there. http://info.cern.ch/hypertext/WWW/TheProject.html

Back in the days when a NeXT was the best machine in the world. Thanks Steve.

 

(Read more...)

AWS biggest instance

Wow, today I noticed that AWS now provides a truly massive instance. By request at the moment.

vCPU ECU Memory (GiB) Instance Storage (GB) Linux/UNIX Usage
x1.32xlarge 128 349 1952 2 x 1920 SSD $16.006 per Hour

Above is the EU-WEST-1 (Ireland) pricing for an on demand instance. That equates to $384 per day.

I'm not sure we've seen a workload that could justify this monster. When configuring a cluster we would usually use smaller and many instances to match the load more closely.
In a monolithic environment this could be used as a single SAP HANA node or similar?

Of course we will update you when we find one in production.

(Read more...)

What does DevOps or the Ops team do?

TLDR;

Automate all the things, and stop things going wrong.

Automation:

Create tools and services to automate all aspects of IT and Development infrastructure. Automate the builds of new servers, the monitoring (checking stuff does what it is supposed to do), and any useful tools in between.

Tools:

My team often write tools that allow the building of an entire environment (such as UAT) at the touch of a button. The idea is the developer wants to test some new function or bug fix without effecting the rest of the team. Easy (you might build it locally on your laptop with Vagrant or similar) unless you want to integrate the test with other company systems, such as a back end store which runs the reports, or billing programs for instance.
Fortunately with some other tools that all ready exist, such as AWS API and puppet, our team can create a configuration file (or two) and give you the option of creating your test environment and destroy it afterwards (the cloud flexibility that means you don't pay for what you don't use), at the touch of a button, on the screen.

Monitoring:

Graphs and statistics are important for any server environment to know when you are testing the limits of the capacity. You need to know stuff like disk space used, memory used, requests for data from your app, so you can quickly find where bottlenecks and performance limits may be found. And while these things are monitored for statistics, a couple of extra tools can provide automatic scaling (adding or removing servers from a cluster or load balance group), self healing (build a new server if a previous one dies or crashes) and alerting for when the tool to auto recover isn't written yet and you need an actual engineer to check it out.

If this sounds like something you would like to find more about, contact us here

 

(Read more...)