Stabile Basics

Stabile is an open-source platform for managing infastructure running virtualized workloads and services. Stabile supports management through a web client, declarative configuration and automation through the API or the CLI.

The name Stabile was inspired by the use of the word in Ursula K. Le Guin’s writings, which are set in a fictional universe.

A bit of history

In the IT operations business we are currently somewhere along a containerization hype cycle. Those who have been long enough in the business, remember previous hype cycles. The virtualization hype cycle definitely reached the plateau of productivity with VMware as the uncontested winner. Later OpenStack and the open source community tried to challenge this – initially with plenty of momentum, but OpenStack now seems to be permanently stuck in the through of disillusionment. Meanwhile IaaS and the “cloud” have had a party of their own with AWS et el., which to some extent makes the quest to unseat VMware from the server room throne all but obsolete. Currently container orchestration is the new hot kid on the block, and will supposedly make even orchestration of VM’s, and more generally orchestration of hardware ressources, obsolete. This is of course not entirely true. Everything ultimately runs on hardware, and while it’s great that Docker and Kubernetes are open source, they provide little help in managing your basic compute, storage and network infrastructure. So – the net effect of this new paradigm is to move things even faster out of the server rooms, and onto infrastructure orchestrated by Amazon, Google and Microsoft, which may be great or not so great, depending on your viewpoint. Open it is not.

Stabile is all about open infrastructure

If you have no desire to tinker with hardware, and mainly want to write your code, containerize your application and deploy it to some pre-configured Kubernetes environment, you should probably just look to some of the great cloud offerings out there.

Stabile tries to fill a gap in the market we feel there is for those who, for whatever reason, prefer to manage their own basic infrastructure, but don’t have the urge or the economy to employ a department of sysadmins and license managers to do so.

What Stabile is and can do

Stabile provides you with:

  • A managed and scalable environment for deploying and running VM’s from virtual images using KVM.
  • A model for assembling collections of pre-configured virtual images, compute, storage and networking ressources into declarative configurations packages which together describe how an application is deployed. We call these packages “Stacks”.
  • A set of pre-built stacks for quickly running and easily managing standard Linux servers, including a Kubernetes stack, which will set up an auto-scalable Kubernetes environment in seconds.
  • A PXE-boot environment for easy joining of hardware nodes
  • Automated management of storage ressources using ZFS
  • Automated management of network routing and network access to your VM’s using iptables, dnsmasq, proxyarp, Linux bridging, etc.
  • Automated backup using ZFS storage snapshots
  • Basic monitoring and reporting
  • Simple metering suited for billing purposes

What Stabile is not and cannot do

  • Stabile is not a container orchestration platform. We may provide the ability to run containers directly on Stabile hardware nodes sometime in the not-too-distant future, but for now, Kubernetes and containers run inside VM’s on Stabile.
  • Staile is currently in beta, and is not ready for running production or Internet-facing workloads. Stabile should only be used for internal workloads for now, more specifically for test and development environments.

Stabile Components

If none of the above has made you loose interest in our product, strap in, and go ahead with reading about the main components of Stabile.

The Stabile Web Client and the Stabile API are organized around the ressources that Stabile tries to manage and orchestrate. They are:

  • Engines and Nodes: The hardware that a Stabile installation runs on
  • Stacks: Packaged applications that run on a Stabile infrastructure
  • Servers: The VM’s that run on Stabile nodes
  • Images: The virtual images the VM’s boot from and use for storage
  • Network: Your VM’s connections to each other and the outside world
  • Users: User accounts and their privileges