This document is intended to describe the technology, concepts, and theory behind the Scale Computing Platform Cloud Unity platform. It is presumed that the reader is familiar with the basic theory of operations for Scale Computing HyperCore and SCRIBE and high-level components and operations of an SC//HyperCore cluster.
DESIGN GOALS
Scale Computing’s architecture has always been designed to provide simple, scalable, and highly available compute and storage services with the intelligence and automation built into SC//HyperCore and SCRIBE. As a ‘private cloud’ which operates on-premises, SC//Platform provides a cloud-like experience with the security of on-premises hardware. Leveraging the ubiquity of public cloud providers was a natural extension of the capabilities offered by SC//Platform.
Nested virtualization, supported natively by our core KVM hypervisor, has been a feature since 2012. With nested virtualization, hardware extensions (CPU, VMX) enable the ability to create hypervisors-in-hypervisors. Combining the performance, stability, and simplicity of SC//HyperCore, native nested virtualization and the elastic resources offered by cloud providers creates the foundation for an ideal platform to diversify workloads and create hybrid cloud environments.
For Scale Computing’s commitment to ease of use, it was imperative to simplify the connectivity problem inherent in cloud solutions. Creating and running workloads on a public cloud platform is half of the equation. Plumbing those compute instances on a discrete, public cloud to a private enterprise network is challenging. With the maturity of software-defined networking technologies such as VXLAN and full support for the prevailing open-source SDN technologies built into the Linux kernel, SC//Platform Cloud Unity provides a turn-key, zero-config network fabric to extend your ground and cloud topologies easily and without confusing (and potentially costly) VPNs.
Google Compute Engine (GCE) is Google’s cloud platform and shares the same hypervisor (KVM) as SC//Platform. This is the basis for SC//Platform Cloud Unity.
SCALE COMPUTING PLATFORM CLOUD UNITY OVERVIEW
SC//Platform Cloud Unity is an Infrastructure-as-a-Service (IaaS) offering, providing the capabilities of SC//Platform in a cloud-hosted environment with built-in ground-to-cloud networking. In essence, virtualized SC//HyperCore nodes run on another KVM instance, hosted by GCE. Hypervisor-in-hypervisor is allowed by nested virtualization and is the key feature that unlocks the power of SC//HyperCore running on GCE.
Flexibility
One of the principal advantages that cloud providers have always had is the fact that you can have your resources be demand-driven and elastic. You can create virtual machines that match specific needs and requirements with virtual computing. Often, virtual configurations can be achieved which would be either impossible or exceedingly costly with physical hardware.
The same advantages are in-place with SC//Platform Cloud Unity. Virtual computing instances, or Virtual Single Node Appliance Configurations (vSNACs), can also be designed and configured with resources to meet specific needs for performance or storage which would otherwise be impossible to achieve with commodity, off-the-shelf (COTS) hardware.
Unique Advantages
With a cloud provider, the underlying physical hardware is obfuscated from the virtual guest computing instances that are created. As with SC//Platform, the virtual guests are presented with virtualized hardware, VIRTIO disks and NICs, virtual display adapters, etc.; virtual nodes have virtual components presented to them from GCE. A given Windows guest VM running on SC//Platform would have no awareness of the underlying, physical hardware that the system is using to create a virtual disk. In the same fashion, a vSNAC is not aware that it is running on a cloud platform as opposed to physical x86 hardware.
Scale Computing Platform Cloud Unity Gateway
The SC//Platform Cloud Unity Gateway is a micro-VM that provides connectivity to the virtual nodes running in Google’s cloud as well as SC//HyperCore VMs running in the cloud. The remote virtual nodes have a built-in, software-defined networking endpoint that is linked to a static, public IP address. The SC//Platform Cloud Unity gateway VM is not a proprietary SC//HyperCore VM (there is no such thing) and can be exported and run on any hypervisor. The only fully-tested configuration for remotely running the SC//Platform Unity Gateway VM is currently on an SC//HyperCore cluster or SNAC.
For tests or actual disaster recovery declarations, the SC//Platform Cloud Unity Gateway still remains a critical component for accessing your cloud node. The core requirements for the SC//Platform Cloud Unity Gateway VM are an x86-capable hypervisor and Internet access. It is designed only to be run remotely. The SC//Platform Cloud Unity nodes which run on Google already have the components for the software-defined networking modules built into the image, and an SC//Platform Cloud Unity Gateway VM is not required to be running on a cloud instance. Specifically, the SC//Platform Cloud Unity Gateway will need outbound TCP port 22 access (ssh) in order to establish the initial connection between the gateway and the cloud node.
SCALE COMPUTING PLATFORM CLOUD UNITY DETAILS
Cloud Overview
The SC//Platform Cloud Unity currently runs on Google’s Compute Engine (GCE), which is part of their suite of cloud-based offerings.
Ultimately, these providers are offering demand-based resources, with granular billing on an infrastructure that is invisible to the end-users. These resources can be hosted databases, log-analysis buckets, or virtual machines. Cloud computing offers the appeal of not having to manage or deal with any underlying hardware or physical infrastructure. Ideally, it would also be complemented by an easy UI/orchestration layer that enhances the ease of use.
The simplification of the experience is what SC//Platform delivers as well, in a private cloud that is on-premises. You use a simple web-based interface to create and provision VMs, without having to manage or coordinate the underlying compute and storage resources.
SC//Platform Cloud Unity Physical Layer
SC//Platform Cloud Unity is an extension of SC//Platform, designed to run on cloud infrastructure, rather than physical, on-premises x86 hardware. With nested virtualization, it is possible to allow for virtual SC//HyperCore nodes to be created on cloud infrastructure.
As cloud providers guarantee fault tolerance and data consistency on their hardware, and in what they present to computing guests running in their cloud, the management of physical hardware components and ensuring their availability to on-premises hardware is not required. There is no need to create a node or a cluster with multiple disks for redundancy, no need for multiple power supplies, or to monitor temperature values or SMART attributes for disks. The virtual nature of the hardware allows for performance to meet the performance profiles of your on-premises SC//HyperCore clusters.
As a single node with a large pool of resources that are managed by the cloud provider, the need to create clusters for high availability is also deprecated. Clustering provides performance, fault tolerance and scalability. However, clustering is a very complicated endeavor - whether it is a file system, volume, group of compute nodes, or distributed storage. Clustering concepts add sophistication, but also complexity.
Storage
For SC//Platform Cloud Unity VM storage, a persistent disk is presented to the virtual Cloud Unity nodes. The disk provides consistency and a guaranteed number of IOPS.
Compute
For compute resources, the physical hosts providing the compute layer have a variety of CPU platforms available. In the case of SC//Platform Cloud Unity nodes, Scale Computing chooses to leverage Intel Haswell and newer platforms to take advantage of the VT-X extensions from Intel, which enable nested virtualization.
Google presents threads to virtual machine guests as cores, and at a clock speed which matches the platform.
Management
As SC//Platform Cloud Unity nodes are simply virtualized SC//HyperCore nodes, the management of the remote node is as if there were another physical node on-premises or at another data center. The SC//Platform Cloud Unity node is accessible via the configured IP address and managed with the same HyperCore UI as physical systems.
With the enhancements to remote-cluster monitoring and visibility, an at-a-glance view of the SC//Platform Cloud Unity instance is available within the ground cluster console.1
1 Requires HCOS version 7.4 or later
SCALE COMPUTING CLOUD UNITY DISASTER RECOVERY
SC//Platform Cloud Unity DR is a fully-managed Disaster Recovery-as-a-Service (DRaaS) offering that is entirely built on SC//Platform Cloud Unity.
Turn-key Disaster Recovery
SC//Platform Cloud Unity DR extends the functionality of SC//Platform Cloud Unity to provide end-to-end disaster recovery and workload protection.
Combining the flexibility of SC//Platform Cloud Unity, the power of the SC//Platform Cloud Unity Gateway to provide seamless ground-cloud-ground networking, and native SC//HyperCore replication yields a holistic data protection offering.
Scale Computing Platform Cloud Resource Efficiency
SC//Platform Cloud Unity DR leverages the built-in replication of SC//HyperCore and the SC//Platform Cloud Unity Gateway network simplicity to provide a cloud-based platform to both protect and run your workloads. While there is a wide spectrum of SC//Platform Cloud Unity DR offerings, some of which have resources that equal physical systems, running resource-intensive virtual nodes constantly in order to replicate data on Cloud Unity can be costly.
However, SC//Platform has a unique advantage: replicating data is a low-overhead process, eliminating a need to run an instance equivalent to your physical system in order to replicate. You can replicate your desired set of VMs actively from your physical system, but the replication target runs in a passive mode. The passive mode VM is a fixed-size instance that is small enough to run the required replication services without unnecessary overhead. A passive-mode VM consumes a fraction of the resources required of an active node, and thus offers considerable savings over the cost of running an active-mode full-time for replication purposes.
The active mode SC//HyperCore VM instance has enough RAM and CPU allocated in order to run the workloads required to properly declare and institute a full disaster recovery scenario. Active mode is only required during a disaster declaration or test.
As the diagram illustrates, the passive instance requires a few cores and a small amount of memory. This is the standard mode for replicating data. The active instance has more cores and memory and is designed to run workloads.
When a DR declaration is required or a test is underway, the instances can be resized from a passive to an active mode within a few minutes.
SUMMARY
The hybrid cloud functionality of SC//Platform Cloud Unity is the next evolution in extending hyperconverged infrastructure into the cloud while still preserving the simplicity at the heart of SC//Platform. SC//Platform Cloud Unity uniquely combines on-premise and cloud infrastructure concepts by leveraging the efficiency, resiliency, and scalability offered by Google’s Compute Engine in concert with the simplicity, scalability, reliability, and affordability of SC//Platform.
With the foundation in place for a true hybrid cloud that is affordable and accessible with SC//Platform, the path for further innovation has been paved. Scale Computing and Google will continue to develop and enhance SC//Platform Cloud Unity and the Google Compute Engine respectively, with the opportunity for additional functionality coming in the future.
If you are interested in learning more about SC//Platform Cloud Unity, please contact Scale Computing at 877.SCALE.59.