Use Cases

Choosing the Best Approach to Hybrid Cloud

Jan 11, 2018

Amr Abdelrazik


7 min read

Editor's note - This blog post reflects our hybrid cloud efforts in early 2018. To learn more about hybrid cloud on DC/OS, see Introducing Hybrid Cloud Capabilities in DC/OS 1.11: Regions, Zones, and Linked Clusters.
Hybrid cloud is one of the top strategic initiatives of many IT organizations. While the term "hybrid" has many definitions, we refer to the most advanced definition of hybrid cloud, which is the ability to run your applications simultaneously across multiple clouds. True hybrid cloud capability provides the elasticity and flexibility you need in order to quickly respond to business demands.
Organizations that understand the strategic importance of a hybrid cloud strategy and successfully execute it enjoy the following benefits:
  • Faster time to market for applications by developing and architecting applications and associated data services once to run on any cloud
  • Unlocking advanced capabilities like disaster recovery, bursting, and on-demand dev/test environments
  • Reducing infrastructure cost by optimizing efficiency of cloud and on-premise datacenter resources
  • Improved productivity of ops teams by using a single set of operational procedures regardless of cloud provider, infrastructure type, or location
  • Reduced risk of vendor lock-in and increased negotiation leverage with cloud providers and vendors
But now you might wonder, if hybrid cloud makes all of that possible, why isn't everyone doing it?
Why organizations struggle with hybrid cloud
The challenges facing organizations embracing a hybrid cloud strategy stem from the wide discrepancy between cloud providers in terms of architecture, API's, and capabilities, especially compared to on-premise solutions that have been clearly defined for many years. Organizations trying to embrace hybrid cloud frequently find it out of reach because of the following challenges:
  • Architecting, configuring and securing every cloud requires dedicated skills and expertise, and usually results having seperate teams per cloud (or super humans).
  • Application deployment, configuration and sometimes even architecture are different across clouds, placing significant burden on app development teams to develop, test, and troubleshoot applications.
  • Data, the cornerstone of all applications, may not be transferable between clouds due to size, transfer cost, transfer time or security & compliance requirements.
  • Some mission critical legacy applications (for example those written for and running on mainframes) may not be movable because they are incompatible with cloud technologies.
While there are many tools available that attempt to solve for hybrid cloud challenge, majority of these tools are designed to solve one of the above challenges. For example, Terraform is an excellent tool for provisioning resource management on the cloud but it only solves the architecture challenge and has limited functionality on on-premise bare-metal servers. Other tools like Docker and Kubernetes simplify the application deployment experience, but they don't cover the data challenge. Also tools like Amazon Snowmobile can migrate massive amounts of data from your datacenter, but it only sends data to one of the cloud provider (AWS). As a technology leader, you need a solution that solves multiple challenges or you will ultimately end up managing a complex mess and reminiscing about the days when you could simply manage applications in your own datacenter.
The above challenges are further complicated as organizations move up the cloud stack from the basic IaaS services layer toward some of the managed cloud services such as databases, message queues, CI/CD, etc. Organizations frequently face a hard choice between the ease of use of cloud-based managed services (at the expense of being permanently locked into these expensive cloud services), or managing everything and coping with the added complexity and operational overhead themselves.
There is a better way.
Hybrid Cloud With Mesosphere DC/OS
Mesosphere Datacenter Operating System (DC/OS), which was built on Apache Mesos, is similar to traditional operating systems but on a different level of abstraction that allows you to treat multiple physical or virtual servers as a single powerful machine. Standardized operating systems such as Microsoft Windows and Linux abstracted the underlying hardware and provided a unified experience for users and app developers. As a result of that abstraction, the experience of deploying and operating an application is identical on any Microsoft Windows machine regardless of hardware components, which in turn unleashed a world of developer and user productivity.
Mesosphere DC/OS extends the same concept for data centers and clouds. By abstracting the underlying datacenter or cloud infrastructure, operators and application developers have a consistent experience across clouds. Instead of managing silos of applications and systems, DC/OS allows you to run all your application and services together consistently anywhere.
Mesosphere DC/OS accelerates your hybrid cloud journey
The following capabilities are required to easily deploy and scale your applications in a hybrid cloud scenario:
  • A unified way of managing and operating infrastructure resources across cloud providers
  • A standardized application architecture, configuration and operation across clouds that covers greenfield (Docker and microservices) and traditional applications (J2EE, C++)
  • Simplified and standardized deployment and operation of advanced services such as databases, message queuing, and analytics.
Let's explore how Mesosphere DC/OS accelerates hybrid cloud strategies with the following capabilities:
Unified operations experience, with an infrastructure/cloud agnostic platform
Whether it's servers in the cloud or on premise, DC/OS abstracts and standardizes the infrastructure resources and the associated operating system resources to units of CPU, memory, and disk. With standard management tools and interfaces, operators can run and operate applications and services consistently on any cloud provider.
Unified application architecture with open source tools
DC/OS provides developers, operators and data scientists with the freedom to use their favorite open source application, CI/CD or data services. By using open source tools, application builders can ensure applications are easily portable across cloud and avoid being locked into proprietary APIs, interfaces and services from cloud providers. Application services available include Marathon to run traditional applications (such as J2EE, C++), Kubernetes for Docker container orchestration, and a wide choice of open source data services such as Spark, Kafka, Cassandra, Elastic, HDFS, TensorFlow and more.
The DC/OS Catalog provides a growing ecosystem of over 100 open source and vendor supported application and data services. Many of these services can be installed and customized quickly and easily via a GUI.
Cloud-like operations experience with app-aware scheduling
Mesos two-level scheduling (app-aware scheduling) automates many service-specific operations such as installation, failure recovery, scaling and upgrades.This automation was built in collaboration with the subject matter experts of these technologies to provide an easy-to-use high-availability cloud-like experience. The result is reduced administrative overhead, increased uptime, and accelerated adoption of new services and technologies.
Powered by production-proven open source technology
Mesosphere DC/OS is powered by Apache Mesos, a production proven technology with more than 7 years in production in small, medium and large scale deployments. Mesosphere DC/OS also dramatically improves resilience and uptime. The Mesos architecture separates the application-level scheduler from the underlying resource management. This results in a resilient platform for mission critical workloads that transparently scales from tens to tens of thousands of nodes.
Mesosphere technology is trusted by more than 100 customers including :
Hybrid Cloud Customer Example: Royal Caribbean Cruise Line
Royal Caribbean Cruise Line is a leading global cruise line serving millions of guests annually with a fleet of more than 40 ships serving more than 100 worldwide destinations. Royal Caribbean provides a seamless guest experience from initial booking to shoreside excursions.
The cruise line built their services on Mesosphere DC/OS because it met several key criteria:
  • Hybrid Cloud Portability: With Mesosphere DC/OS RCCL was able to maintain a unified application architecture and operations experience across on-premise corporate data centers running on bare-metal, cruise ship datacenters running on VMware vSphere, and Dev/test infrastructure running on Amazon AWS.
  • Corporate and Edge Cloud Integration: A seamless customer experience between land and at sea requires running global service with data locality. Data ingestion and persistence across clouds without high-bandwidth connections are key.
  • Innovation through Open Source: Facilitate innovation with an open platform and avoid highly customized solutions.
  • High Availability and Automation of "Day 2 Operations": Eliminate planned downtime and service windows outside of drydock, and enable simplified and unattended operations at sea.
  • High Efficiency and Elasticity: Fine-grained resource sharing of distributed data services and microservices to pool workloads, maximize utilization, and minimize cost.
Learn more about Digital Transformation in Tourism & Hospitality
The tourism and hospitality industry has an opportunity to grow its business if it can successfully navigate changing consumer expectations and technology trends. Consumers today expect a seamless, personalized experience with nearly instant gratification.

Ready to get started?