Kubernetes for Stateful Applications Running databases, big data and AI/ML workloads in enterprise

Kubernetes for Stateful Applications Running databases, big data and AI/ML workloads in enterprise

Enterprise cloud-native requirements demand a robust platform that can support stateless and stateful workloads along with the necessary performance and SLA guarantees. Robin Hyper-Converged Kubernetes platform is built from the ground up to deploy enterprise applications. With an App-Store model for deploying stateful applications, Robin provides agility to DevOps teams with enterprise-grade performance. Introduction In today’s competitive market, enterprise IT faces an unenviable task of supporting innovation while enabling support for a variety of complex applications. Whether it is new applications with stateless architectures or existing stateful data-intensive applications, IT is expected to be the core part of the innovation team by empowering developers with right abstractions and enabling an agile workflow from developer laptop to production. In order to meet the demands of modern enterprise, IT has embraced cloud-native as the core pillar of their modernization strategy.

Kubernetes is the standard for container orchestration in the cloud-native ecosystem. Kubernetes, developed by Google and now part of Cloud Native Computing Foundation (CNCF), is an open source container orchestration engine used for the deployment, scaling and management of containers. The increase in market demand for Kubernetes is driving the platform as the standard for container orchestration. A vibrant ecosystem has emerged around Kubernetes, increasing the momentum of the project.

In the past two years, more organizations are using Kubernetes in production. According to a recent CNCF survey, 58% of respondents are using Kubernetes in production. This number will increase in the coming years as more enterprises go cloud-native. This trend is further highlighted by the report released by Dice and Indeed.com. Their report claims Kubernetes was the top job searched in 2018 and this trend will grow further in 2019. The advantage of Kubernetes lies in the low operational overhead, easier DevOps and a better abstraction for developers to deploy their applications. Kubernetes supports both on-premises and cloud-based deployments. The support for hybrid/multi-cloud deployments makes Kubernetes attractive for enterprises.

Get the White Paper – Kubernetes for Stateful Workloads

Oracle-as-a-Service with Kubernetes – Solution Brief

Oracle-as-a-Service with Kubernetes - Solution Brief

Automate your Oracle infrastructure using cloud-native architecture. Improve the agility and efficiency of your Developers, DBAs, and BI teams.

Highlights – Oracle-as-a-Service with Kubernetes

  • Provision Oracle databases, including Oracle RAC clusters, on Kubernetes in minutes
  • Provide self-service experience to improve developer and DBA productivity
  • Clone and share databases and applications among Dev, QA, and Prod teams within minutes
  • Actively synchronize Production and Dev/ Test databases without impacting performance
  • Time-travel to point-in-time application states using snapshots
  • Scale-up/scale-out dynamically in minutes, without interrupting database operations
  • Migrate your customized Oracle databases and EBS applications to cloud without refactoring
  • Consolidate multiple Oracle RAC clusters to reduce hardware and licensing cost

Top 5 Challenges for Oracle-as-a-Service Management

DevOps culture demands faster provisioning and Dev/Test refreshes: Traditional methods of creating IT tickets take weeks to provision new databases or to provide dev/test refreshes of production databases. With release cycles shrinking, developers need much faster turnaround times.

Dynamic scaling to meet sudden demands: If a Database Server runs out of resources, there is no easy way to scale-up the node “on-the-fly” by adding more memory or CPU. Scaling-out Oracle RAC clusters can also take weeks due to process delays.

Massive licensing and hardware costs: Creating dedicated clusters for individual “tenants” (teams, workloads, applications etc.) is required due to challenges with performance isolation. Each cluster is deployed for peak capacity, leading to significant licensing and hardware costs.

Cloud migration: Migrating Oracle databases and customized applications (e.g. EBS) to cloud is not easy. Lift-and-shift is the easier approach but does not bring the benefits of cloud-native architecture, and refactoring applications to make them cloud-native is expensive and time-consuming.

High availability and auto-failover: Oracle RAC licenses and additional hardware is needed for HA, adding to already high costs.

Robin Hyper-converged Kubernetes Platform

Robin Hyper-converged Kubernetes platform extends Kubernetes with built-in storage, networking, and application management to deliver a production-ready solution for Oracle. Robin automates the provisioning and management of Oracle databases so that you can deliver an “oracle-as-a-service” experience with 1-click simplicity to developers, DBAs, and BI teams.

Solution Benefits and Business Impact

Robin brings together the simplicity of hyper-convergence and the agility of Kubernetes.

Deliver Insights Faster

Self-service experience

Robin provides self-service provisioning and management capabilities to developers, DBAs, and BI teams, significantly improving their productivity. It saves valuable time at each stage of the application lifecycle.

Provision databases in minutes

Robin has automated the end-to-end database provisioning process for Oracle, including Oracle RAC. The entire provisioning process is a 1-click operation and takes only a few minutes.

Agile Dev/Test refreshes

You can clone databases with 1-click and share among Development, QA, and Operations teams. Getting a Dev/ Test refresh from a production database only takes a few minutes and is completely self-service. Moreover, the Robin’s copy-on-write cloning method significantly reduces storage requirements. Robin’s unique “TestMaster” utility also keeps Prod and Dev/Test copies in sync without causing any performance impact on Production databases.

Scale on-demand

No need to create IT tickets and wait for days to scale-up Database Servers by adding more memory, CPU, or Storage, or to sale-out by adding more nodes to Oracle RAC. Cut the response time to few minutes with 1-click scale-up and scale-out.

Reduce Costs

Improve hardware utilization

Robin provides performance isolation with min/max IOPS control for guaranteed QoS, and role-based access controls (RBAC) to consolidate multiple Oracle workloads without compromising SLAs, reducing hardware cost.

Reduce licensing costs

Robin uses container technology, providing better performance/CPU and eliminating the VM performance penalty. The ability to scale as you need also means you don’t overprovision CPUs. As a result, you reduce Oracle licensing costs.

Simplify lifecycle operations

Native integration between Kubernetes, storage, network, and application management layer enables 1-click operations to provision, scale, snapshot, clone, backup, migrate for Oracle databases and applications, reducing the administrative cost.

Future-proof your Enterprise

Standardize on Kubernetes

Modernize your data infrastructure using cloud-native technologies such as Kubernetes and Docker. Robin solves the storage and network persistency challenges in Kubernetes to enable its use in the provisioning, management, high availability and fault tolerance of mission-critical Oracle deployments.

Migrate to public cloud

Robin provides easy cloud migration for Oracle databases as well as customized multi-tiered Oracle applications such as EBS. Simply containerize and clone your entire application cluster, including data, and migrate to the public cloud of your choice.

No vendor lock-in

Kubernetes-based architecture gives you complete control of your infrastructure. With the multi-cloud portability, you have the freedom to move your workloads across private and public clouds, you avoid vendor lock-in.

Get Oracle-as-a-Service with Kubernetes – Solution Brief


Infographic: Building Stateful Cloud Applications With Containers

Infographic: Building Stateful Cloud Applications With Containers

Tips From Top Thinkers

Building Stateful Cloud Applications With Containers

The continued expansion of the cloud, growing end-user application performance demands, and an explosion in database needs are all stacking up fast against enterprise IT teams. When it comes to building enterprise database and big data applications, many are finding that container technology solves for at least a few of these problems. Here are stats and tips from top thinkers on how to best use containers when building stateful cloud applications.

Persistent Storage is a Top Challenge

26% of IT professionals cited “persistent storage” as a top challenge, when it comes to leveraging containers.

Streamline Until It Hurts “Some of the best writers have said they refine their work by cutting till it hurts. Containers are the same way.” Eric Vanderburg Vice President, Cybersecurity | TCDI

Isolate Containers & Hosts “Maintaining isolation between the container and hosts system by separating the file systems is vital towards management of the stateful application.” Craig Brown, PhD Senior Big Data Architect & Data Science Consultant

Select an Intelligent Orchestrator “An intelligent orchestrator along with a softwaredefined storage with software-defined networking is very essential for running a cloud-based application.” Deba Chatterjee Senior Engineering Program Manager | Apple

A Majority of Enterprises are Investing in Containers

69% of IT pros reported their companies are investing in containers 69

Validate All States “What they all (containerized stateful apps) have in common is the requirement to reliably validate all possible states and state transitions when changes are made to the application.” Marc Hornbeek Principal Consultant – Dev Ops | Trace3

Ensure You Can Monitor All Containers “Containerised applications are addictive. They can be created, tested and deployed very quickly when compared to traditional VMs. The infrastructure to begin monitoring a potentially vast and varying number of new containers is essential.” Stephen Thair Co-Founder | DevOpsGuys

Ofset Workloads with Containers “Stateful applications often reside in 1 or 2 geographical locations and take heavy loads … and at diferent times during peak and of-peak periods. Understanding these variables will enable an operations team to determine how to best design the use of container applications.” Steve Brown Director, DevOps Solutions N.A. | Lenovo

Top Container Orchestrators Now More Popular Than DevOps Tools

When choosing a platform, 35% felt Docker was the best fit for them among all DevOps tools

Get Infrastructure Pros Excited “A lot of people focus too much on the fact that “those application guys” are coming to mess with our infrastructure, instead of thinking that maybe we can elevate our own jobs and start working more closely with applications.” Stephen Foskett Proprietor | Foskett Services

Follow Design Microservices Principles “One of the fundamental aspects of containers is moving to immutable application infrastructure, which means that you cannot store state and application in the same container.” JP Morgenthal CTO Application Ser

Don’t Use Containers for Data Storage “When dealing with stateful applications, precautions need to be taken to ensure that you are not compromising or losing data.” Sylvain Kalache Co-Founder | Holberton School

Looking for more advice on building your stateful cloud application with containers? Download our full eBook today for more exclusive advice from top cloud, DevOps, and container technology pioneers.

Core Elements to Running an Oracle Database Using Docker

Want to Try Running Oracle Database Using Docker Yourself?

Connect with our solutions team. You will be running production ready Oracle clusters using Docker in no time.

I want to Run Oracle Database on Docker

Core elements to run an Oracle Database using Docker from Robin Systems on Vimeo.

Core Elements to Running an Oracle Database Using Docker

In the last few years, Docker has been widely adopted in the stateless application space. Large enterprises have now started to explore the idea to use Docker to run stateful database and big data applications as well. Docker containers are light-weight, portable, and provide a great alternative to VM based virtualization while ensuring bare-metal grade performance. Running Oracle Using Docker is now a breeze with Robin Hyper-Converged Kubernetes Platform

Running Oracle Using Docker

See Docker Benefits In Action – Consolidate, Agility, QoS

In this joint webinar by Robin Systems and Oracle Corporation, we will go over the essentials that you need to run the Oracle database inside a Docker container. We will also explore the core elements required to use containers to consolidate databases without compromising performance while guaranteeing isolation and no manageability changes.

During the demonstration, you will see how the various different database lifecycle management tasks can be done with just a click of a button on the Robin Hyper-Converged Kubernetes Platform.

Deba Chatterjee, Director of Products, Robin Systems

Deba Chatterjee is the Director of Product management at Robin Systems. Prior to his current role, he was the product manager at Oracle Corporation responsible for the Oracle Multitenant option and Oracle Diagnostics and Tuning packs.

Before product management, Deba worked for the performance services team in Oracle Product Development IT, where he was responsible for the performance of large data warehouses.

He has previously worked at Oracle Consulting, Oracle India, Michelin Tires in Clermont-Ferrand, France, and Tata Consultancy Services. Deba has a Master’s in Technology Management – a joint program by Penn Engineering and Wharton Business School.

Gerald Venzi, Senior Principal Product Manager, Oracle

Gerald Venzl is a Senior Principal Product Manager for Oracle. During his career he has worked as a Developer, DBA, Performance Tuner, Software Architect, Consultant and Enterprise Architect prior to his current role. This allowed Gerald to live several different lives in the IT sector, providing him with a solid understanding of the concerns in those individual areas while gaining a holistic view overall. In his current role, Gerald focuses on evangelizing how to build systems that provide flexibility yet still meet the business’ needs.

Robin for Relational Databases – Oracle

Robin Sytems on Vimeo

On-demand Webinar: Containerizing Oracle: Not Thinking About It Yet? You Should Be!

Containerizing Oracle

Robin Hyper-Converged Kubernetes Platform for Oracle

Still running your databases on underutilized bare metal servers? Looking to consolidate your databases and reduce license costs, but not create an OS sprawl? If the answers are YES, then watch this on-demand webinar to see how Linux container technologies like docker and LXC can help.

We explore how to use containers to consolidate databases without compromising performance, while guaranteeing isolation and no manageability changes. We examine and contrast other prevalent consolidation approaches, along with the roadblocks they present and how containerization helps you overcome those problems.

We show you how to:

  • Configure an Oracle database on LXC
  • Apply IO resource management on your Oracle database running in a container
  • Simplify database lifecycle management tasks with single click clone, time travel

Core Elements to Running an Oracle database using Docker

The core elements are:

  • Storage
  • QoS
  • Data Sharing
  • Availability

Storage: How do I configure storage for the Oracle database running in a Docker container?

In my opinion, this is probably the most important question when considering running an Oracle database using Docker. Running a database in a container actually provides the unique opportunity to decouple the compute from the storage.

QoS: How do I consolidate without worrying about noisy neighbors?

One of the key virtues of virtualization is the ability to share the system resources across many applications. While traditional VM based virtualization has seen some adoption in Dev and Test systems, the inability to ensure predictable performance has forced enterprises to use bare metal servers for production databases.

Data Sharing: How do I share data across environments?

I am often asked this or a slight variation of this question – “Will I be able to share data across Dev and Test environments if I run my application database using Docker?” The answer is Yes, if you plan and configure your storage correctly.

Availability: Can I ensure application availability across machine failures?

As I mentioned above, handling failover or relocation (read as managed failover) of the database instance by moving the container from one host to another is a very important requirement for running databases in general. Today a similar capability exists in RAC One but it requires a dedicated and often an idle machine for instance failover. Not to mention the extra license cost.

Oracle full-stack deployment on Robin Hyper-Converged Kubernetes Platform

On-demand Webinar: Containerizing Oracle: Not Thinking About It Yet? You Should Be!

Controlling IOPS in an Oracle Database with Robin

Oracle as a Service on Kubernetes Solution Brief

More Robin Hyper-Converged Kubernetes Platform Demos and Videos

Controlling IOPS Oracle Database

Relational Databases

No Compromise Database Consolidation

[button color=”accent-color” hover_text_color_override=”#fff” size=”large” url=”/solutions/relational-databases/” open_new_tab=”true” text=”Learn More” color_override=””]

More Robin Hyper-Converged Kubernetes Platform Demos and Videos