Points To Know Before Shifting to Cloud Computing Platform, analysis to be done about the credentials of the course. And here is a guide which will be handy. Many companies are starting to take their first steps into the world of cloud computing. Some companies are moving timidly, while the others have already moved much of the data and services to the cloud. Despite the general trend towards prudence, research has shown that only 30% of companies who has moved to the cloud computing platform make careful research before choosing a provider to trust. In part this is a contradiction, because if we truly care about the safety of our data on the cloud computing platform, for consistency we have to be very careful when choosing a provider. Therefore first step consists in the evaluation of different providers.
Choice of Cloud Computing Service Providers
The first analysis to be done about the credentials of the company. The experience of a provider, brand name on the market and its reliability are generally publicly accessible information. This analysis is altogether superficial, but should still carry it as pre-selection from vast possible candidates. Once you have identified the provider, which seem to be more reliable, then we can evaluate the technical, commercial and administrative part.
One of the first concern is the definition of SLA (Service Level Agreement). SLAs are usually expressed with a percentage value. For example, an SLA Availability of 99.99% on weekdays means that the provider guarantees access to data without interruption for 99.99% of the time. The same service may have an SLA slightly less in public holidays (eg 99.9%). A serious company clearly makes accessible the parameters expected, highlighting the user agreement and possibly negotiation.
Furthermore, it should always be clear how it is managed for non-compliance with a level of SLA contract: these events may be followed by discounts (to the customer) or penalty. You should never choose a provider without information about what are the levels of SLA promised and how they are managed.
As for the billing of services, which can be automated but well informed about the various costs. Both for consumption and for those services to package it is important to be able to track in real time the different costs: this allows us to control the resources used in relation to their cost.
Identification of resources
After choosing the cloud service provider, one can proceed for identifying the resources that are right and needed. Among the resources available on the cloud we can find remote storage disks, virtual operating systems, servers and applications. After having identified the interface we must decide how to combine them to create an architecture that interests us.
A simple choice, convenient for holding first practice or to prepare the demo, is to use a single virtual server. This architecture is similar to the classical LAMP (Linux, Apache, MySQL, PHP), it consists of three layers that work together. On the first level there is the web server that directly receives requests from the outside. Soon after we find the application server, or simply the Web application, for example, it could be implemented by a service CGI or PHP pages. Finally we find the database server, as the application that is responsible for accessing data in a suitable way. The three components work together to achieve the so-called architecture on three levels (three-tier). The simplest solution is to use a single instance that embraces all three applications, while the storage system itself remains a resource apart.
Since all elements of the system are strictly necessary for the smooth functioning any failure or malfunction of an element of the chain is likely to compromise the entire system. For this reason, we can manage the resources of the cloud in a more streamlined way, by creating extra servers. For example, we create two servers that address to receive HTTP requests, corresponding (for example) to two instances of the Apache server associated with two different dedicated servers. The two servers can work in concert by means of load balancing system. With this trick, even if one of the Web server proves out of service or just under load, the evolving needs of users will be automatically rendered up.
The redundant architectures of this type are manifold. Theoretically, we may make any element redundant in this chain. Depending on the need we have more than one Web server, an application server and more than more than one database server. If we want to replicate the database server we need to introduce the concepts of Master and Slave DB. A database server can not be cloned with the same ease with which we clone a web server or application server. If the database you need is the primary database, it is precisely known as Master DB. The other copies of the database will be updated automatically through some job running in the background. For this reason, the slave copies of the database will contain data probably slightly less up to date. For example, a slave database may update with a delay of 10-30 seconds compared to the master. In principle this is a good idea if we treat only the data for which is not a problem to have a delay of a few seconds.
Strategy of usage
How to use the cloud platform may depend on the technology used by the provider. For example, the cloud services offered by EC2 Amazon in some cases using a storage system off-line with respect to the other services. This means that, in this case, the strategies of use of virtual machines are different from those of the storage devices.
Other companies may use different systems, with different technologies, the use of resources change accordingly. For example, consider the solution offered by Rackspace Cloud, which is based on the platform OpenStack , it is an open source system developed in collaboration with companies such as Apache and NASA. In addition to the platform, we need to know how they handle several virtual machines.
In the case of OpenStack based system, KVM hypervisor is usually used, which enables many providers around the world to offer services to the publicly open codes of OpenStack.
Many providers offer the most advantageous prices for the virtualization of machines rather than for access to the storage devices. This means that, for the same service, a cloud application based on many virtual machines (VM) could cost less than one that uses a single virtual machine placed on different storage devices. To understand the difference between the different solutions we have to remember that the virtual machines that co-exist on the same physical machine. For example, if the provider has a computer (physical machine) with a memory of 12GB, when this machine is used to virtualize two virtual machines, the provider chooses how to assign the 12GB of memory.
We might have two virtual machines equivalent, each with 6GB of memory, or we could have a more powerful, with 8GB of memory, accompanied by a support with 4GB of memory. Different virtual machines will have to share network resources, disk space and processing power of the processor. Usually the process of exchanging data between a virtual machine and the storage device involves the serialization of data, which are then deserialized. This process slows down in general the service and impacts the costs of different resources. It is therefore important to evaluate whether our business requires more processing (CPU usage of the VM) or focuses on persistence (storage devices).