All

OnApp Cloud architecture, hardware specs and networking

In the early days of OnApp, way back when, we published a blog post that gave you a shopping list of recommended hardware you needed to build your own cloud with OnApp software. I thought it was probably time we updated it…

Over the past 9 years, the range of features in the OnApp cloud platform has increased significantly, to make it even easier to become a cloud provider. For example, we now have our own software defined storage system that means you don’t need an external SAN array – making it much more affordable to start out.

However, the basic architecture of OnApp has remained the same: in order to get started you need a Control Panel Server, a Backup Server (optional, but strongly recommended) and a minimum of 2 Compute Resource servers (also known as Hypervisors). The diagram shows a basic overview of how these server component work together with networking and storage in your OnApp cloud:

As your environment scales up, you will find the need to add more Compute Resources to enable more storage capacity and CPU & RAM resources. You can also scale out Backup Servers to provide more capacity for additional templates and backup storage, as well as being able to run more simultaneous transactions.

 

Control Panel

The Control Panel is the brains of OnApp; it hosts the OnApp interface (UI), database and handles all cloud orchestration processes in your environment.

Here’s what the UI looks like in its default look & feel – you can change the theme to suit your own company’s brand:

 

OnApp Control Panel Server specs

The OnApp Control Panel can either be virtualized (on a separate environment) or run on a bare metal server. Whichever you choose, you will need  something with these specifications:

  • 8 CPU Cores
  • 32GB RAM
  • 2 x 250G disks (presented in RAID1)
  • 2 x 1Gbps+ NICs

OnApp Control Panel Server network config

OnApp Cloud default network configurationIn terms of networking, the Control Panel will need a public interface (so you and your customers can connect to it from their local machines) and a private management network that will be used for internal management traffic between the Control Panel, Backup Server(s) and Compute Resources. It is possible to NAT the public access here on one private interface if you configure it on your firewall.

The diagram shows OnApp’s default network configuration. Other configurations are possible, or required depending on what kind of storage you’re using, or if you’re using OnApp with VMware. Our cloud architecture team is always happy to advise.

This default configuration assumes you’re using software-defined storage in a KVM based OnApp cloud.

 

Backup Server(s)

Backup Server(s) in OnApp not only store backups, and templates that are used in your Cloud, but also offload performance-intensive tasks away from the Compute Resources (hypervisors) – tasks such as amending disks and deploying virtual servers. This helps to ensure maximum performance for your cloud environment.

OnApp Backup Server specs

While the amount of Storage you want to have will depend on what your environment looks like (e.g. size of data stores, number of virtual servers, frequency/retention of backups), the specification of your Backup Servers should look something like this:

  • 8 CPU Cores (for example: Intel Xeon Scalable Bronze 3106 or similar)
  • 32GB RAM
  • 2TB+ SATA Storage (mounted locally in RAID5, 6 or 10)
  • 1 x 1Gbps+ NIC
  • 1 x 10Gbps+ NIC

OnApp Backup Server network config

Networking-wise, the Backup Server will be totally isolated from the Internet and will have a connection to the Management Network and the Storage Network. When using our Software Defined Storage, it is required to use a minimum of a 10Gbps interface for this – if you want additional throughput, you can bond multiple interfaces together as well.

 

Compute Resources

In OnApp, Compute Resources are the servers that run the Xen or KVM hypervisors that virtualize hardware resources and make them available for deploying virtual servers (virtual machines) and other virtual appliances in your cloud.

Compute Resource specs

Depending on the use case, or planned size of your environment, the specifications you will need for Compute Resources will vary significantly. In general we find our customers get much more bang for their buck if they use high specification servers. When using our Software Defined Storage, there is a small overhead to run the Storage Controllers, and this is much less noticeable when running large capacity servers.

A good specification to start with would be something like the following, allowing you to create potentially hundreds of virtual servers for your clients:

  • 2 x 12c/24t CPUs (for example: Intel Xeon Scalable Gold 5118 or similar)
  • 196GB RAM
  • 4 x 1TB SATA/SSD/SAS Disks (for Virtual Server Storage)
  • 1 x 500GB SSD/NVMe Disk (for a Caching disk)
  • 2 x 1Gbps+ NICs
  • 1 x 10Gbps+ NIC

Compute Resource network config

For networking, Compute Resources require access to 3 isolated networks:

  • Management network – for internal management traffic between the Control Panel, Backup Server(s) and Compute Resources
  • Storage network – for communication between Compute Resources and Backup Server(s) in order to read/write to and from the physical disks and data stores: this requires at least 1 x 10Gbps+ NIC
  • Appliance network – for providing virtual servers with connectivity to the Internet or to each other. You can use a 1Gbps interface for this, but it is recommended that 10Gbps is used if you plan on having a large number of virtual servers

Other Options

What we have discussed so far is how to setup a basic cloud, but we have some additional options that you may want to include in your cloud offering.

Using other Storage Options: while using our Software Defined Storage is by far the most popular option for OnApp customers, you are still able to connect to an external SAN, or even use local storage.

Software Defined Networking: with our 6.0 release, you are now able to connect to an OpenDaylight SDN Controller in OnApp to provide VXLAN support and lots of additional features in the future.

Federation: sometimes you don’t want to have to build an entire new cloud if you want to open a new location. The OnApp Federation allows you to subscribe to locations all around the world and white-label them as your own, without the additional CAPEX of buying hardware. OnApp has an integrated marketplace that lets you spin up new locations very quickly: the infrastructure is provided by other OnApp cloud providers around the world.

On Demand: the Federation gives you instant access to compute resources in other clouds, but what if you need new cloud locations that are totally isolated and private to you? With On Demand we can provide you with an entire cloud, including OnApp and the cloud infrastructure, in 70 locations worldwide. It’s fully managed by our global support team, do you can focus on running your business and not have to worry either about CAPEX on hardware, or having the technical staff to manage cloud infrastructure.

If you are an existing customer and would like any advice or have any questions about deploying a new Cloud, feel free to reach out to the architecture team (architecture@onapp.com) to discuss.

If you are not currently a customer at OnApp, we’d love the chance to show you a full product demo of all of our offerings, and how you can create additional value for your business by offering additional cloud services. You can reach out to us here. Thanks!