Hybrid clouds: a reminder for beginners

Hello, Habrovsk citizens! According to statistics , the cloud services market in Russia is constantly gaining strength. More than ever, hybrid clouds are trending - even though the technology itself is far from new. Many companies are considering how appropriate it is to maintain and maintain a huge fleet of iron, including, situationally needed, in the form of a private cloud.

Today we’ll talk about in which situations the use of a hybrid cloud will be a justifiable step, and in which it can create problems. This article will be useful to those who previously did not have serious experience with hybrid clouds, but are already looking at them and do not know where to start.

At the end of the article, we present a checklist of tricks that will help you in choosing a cloud provider and in setting up a hybrid cloud.

All interested, please go under the cut!

Private Cloud VS Public: Pros and Cons

To understand what causes the business to move to a hybrid, let's look at the key features of public and private clouds. We focus primarily on those aspects that are somehow related to most companies. To avoid confusion in terminology, we give the following basic definitions:

Private (or private) cloud is an IT infrastructure whose components are located within the same company and only on equipment belonging to this company or cloud provider.

A public cloud is an IT environment, the owner of which provides services for a fee and provides a place in the cloud for everyone.

Hybrid cloud consists of more than one private and more than one public cloud, the computing power of which is shared.

Private clouds

At its high cost, a private cloud has several advantages that cannot be ignored. This is a high controllability, data security, full monitoring of resources and equipment operation. Roughly speaking, a private cloud meets all the ideas of engineers about the ideal infrastructure. At any time, you can adjust the architecture of the cloud, change its properties and configuration.

No need to rely on external suppliers - all infrastructure components remain on your side.

But, despite strong arguments for, a private cloud can be very expensive at the start and in the subsequent maintenance. Already at the stage of designing a private cloud, it is necessary to correctly calculate the future load ... Saving at the start can lead to the fact that sooner or later you will encounter a lack of resources and the need for growth. Scaling a private cloud is a complex and expensive process. Each time you have to buy new equipment, connect it and configure it, and this can often take weeks - against almost instant scaling in the public cloud.

In addition to equipment costs, it is necessary to lay financial resources for licenses and personnel.

In some cases, the balance of “price / quality”, or rather, “the price of scaling and service / benefits obtained” is finally shifted to the price side.

Public clouds

If only you own the private cloud, then the public cloud belongs to an external provider that allows you to use your computing resources for a fee.

At the same time, everything related to the support and maintenance of the cloud falls on powerful "provider" shoulders. Your task is to choose the optimal tariff plan and pay on time.

Using a public cloud for relatively small projects is an order of magnitude cheaper than maintaining your own equipment fleet.

Accordingly, there is no need to maintain IT-specialists and financial risks are reduced.

At any time, you are free to change your cloud provider and move to a more suitable or more profitable place.

As for the minuses of public clouds, everything is to be expected: there are much fewer opportunities for control on the part of the client, lower productivity when processing large amounts of data and low data security compared to private ones, which can be critical for some types of business.

Hybrid clouds

At the junction of the above advantages and disadvantages are hybrid clouds, which de facto are a bunch of at least one private cloud with one or more public clouds. At first (and even at the second) glance it may seem that a hybrid cloud is a philosophical stone that allows you to "inflate" computing power at any time, make the necessary calculations and "blow" everything back. Not a cloud, but David Blaine!

In fact, everything is almost as beautiful as in theory: a hybrid cloud saves time and money, has many standard and non-standard applications ... but there are nuances. Here are the most important ones:

First, it is necessary to correctly connect the “own” and the “alien” cloud, including in terms of performance. A lot of problems can arise here, especially if the data center with the public cloud is physically removed or built on another technology. In this case, there is a high risk of delays, sometimes critical.

Secondly , the use of a hybrid cloud as an infrastructure for a single application is fraught with uneven performance on all fronts (from the CPU to the disk subsystem) and a decrease in fault tolerance. Two servers with the same parameters, but located in different segments, will show different performance.

Thirdly, do not forget about the hardware vulnerabilities of “alien” iron (fiery greetings to Intel architects) and other security problems in the public part of the cloud, mentioned above.

Fourth , the use of a hybrid cloud threatens a significant reduction in fault tolerance if it hosts a single application.

Special bonus : now two clouds can "break" at once instead of one and / or a connection between them. And immediately in many combinations.

We should also mention the problems of hosting large applications in a hybrid cloud.
In the vast majority of cases, you can’t just get and get in the public cloud, for example, 100 virtual machines with 128GB of RAM. Most often, even 10 of these machines no one will give you.

Yes, public clouds -Moscow is not rubber. Many providers simply do not hold such a reserve of free capacity - and this is primarily true of RAM. You can draw as many processor cores as you like, the volume of SSD or HDD - give out many times more than physically available. The provider will hope that you do not use the entire volume at once and it will be possible to increase it along the way. But if there is not enough RAM, a virtual machine or application can easily crash. And not always the virtualization system allows such tricks. In any case, it is worth remembering such a development of events and discuss these issues with the provider “ashore”, otherwise you run the risk of being left overboard during peak loads (Black Friday, seasonal load, etc.).

So, if you want to use a hybrid infrastructure, keep in mind that:

  • The provider is not always ready to provide the necessary capacity on demand.
  • There are problems and delays in connecting elements. You need to understand what pieces of infrastructure and in what cases they will make requests through a “junction”, this can affect performance and availability. It is better to consider that in a cloud not one cluster node, but a separate and independent piece of infrastructure.
  • There is a risk of problems in large parts of the landscape. In a hybrid solution, either one or the other cloud may completely “fall off”. In the case of a conventional virtualization cluster, you run the risk of losing a maximum of one server, and here - at once a lot and overnight.
  • It is safest to treat the public part not as an “expander,” but as a separate cloud in a separate data center. True, in this case, you actually ignore the “hybridity” of the solution.

Smoothing Hybrid Cloud Deficiencies

In fact, the picture is much more pleasant than you might think. The most important thing is to know the tricks of the “preparation” of a good hybrid cloud. Here are the main ones in checklist format:

  • It is not necessary to place into the public cloud separately from the main software parts of the application that are sensitive to delays: for example, a cache or databases under OLTP load.
  • Do not take out to the public cloud all those parts of the application without which it will stop working. Otherwise, the probability of system failure will increase several times.
  • When scaling, keep in mind that the performance of machines deployed in different parts of the cloud will vary. Scaling flexibility will also be far from perfect. Unfortunately, this is a problem of architecture design and you will not be able to completely eradicate it. You can only try to reduce its impact on the work.
  • Try to maximize the physical proximity of the public and private clouds: the shorter the distance, the fewer delays between segments. Ideally, both parts of the cloud “live” in the same data center.
  • It is equally important to ensure that both clouds use identical network technologies. Ethernet-InfiniBand gateways can throw a lot of problems.
  • If the same virtualization technology is used in private and public clouds, this is a definite plus. In some cases, you can negotiate with the provider about migrating the entire virtual machine without reinstalling it.
  • To use a hybrid cloud is beneficial, choose a cloud provider with the most flexible pricing. Best of all - by actually used resources.
  • Scale with data centers: it was necessary to increase capacity - we raise the "second data center" and put it under load. Finished computing? We "extinguish" excess power and save.
  • Separate applications and projects can be taken out into the public cloud at the time of scaling of the private one, or simply for some period. True, in this case you will not have hybridity, only the general L2 connectivity, which does not depend on the presence / absence of your cloud.

Instead of a conclusion

That's all. We talked about the features of private and public clouds, examined the main options for improving the performance and reliability of hybrid clouds. Nevertheless, the device of any cloud is the result of decisions, compromises and conventions dictated by the business tasks and resources of the company.

Our goal is to motivate the reader to be serious about choosing the right cloud infrastructure based on his own tasks, available technologies and financial capabilities.

We suggest you share your experience with hybrid clouds in the comments. We are sure that your expertise will be useful to many novice pilots.

Also popular now: