ROBIN Storage for Containers: Enabling Stateful Applications on Kubernetes

ROBIN Storage for Containers: Enabling Stateful Applications on Kubernetes

– ESG validated how ROBIN Storage simplifies application management, protection, and portability

– ESG validated that ROBIN Storage can bring a new set of applications into the containerized world

– ROBIN Storage brings advanced data management capabilities to Kubernetes

Learn more – ROBIN Storage for GKE and OpenShift

Abstract

This report describes how ROBIN Storage delivers bare-metal performance and enterprise data management for stateful containerized applications on Kubernetes.

The Challenges

As organizations continue to pursue digital transformation initiatives, many have adopted container technologies to streamline application needs, get applications to market faster, and make them more portable. At the same time, Kubernetes has become the orchestrator of choice for deploying, managing, and scaling containers. While development remains a key container target, more organizations are deploying containers in production applications. When ESG asked IT managers about their production container usage in 2018, 56% reported having already deployed applications in production, 24% reported testing with a plan to deploy within a year, and another 16% reported that they expected to start testing production containers in the next year.1

Why the increased interest? Container technologies abstract applications from hardware by virtualizing the operating system, which is a lightweight design that makes them efficient, reliable, scalable, and portable. Containers enable development autonomy and agility, as developers can do more on their own without IT provisioning or management. The infrastructure and staffing efficiency of containers result in lower costs and streamlined processes.

Stateless containers have no need to keep data persistent once the processes they are executing have finished. A key challenge for running enterprise-class, container-based production applications is that they are most often stateful: that is, the applications maintain data from each compute session, even when the container terminates. As a result, running applications such as databases, artificial intelligence/machine learning (AI/ML), or custom-built applications on Kubernetes requires external storage that outlasts the container. When running mission-critical processes, these applications need swift storage provisioning, predictable performance, full data protection and security, easy data sharing, and the flexibility to leverage hybrid/multi-cloud deployments.

There are numerous external storage solutions that support containers through Container Storage Interface (CSI)-compliant APIs to manage interactions between container orchestrators such as Kubernetes and storage arrays. However, these solutions do not provide the performance and data management capabilities that enterprise production applications demand. They provide storage at the volume level but cannot deliver application-level data services.

The Solution: ROBIN Storage

ROBIN Storage is a CSI-compliant, container-native, software-defined block storage solution that offers enterprise-class performance and data management capabilities for Kubernetes-orchestrated containers. It provides resilient storage (supporting HDD, SSD, and NVMe) with bare-metal performance, and has built-in data rebalancing, disk and I/O error-detection, volume rebuilds, and hotspot detection.

[button open_new_tab=”true” color=”accent-color” hover_text_color_override=”#fff” size=”jumbo” url=”/wp-content/uploads/2019/07/esg-technical-review-robin-storage-technical-review.pdf” text=”Read ESG Technical Review for ROBIN Storage” color_override=””]

ROBIN Storage: Advanced Data Management to run Stateful Applications on OpenShift

ROBIN Storage: Advanced Data Management to run Stateful Applications on OpenShift

Stateful Applications on OpenShift

Use the storage backed by engineering-engineering collaboration with Google Cloud Platform to run your mission-critical stateful applications on OpenShift. Bring advanced data management to Kubernetes-native frameworks including Operators.

Highlights

  • Get high-performance enterprise-grade storage trusted and validated by Google
  • Quickly and easily deploy enterprise stateful workloads on OpenShift
  • Protect app+data with replication, snapshots, backup & recovery, and enterprise-grade security
  • Bring automated management of app+data (not just storage) to Operators
  • Guarantee QoS for high priority applications by setting IOPS limits per application
  • Collaborate and share across geos and teams by cloning app+data in minutes »Easily move app+data, between on-prem and cloud(s)

Advanced Data Management for OpenShift

Kubernetes is gaining rapid enterprise adoption and customers are demanding the ability to run broader sets of workloads including stateful applications. Powered by ROBIN Storage, OpenShift offers support for running stateful applications such as PostgreSQL, MySQL, MongoDB, Elastic Stack, Kafka, and MariaDB which require advanced data management capabilities in order to:

  • Release products on schedule with automated lifecycle management for app+data (not just the storage)
  • Collaborate across multiple teams (Dev/Test/Ops) without procedural delays
  • Recover from system failures and user errors with app+data protection capabilities
  • Avoid infrastructure lock-in with the ability to migrate from on-prem to cloud and vice versa »Deliver predictable performance with QoS guarantee for high priority applications
  • Ensure your data is safe with authentication and encryption.

Robin Storage for OpenShift Solution

Robin.io has partnered with Red Hat to bring advanced data management capabilities with Kubernetes Operators, a method of packaging, deploying and managing a Kubernetes application, to Red Hat OpenShift-tested and validated cloud-native applications and services across hybrid and multi-cloud footprints. ROBIN Storage Operator is certified by Red Hat, is available on Operator Hub – https://operatorhub.io/?category=Storage and elevates the experience from performing data management at the storage volume level into true application-centric data management for Operators.

ROBIN Storage for OpenShift Architecture

ROBIN Storage – Benefits and Business Impact

Deliver Products Faster

Automate application management ROBIN Storage is application-aware.

All lifecycle operations are performed in the context of the app+data, not just the storage volumes. For example, when you snapshot or backup a stateful application, ROBIN Storage includes data as well as the application configuration and metadata. Automating the apps+data management saves valuable time at each lifecycle operation.

Collaborate faster across teams

With ROBIN Storage, you can clone entire application environments, and share them across teams. While developing new features, your Dev team can use a clone of the production environment as the starting point to minimize errors. Upon finishing the implementation, the Dev team can create a clone of their environment and handover to QA for testing.

Use Kubernetes-native frameworks

You can provision and manage stateful applications using Kubectl, HELM, and Operator frameworks with ROBIN Storage. Using standard frameworks helps developers be productive.

Run Mission-critical Apps Confidently

Data protection for always-on applications

ROBIN provides built-in data replication to ensure High Availability. Point-in-time snapshots for apps+data enable time-travel and recovering from user mistakes, and apps+data Backup and Restore functionality enables you to recover from application crashes and/or data center downtime (Disaster Recovery).

Experience bare-metal performance

ROBIN Storage delivers near bare-metal performance with the flexibility of software-defined storage. The superior performance enables you to run mission-critical applications that require high-performance storage.

Never miss application SLAs

High priority applications need predictable performance. You can guarantee QoS for high priority applications by setting maximum IOPS limits per application. This enables you to consolidate applications on shared infrastructure and reduce hardware cost, without worrying about the noisy neighbors issue.

Rest assured your data is secure

ROBIN Storage authenticates a user’s Kubernetes-native mechanism. Your data is encrypted at rest and in transit to ensure it is protected against unauthorized intruders. ROBIN storage also comes equipped with check-sum algorithms to make your data tamper-proof.

Future-proof your Enterprise

Cloud-native data management

Kubernetes is rapidly becoming the de-facto platform to manage applications. Cloud-native architecture powered by OpenShift, containers, and ROBIN Storage enables you to modernize your application and data infrastructure and move towards the future.

Get Hybrid and Multi-Cloud flexibility

You can easily move apps+data, between on-prem and multiple clouds. Enjoy cost-efficiencies by choosing the most economic infrastructure at any given point. Avoid infrastructure lock-in with the flexibility to run your applications where you want.

Avoid vendor lock-in

Kubernetes-based architecture gives you complete control of your infrastructure. With the freedom to move your workloads across private and public clouds, you avoid vendor lock-in. ROBIN Storage also provides you the flexibility to leverage your existing on-premises SAN/NAS/DAS infrastructure.

Stateful Applications on OpenShift Solution Brief

ROBIN Storage on Operator Hub

Advanced Data Management for OpenShift – Powered by ROBIN Storage

Advanced Data Management for OpenShift - Powered by ROBIN Storage

ROBIN Storage for OpenShift White Paper:

Manage App+Data as a Single Entity ROBIN Storage is a purpose-built container-native storage solution that brings advanced data management capabilities to Kubernetes. It is a CSI-compliant block storage solution with bare-metal performance that seamlessly integrates with Kubernetes-native administrative tooling such as Kubectl, Helm Charts, and Operators through standard APIs. ROBIN Storage is application-aware. The “Application” construct, as defined above, provides the context for all ROBIN Storage operations. All lifecycle operations are performed by treating app+data as a single entity.

For example, when you snapshot a MongoDB application, ROBIN Storage captures the entire application topology and its configuration (i.e., specs of Pod, Service, StatefulSet, Secrets, ConfigMaps, etc), and all data volumes (PersistentVolumeClaims) to create a point-in time application checkpoint.

Key Features Data Protection and Security

  • Protect app+data with replication, snapshots, backup & recovery to run always-on applications » Secure data with encryption at rest and in motion
  • Safeguard against data corruption with checksum error-detection Automated Application Management » Bring automated management of app+data (not just storage) to kubectl, Helm, and Operators
  • Enable Quick and easy deployment of enterprise workloads on any Kubernetes distribution High Performance at Scale and QoS Guarantee
  • Get high-performance enterprise-grade storage trusted and validated by Google » Experience bare-metal performance with the flexibility and scale of software-defined storage
  • Guarantee QoS for high priority applications by setting IOPS limits per application DevOps Collaboration for Stateful Applications
  • Enable collaboration across geos and teams by cloning app+data in minutes
  • Quickly share app+data among Dev, QA, and Production teams to shorten release cycles Hybrid and Multi-Cloud Flexibility
  • Enable easy movement of app+data, between on-prem and cloud(s)
  • Avoid infrastructure lock-in, run your applications on most cost-effective infrastructure

Advanced Data Management – ROBIN Storage for OpenShift White Paper

  • The Need for Data Management on Kubernetes
  • Defining and Managing An Application
  • ROBIN Storage: Manage App+Data as a Single Entity
  • Registering Helm Releases as Applications
  • App+Data Time-Travel with Snapshots
  • DevOps Collaboration using App+Data Clones
  • Backup & Restore App+Data to Recover from System Failures
  • App+Data Portability across Clouds

Learn more – Advanced Data Management for Kubernetes

Postgres Clone Database – ROBIN Storage

Postgres Clone Database - ROBIN Storage

Postgres Clone – ROBIN Storage PostgreSQL Demo

  • Use a PostgreSQL database Snapshot to create a clone
  • Verify the clone reflects the data captured in the snapshot
  • Modify the cloned database and verify the original database remains unaffected

Application cloning improves the collaboration across Dev/Test/Ops teams. Teams can share app+data quickly, reducing the procedural delays involved in re-creating environments. Each team can work on their clone without affecting other teams. In this demo, we will:

  • Use a PostgreSQL database Snapshot to create a clone
  • Verify the clone reflects the data captured in the snapshot
  • Modify the cloned database and verify the original database remains unaffected

We will see how we can clone an entire PostgreSQL database, including all Kubernetes resources such as Pods, StatefulSets, ConfigMaps, PersistentVolumeClaims, etc. with a single command.

How Google’s New Hybrid-Cloud Strategy Advancements Impact Stateful Workloads: Why IT and DevOps Teams Should Care

How Google’s New Hybrid-Cloud Strategy Advancements Impact Stateful Workloads: Why IT and DevOps Teams Should Care

Who Should View Anthos Webinar –

– DevOps
– IT Managers
– Storage Managers
– Container Specialists

ROBIN Storage for Kubernetes

Anthos Webinar | Google Hybrid Cloud Strategy for Stateful Workloads | On-Demand Anthos ROBIN Storage Webinar

Attendees will –

  • Better understand the state of the technology, and what container native storage solutions bring to modern IT.
  • Understand Google Hybrid and multi-cloud strategy and explore new solutions that have just been announced, that may change the game in how you build, deploy, and operate containers.
  • Learn how to hide complexity, while providing and maintaining richness of capability.
    Register now to join GigaOm and Robin.io for this free expert webinar.

This free 1-hour on-demand webinar from GigaOm Research brings together experts in cloud computing, storage, containers, and hybrid cloud to discuss how Google’s recent hybrid-cloud strategy Anthos announcement at Google Next ’19 changes production outlook for your IT and DevOps teams.

Featuring GigaOm Analyst, David Linthicum and a special guest from Robin.io, Radhesh Menon, this webinar explores Google’s Hybrid-Cloud strategy Cloud’s Anthos announced at Google Next, and how that technology can change your outlook on both development and ability to modernize Stateful applications.

Storage for stateful containerized applications is a fundamental building block of applications on hybrid clouds, leveraging containers, container orchestration, and other parts of that emerging ecosystem. While the focus for container-based applications has been stateless, the ability to maintain state both within and between containerized applications has been a core requirement that DevOps and IT. View this webinar to take the mystery out of running stateful applications in containers and managing using Kuberneteshttps://en.wikipedia.org/wiki/Kubernetes with Google Cloud can enable hybrid- and multi-cloud strategy through its new solution, Anthos.

Who Should View:

  • DevOps
  • IT Managers
  • Storage Managers
  • Container Specialists

Analyst

David Linthicum is a CTO and internationally renowned thought leader in cloud computing. David has spent the last 25 years leading, showing, and teaching large global enterprise organizations across all industries how to use technology resources more productively and constantly innovate.

David has been a CTO five times for both public and private companies, and a CEO two times in the last 25 years. David has published 13 books on computing and his thought leadership has appeared in Wall Street Journal, NPR, Forbes, InfoWorld and Lynda.com. He has expanded the vision of both startups and established corporations as to what is possible and achievable.

All of David’s opinions are his own.

ROBIN Storage

Postgres Deploy, Snapshot, and Rollback – ROBIN Storage

Postgres Deploy, Snapshot, and Rollback - ROBIN Storage

Postgres Deploy – ROBIN Storage PostgreSQL Demo

  • Roll back an entire PostgreSQL database
  • Including all Kubernetes resources such as Pods, StatefulSets, ConfigMaps, PersistentVolumeClaims, etc. with a single command

Snapshots allow you to restore your application’s state to a point-in-time. If you make a mistake, such as unintentionally deleting important data, you can simply undo it by restoring a snapshot. In this demo, we will:

  • Deploy a Postgres database on Kubernetes using Helm and ROBIN Storage
  • Register our Postgres database with ROBIN as an “app”
  • Incrementally add data to our database and take snapshots
  • Simulate a user error or database fault by deleting some data
  • Recover the lost data using snapshot with ROBIN Rollback feature

We will see how we can roll back an entire PostgreSQL database, including all Kubernetes resources such as Pods, StatefulSets, ConfigMaps, PersistentVolumeClaims, etc. with a single command.

ROBIN Storage – Advanced Data Management for Kubernetes

ROBIN Storage - Advanced Data Management for Kubernetes

The Need For Data Management

Stateful applications such as PostgreSQL, MySQL, MongoDB, Elastic Stack, Kafka, and MariaDB
require advanced data management capabilities in order to:

  • Release products on schedule: Automated lifecycle management for app+data (not just the
    storage) is required to save valuable time at each stage of the lifecycle. Multiple teams (Dev/
    Test/Ops) need a mechanism to collaborate without procedural delays.
  • Recover from system failures: App+data protection capabilities such as point-in-time
    snapshots, backup, and restore are required to recover from system failures and user errors.
  • Avoid infrastructure lock-in: The ability to migrate from on-prem to cloud and vice versa, and
    among the public clouds is needed to avoid infrastructure lock-in.
  • Deliver predictable performance: To guarantee QoS and to ensure high priority applications
    do not miss SLAs, you need the ability to set IOPS limits per app.
  • Eliminate security vulnerabilities: Enterprise-grade security is required with authentication and
    encryption to ensure your data is safe.

ROBIN Storage – Advanced Data Management for
Kubernetes

ROBIN Storage is a purpose-built container-native storage solution that brings advanced data management capabilities to Kubernetes. It provides automated provisioning, point-in-time snapshots, backup and recovery, application cloning, QoS guarantee, and multi-cloud migration for stateful applications on Kubernetes.

ROBIN Storage for Kubernetes – GKE and OpenShift

  • Get high performance enterprise-grade storage trusted and validated by Google
  • Quickly and easily deploy enterprise workloads on any Kubernetes distribution
  • Protect app+data with replication, snapshots, backup & recovery, and enterprise-grade security
  • Bring automated management of app+data (not just storage) to kubectl, Helm, and Operators
  • Guarantee QoS for high priority applications by setting IOPS limits per application
  • Collaborate and share across geos and teams by cloning app+data in minutes »Easily move app+data, between on-prem and cloud(s)

Learn more – Advanced Data Management for Kubernetes

ROBIN Storage: Advanced Data Management for Google Kubernetes Engine (GKE)

ROBIN Storage: Advanced Data Management for Google Kubernetes Engine (GKE)

The Need For Data Management

Stateful applications such as PostgreSQL, MySQL, MongoDB, Elastic Stack, Kafka, and MariaDB
require advanced data management capabilities in order to:

  • Release products on schedule: Automated lifecycle management for app+data (not just the
    storage) is required to save valuable time at each stage of the lifecycle. Multiple teams (Dev/
    Test/Ops) need a mechanism to collaborate without procedural delays.
  • Recover from system failures: App+data protection capabilities such as point-in-time
    snapshots, backup, and restore are required to recover from system failures and user errors.
  • Avoid infrastructure lock-in: The ability to migrate from on-prem to cloud and vice versa, and
    among the public clouds is needed to avoid infrastructure lock-in.
  • Deliver predictable performance: To guarantee QoS and to ensure high priority applications
    do not miss SLAs, you need the ability to set IOPS limits per app.
  • Eliminate security vulnerabilities: Enterprise-grade security is required with authentication and
    encryption to ensure your data is safe.

ROBIN Storage – Advanced Data Management for
Kubernetes

ROBIN Storage is a purpose-built container-native storage solution that brings advanced data management capabilities to Kubernetes. It provides automated provisioning, point-in-time snapshots, backup and recovery, application cloning, QoS guarantee, and multi-cloud migration for stateful applications on Kubernetes.

ROBIN Storage for Kubernetes – GKE

  • Get high-performance enterprise-grade storage trusted and validated by Google
  • Quickly and easily deploy enterprise workloads on any Kubernetes distribution
  • Protect app+data with replication, snapshots, backup & recovery, and enterprise-grade security
  • Bring automated management of app+data (not just storage) to kubectl, Helm, and Operators
  • Guarantee QoS for high priority applications by setting IOPS limits per application
  • Collaborate and share across geos and teams by cloning app+data in minutes »Easily move app+data, between on-prem and cloud(s)

Learn more – Advanced Data Management for Kubernetes

ROBIN Storage Video – Advanced Data Management for Kubernetes

ROBIN Storage Video - Advanced Data Management for Kubernetes

ROBIN Storage

Protect app+data with replication, snapshots, backup & recovery, and enterprise-grade security and get Hybrid & Multi-cloud portability with ROBIN Storage today!

As part of digital transformation initiatives, organizations across the globe are increasingly adopting containers and Kubernetes has emerged as the leading orchestration platform.

However, running mission-critical enterprise workloads that are Stateful on Kubernetes is still complex and challenging. Stateful applications such as PostgreSQL, MySQL, MongoDB, Elastic Stack, Kafka, and MariaDB require advanced data management capabilities in order to Recover from system failures, collaborate effectively across DevOps teams, and deliver hybrid and multi-cloud flexibility.

Introducing ROBIN Storage, the cloud-native storage with advanced data management that enables Stateful workloads on Kubernetes.

Born out of the partnership between Google and Robin.io that entails

  • Engineering to engineering collaboration to design standardized APIs for running data-centric workloads in Google Kubernetes Engine.
  • And ROBIN Storage, as the preferred storage for enterprise workloads in GKE.

ROBIN Storage is a CSI-compliant block storage solution with bare-metal performance and powerful data management capabilities which are exposed through standard APIs that seamlessly integrates with Kubernetes-native toolings such as Kubectl, Helm Charts and Operator framework.

It provides automated provisioning, point-in-time snapshots, backup and recovery, Enterprise-grade data security, application cloning, QoS guarantee, and multi-cloud migration for stateful applications on Kubernetes.

ROBIN Storage enables powerful hybrid cloud use cases such as cloning a snapshot and rehydrating in multiple Google Cloud Platform availability zones. ROBIN Storage also offers flexibility to leverage existing investments in storage infrastructure like DAS/NAS/SAN from leading vendors and also offers a single plane for advanced data management capabilities across hybrid cloud implementations.

Protect app+data with replication, snapshots, backup & recovery, and enterprise-grade security and get Hybrid & Multi-cloud portability with ROBIN Storage today!

Advanced Data Management for Kubernetes – Powered by ROBIN Storage

Advanced Data Management for Kubernetes - Powered by ROBIN Storage

The Need for Data Management on Kubernetes

Kubernetes is gaining rapid adoption and enterprise customers are demanding the ability to run broader sets of workloads including stateful applications. Running stateful applications such as PostgreSQL, MySQL, MongoDB, Elastic Stack, Kafka, and MariaDB require advanced data management capabilities in order to:

  • Release new products and features faster: Automated lifecycle management for app+data (not just the storage) is required to save valuable time at each stage of the lifecycle.
  • Collaborate quickly across teams: Multiple teams (Dev/Test/Ops) need a mechanism to collaborate without procedural delays. CI/CD pipelines solve a part of the problem with automating the collaboration for code changes, but data is usually left out.
  • Recover from system failures and user errors: App+data protection capabilities such as point-in-time snapshots, backup, and restore are required to recover from system failures and user errors.
  • Avoid infrastructure lock-in: The ability to migrate from on-prem to cloud and vice versa, and among the public clouds is needed to avoid infrastructure lock-in.
  • Deliver predictable performance: To guarantee QoS and to ensure high priority applications do not miss SLAs, you need the ability to set IOPS limits per app.
  • Eliminate security vulnerabilities: Enterprise-grade security is required with authentication and encryption to ensure your data is safe.

Defining and Managing An Application

Kubernetes provides many useful constructs such as Pods, Controllers, PersistentVolumes etc. to help you manage your applications. However, there is no construct for an “Application”, i.e. a single entity that consists of all the resources that form an application. Users have to manually map the resources to an application and manage each resource individually for any lifecycle operation. The lack of a proper Application construct in Kubernetes poses a problem when it comes to performing operations that encompass a group of resources.

Frameworks such as Helm and Operators try to solve this problem by packaging resources together, but they do not solve it beyond the initial deployment. For example, how would one snapshot, clone or backup an entire helm release that spans PersistVolumeClaims, Secrets, ConfigMaps, StatefulSet, Pods, Services etc? Or how about snapshotting a web-tier, app-tier and database-tier each deployed separately using 3 different kubectl manifest files?

  • The Need for Data Management on Kubernetes
  • Defining and Managing An Application
  • ROBIN Storage: Manage App+Data as a Single Entity
  • Registering Helm Releases as Applications
  • App+Data Time-Travel with Snapshots
  • DevOps Collaboration using App+Data Clones
  • Backup & Restore App+Data to Recover from System Failures
  • App+Data Portability across Clouds

Learn more – Advanced Data Management for Kubernetes