article

Introducing KraftCloud

At Unikraft we're introducing KraftCloud a next generation cloud platform powered by technology intended to work in millisecond timescales.

· 4 min read
At Unikraft we're introducing KraftCloud a next generation cloud platform
powered by technology intended to work in millisecond timescales.

Painful cold starts, slow auto-scale times, minutes-long waits for compute nodes to be up: these are standard headaches that cloud engineers have to deal with, and work-around, on a daily basis. Much of this stems from the fact that cloud infrastructure relies on technology that was never intended to be reactive in millisecond scales, or at least within the round-trip time of a user request.

At Unikraft we’re introducing KraftCloud, a next generation cloud platform powered by technology intended to work in millisecond timescales. KraftCloud is the culmination of years of award-winning reseach (see here or here) into lightweight virtualization, showing that it is entirely possible to have extremely efficient and nimble deployments that still retain the strong isolation and security of virtual machines. We’re currently in closed beta: fill out a brief signup form at https://kraft.cloud/signup, get an access token within 24 hours, and get started with this quick start guide.

But before you get started, I wanted to list some of the KraftCloud features we’re excited about and that make us informally call it the millisecond platform:

  • Death to cold starts: Cold starts are a pain and lead to a number of complex workarounds. On KraftCloud, cold starts are a thing of the past: services can start in as little as 10 milliseconds, and 20 milliseconds on average (depending on the app size). And technically speaking these numbers are our platform’s cold starts/worst case performance. See this blog for more information.

  • Scale to Zero: We find it illogical that users pay for idleness. If KraftCloud isn’t doing useful work for you, then we don’t charge you for it. We can detect idleness in short time scales (e.g., < 1 second) and automatically scale down your service to zero. See this blog for more information.

  • Immediate autoscale : Imagine a world where auto-scale happens in windows of milliseconds, perfectly tracking increases and peaks in your traffic. No need to rack one’s brain with complex workarounds such as algorithms trying to predict peaks, or having to have pre-heated instances. You can even run your CPUs hotter, triggering autoscale at higher CPU loads.

  • Low price point: each instance is highly optimized and small which allow us to stuff lots more into a single server than with conventional technology; we pass those savings onto our users.

  • Secure and minimal TCB: If your application doesn’t use a line of code, either in a library, service or the kernel itself, then it doesn’t make it into the deployed image. This results in a minimal Trusted Computing Base and much fewer vectors for attack. In addition, all KraftCloud instances benefit from strong hardware isolation.

  • Massive server density: Efficient images translates to us being able to stuff many more on them on a single server than with standard technologies, up to thousands. This has the added benefit of resulting in a smaller carbon footprint.

  • Tiny images: Measured in MBs, not GBs or hundreds of MBs. Cheaper to store, easier to share. ‘nuff said.

In addition to these features, we are passionate about making the KraftCloud user experience as frictionless as possible. There are be multiple ways to deploy workloads on the platform, including Kubernetes, Docker and TerraForm integrations, a REST API for programmatic interaction with the platform and support for kraft, Unikraft’s native tool. For instance, getting started on KraftCloud is as easy as:

Terminal window
# Install on macOS, Linux, and Windows:
curl -sSfL https://get.kraftkit.sh | sh
# Login to KraftCloud:
export KRAFTCLOUD_TOKEN=token
# Deploy your first application:
kraft cloud --metro fra0 deploy --scale-to-zero -p 443:8080 nginx:latest

Further, the platform provides a registry of ready to run images, and the possibility to build your own images through the OSS project and upload them to the registry, or to provide code snippets and run them, serverless-style. For more information see KraftCloud’s documentation

Language and Application Support

KraftCloud supports a wide range of programming languages, frameworks and applications: see the platform’s app guides.

We’re constantly improving this support; please let us know if you don’t see your favorite app, framework or language on there and we’ll take a look at adding it.

Get early access to the KraftCloud Beta

If you want to find out more about the tech behind KraftCloud read our other blog posts, join our Discord server and check out the Unikraft’s Linux Foundation OSS website . We would be extremely grateful for any feedback provided!

Sign-up now