Robin Systems built its business on the notion that even stateful applications — databases and other data-centric workloads — could achieve the benefits of containerization with an application-centric approach.
Its stack originally included its own internally-built orchestrator, but seeing Kubernetes as the de-facto industry standard for container orchestration, the company has decided to embrace it and build upon the robust ecosystem developing around it, according to Partha Seetala, Robin Systems chief technology officer.
“Companies are struggling to onboard data-centric applications onto Kubernetes today. Why is that?” Seetala said. It’s not from lack of choices on the networking storage side, he said, noting 28 companies aligned with the Cloud Native Computing Foundation providing storage for Kubernetes and 24 companies providing networking.
There remain three primary challenges he said:
- Databases: Databases are not built as microservices, while Kubernetes is a microservices platform: You don’t just create a bunch of parts and put a load balancer on it and scale it up. They have their own topology, cluster management and more.
- Storage and data management: Kubernetes allows you to run multiple workloads on the same physical hardware, but you tend to start having noisy neighbors. Kubernetes by itself does not have storage management capabilities; there’s no easy way to guarantee SLAs. Also, data-centric applications have needs around locality. That’s hard to enforce in a Kubernetes cluster.
- Networking: Kubernetes is complicated, requiring care in the way you set it up and for services running outside the Kubernetes cluster to be able to communicate with those running on it.
In a nutshell, there are too many parts, too many things to manage.
“While you want to focus on an application, you wind up with a lot of infrastructure-related management,” he said.
Robin decided to take a fresh look at this, starting at the application level, to define the needs of the database, its underlying infrastructure and Kubernetes.
Hyperconverged means taking application workloads — deploy, snapshot, clone, map, backup — and paring pair them with data management and network management capabilities and an orchestration piece like Kubernetes. It provides native storage, compute and network, and an application management layer to control them so that DevOps and IT operations are simplified.
Robin provides the ability to do self-service deployment of big data, databases and AI/ML workloads, share entire experiments among team members, quickly do what-if trials, scale resources including GPU and IOPs, and migrate as well as recreate entire application environments across data centers and clouds.
The technology starts with Kubernetes, then adds an application-aware storage fabric built from the ground up. It’s built with an understanding of what an application topology means.
“If it understands that, you can start building primitives in the storage stack that are application-centric. … Set so no part consumes more than a certain number of iops, do those sorts of things,” he said. Then it adds a software-defined networking layer.
“You don’t just want to expose Kubernetes and networking and storage … someone should be able to define a YAML file that says, ‘My app is made up of these services. These services have this topology. The topology requires these resources and should scale to the level I define,’ “ he said.
“If you have that interface, developers don’t have to understand any of the underlying technology. No storage knowledge required, no network knowledge required, no Kubernetes knowledge required… They understand the application, and it’s very easy for them to write the YAML file. Once they do that, they can start exposing features such as scaling or upgrades or backup at the application level. This application manager can drive the underlying storage, Kubernetes or virtual networking to achieve these tasks. That’s what the whole Robin stack is.”
The hyper-converged Kubernetes platform features include the ability to:
- Provision, scale, clone and migrate big data and databases with one click
- Go back to a certain point between application states
- Clone the entire application including data
- Perform one-click backup and restore for the entire app
- Upgrade any application in a failsafe manner
- Meet performance SLAs with one-click control quality of service for each app
- Enable data and application mobility across clouds
“Enterprises have traditionally had to develop custom workflows per application to deploy and manage databases and applications in their Big Data/AI/ML pipelines,” said Premal Buch, CEO of Robin Systems. “The process requires IT and DevOps to undertake lengthy third-party integrations as well as a tedious, manual, repetitive process for each on-premise and cloud installation. This only leads to high cost, complexity, and delayed time-to-value. With hyper-converged Kubernetes, Robin eliminates time and cost drain for IT and DevOps and empowers them to achieve faster roll-out of critical initiatives.”
Jay Lyman, principal analyst at 451 Research, noted that software that brings workloads such as big data, artificial intelligence, machine learning and IoT together with container and Kubernetes-based infrastructure and application lifecycle management can help enable agility and efficiency for these data-rich and data-heavy applications.
The Cloud Native Computing Foundation is a sponsor of The New Stack.
Feature image via Pixabay.