Call for round the year submissions for Rootconf in 2019

Submit a proposal at any time in the year on DevOps, infrastructure security, cloud, and distributed systems. We will find you a suitable opportunity to share your work.

Propose a session

Asterix - Deploying Webapps on Kubernetes for Dummies

Submitted by Dhruv Goel (@dhruvg-qubole) on Friday, 17 May 2019

Section: Full talk Technical level: Intermediate Session type: Lecture

Abstract

Is Kubernetes hard to learn? For most people, it’s a yes. For some, it’s a no.

As an application developer, do you need to learn about Kubernetes - Probably no.

We will share a story about how certain “some” people enabled certain “most” people to run their apps on Kubernetes without having to learn about its intricacies.

Why is Kubernetes hard to learn?
It’s hard because Kubernetes is an attempt to standardize disparate set of tools built in different companies under vastly different circumstances and various other constraints like time, money, and talent.
Naturally, Kubernetes has introduced tons of options to do a variety of things which need not be learned by application developers to successfully run web applications using Kubernetes.

For instance, requirements for a typical web application developer are very simple - an endpoint to access the web app and being able to specify the config, memory and CPU requirements of the app. However, typically the following Kubernetes constructs are required to achieve this - deployment, configmap, service and ingress.

Asterix is an attempt to abstract out these Kubernetes specific constructs and build a simplified interface for developers who just want to run their apps without getting into the complexities of infrastructure world.
Asterix not just abstracts out the working details of an application, it also helps in debugging infrastructure problems.

This was done by exploiting common patterns in typical applications and building simple abstractions/framework around those.
For e.g. running a stateless web application requires just a single API call to run in Asterix. Even custom memory and CPU can be provided in the same API call.
Routing, authentication, and scaling of apps is taken care of by the framework without involvement from developers.
The framework also:
- runs the applications in an efficient manner and avoids resource fragmentation by doing bin-packing of containers on Kubernetes worker nodes.
- avoids resource leakage by autoscaling the worker nodes dynamically.
- helps app developers find the live logs and log history easily.
- provides an always available cluster (For some definition of availability) to application developers by keeping some spare capacity in the cluster all the time.

This talk will share the journey in building this framework which hopefully will inspire the community to build simplified interfaces on top of Kubernetes.

Outline

Speaker bio

Software Developer with the Cluster Management Team at Qubole Inc.

Comments

  • saurabh hirani (@saurabh-hirani) 5 months ago

    Hi Dhruv,

    Thanks for submitting the proposal. I had the following queries:

    1. Is Asterix an open source tool? Or is it something that is in the process of being open sourced? If it is an internal proprietary tool and is geared more towards code that the audience won’t have access to v/s an architecture that the audience can refer to - then it won’t provide value to them.
    2. Can you please add a preview video explaining the flow - this seems to be a good talk for a before/during/after type of a talk where you present the state of the world before Asterix came in, the problems you faced, how Asterix was designed and finally how it solved specific problems.

Login with Twitter or Google to leave a comment