Friday, 8 May 2015

What is Force12?

Force12 Dynamic Container Autoscaling

Force12 monitors demand on a cluster and then starts and stops containers in real time to repurpose your cluster to handle that demand.

Force12 is designed to optimize the use of an existing cluster in realtime without manual intervention.

VMs cannot be scaled in real time and neither can physical machines but containers can be started or stopped at sub second speeds. This potentially allows a cluster to adapt itself in real time, producing the optimal configuration to meet current demand.

For example, in response to a traffic peak worker services performing low urgency tasks
can be stopped and web services started. When the traffic peak ends the cluster can reconfigure itself to kill off web services and create more worker instances again.

Force12 optimises the use of the cluster resources available right now - existing VMs or physical servers.

Router Analogy

The Force12 approach is analogous to the way that a network router dynamically optimises the use of a physical network. A router is limited by the capacity of the lines physically connected to it - adding additional capacity is a physical process and takes a long time.

Network routers therefore make decisions in real time about how to best use their current local capacity. They do this by deciding which packets will be prioritized on a particular line based on the packet's priority (SLA). For example, at times of high bandwidth usage a router might automatically prioritize VOIP traffic over web browsing or file transfer.

Force12 can make similar instant judgements on service prioritisation within your cluster because using containersit can start and stop services near real-time.

Network routers can only make very simplistic prioritization judgments because they have limited time and cpu and they act at a per packet level. Force12 has the capacity to make far more sophisticated judgements but to start with it won't - simple judgements are proven to work in a network so let's start there and worry about greater sophistication later.

The Force12 demo is a bare-bones implementation that recognises only 1 demand type: randomised demand for a priority 1 service. When this fluctuating priority 1 (P1) demand has been met, then a priority 2 (P2) service will utilize whatever cluster resource remains.

The demo demand type example has been chosen purely for simplicity.


Force12 can be configured to actively monitor real time system analytics (queue lengths, load balancer requests etc) and then instantly reconfigure your systems to respond to current conditions.

Force12 will allow your cluster to adapt in an organic, real time fashion to handle whatever unpredictable events the outside world throws at it, without you having to anticipate those events.

Only the incredible speed of container startup and shutdown makes this possible.

No comments:

Post a Comment