Global Financial Services Leader Modernizes Big Data on Robin

Global Financial Services Leader Modernizes Big Data on Robin

Migrating from Cloud to Cloud-Native; Accelerating your ELK deployment; Modernize Your Financial Stack

April 2020: Robin.io Newsletter

April 2020
Robin.io Newsletter

Migrating from Cloud to Cloud-Native; Accelerating your ELK deployment; Modernize Your Financial Stack

In this issue:
  • [Intellyx Analyst Brief] Migrating from Cloud to Cloud-Native
  • [White Paper] Unlocking the Full Potential of Your ELK Stack on Kubernetes
  • [Blog] App Modernization is an Imperative for Financial Services

Download Now

March 2020: Robin.io Newsletter

March 2020
Robin.io Newsletter

With over 12 million customers and $125 billion in assets under management, this Fortune 500 financial services organization is America’s leading homeowner and auto insurance company.

In this issue:
  • Forcing Functions: Economic Uncertainty and Infrastructure Modernization
  • Wasted Cloud Spend to Exceed $17.6 Billion in 2020
  • Modernize Your ELK Stack
  • Application and Infrastructure
  • Topology Awareness

Download Now

Robin Storage for Containers: Enabling Stateful Applications on Kubernetes

Robin Storage for Containers: Enabling Stateful Applications on Kubernetes

RobinStorage for Containers: Enabling Stateful Applications on Kubernetes | Robin.io

– 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=””]

Advanced Data Management for OpenShift – Powered by Robin Storage | White Paper

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
  • Robin for Databases

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.

Postgres Deploy, Snapshot, Rollback Robin Storage | Demo Video

Postgres Deploy, Snapshot, and Rollback - Robin Storage

Postgres – Robin Storage PostgreSQL Demo

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 Google Kubernetes Engine (GKE) | Solution Brief

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

Advanced Data Management for Kubernetes – Powered by Robin Storage

Advanced Data Management for Kubernetes - Powered by Robin Storage

Robin Storage White Paper

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