A teapot about cloud technologies. Who needs it? Definition of "cloud computing"

Cloud computing, which translated from English means cloud computing. Cloud computing is a technology for providing the user via the Internet with the possibility of using remote resources and capacities. This technology is based on the principle of distributed data processing. Its essence is to provide the user with remote access to services provided in the cloud. The need for cost savings through effective measures for the provision of hosting services influenced the development of technology Prikhodko A.Ya. Dictionary-reference on information security. M. SINTEG, 2001.124 p.

The term "cloud computing" today is understood as a set of different services that are accessed via the Internet. Cloud computing is a powerful solution for resource-intensive tasks. The popularity of use is growing all the time. All personal computer users have either turned to cloud services or are already actively using them.

Types of "clouds"

Concept cloud computing has a wide range of applications. Therefore, it makes sense to logically divide it into several groups.

1) SaaS: software as a service

SaaS is a cloud application service or "Software as a Service", and is probably the most popular easy-to-use form of cloud computing. SaaS uses the Internet to deliver applications that are operated by third-party vendors and whose interface is available to the client side. Most SaaS applications can be launched directly from a web browser, without the need to download or pre-install. SaaS eliminates the need to install and run applications on personal computers. With SaaS, it makes it easier for businesses to streamline maintenance and support because the vendor's service includes serving: applications, runtime, data, middleware, operating systems, server virtualization, storage, and the network. Gmail is one well-known example of a SaaS postal operator.

2) PaaS: Platform as a Service

PaaS is the most complex of the three - a cloud-based service platform or "Platformas as Service" allocates computing resources across the platform. Developers get with PaaS an opportunity where they can build to develop or customize applications. PaaS makes developing, testing, and deploying applications faster, easier, and more cost-effective by eliminating the need to buy the underlying hardware and software layers. One difference between SaaS and PaaS is that some aspects of PaaS must already be managed by users, not vendors: With PaaS, vendors still have control over: runtime, middleware, operating system, server virtualization, storage and networking, but users to manage applications and data.

PaaS provides computing infrastructures, hardware, and platforms that sit on top of the hardware. Similar to how you can create macros in Excel, PaaS allows you to create applications using software components that are managed by a third-party vendor. PaaS is highly scalable and users don't have to worry about platform upgrades or their site crashes during maintenance. The users who get the most out of PaaS are a company that wants to improve the efficiency and interactivity of a large workforce. For the needs of large companies and ISVs, Apprenda is one provider for personal PaaS development and deployment of business applications.

3) IaaS: infrastructure as a service

IaaS is a cloud-based infrastructure services known as "Infrastructure as a Service" that supplies a computer with infrastructure (for example, an environment virtualization platform), storage, and networking. Instead of purchasing software, servers or networking equipment, the user can buy the whole thing as a completely external service, the bill for which usually depends on the amount of consumed resources. In other words, a third party for a rental allows them to install a virtual server on their IT infrastructure. Compared to SaaS and PaaS, IaaS users have a greater responsibility for managing: applications, data, runtime, middleware, and operating systems. Service providers continue to control virtualization, servers, hard drives, storage, and the network. IaaS users get full access to a ready-made information infrastructure, within which they can install the necessary platforms. Users are responsible for updating if new platform versions are released.

It is also necessary to name one key separation of clouds: public and private. Services provided by public clouds can be accessed by any user. Amazon Web Services is a prime example of a public cloud. The main difference between public and private clouds is that the latter is privately accessed by only a limited number of users.

  • Development for e-commerce
  • Previously, to deploy an application, you had to buy and configure your own physical servers. This approach had a large number of drawbacks, for example, if “one and a half servers” was enough for the application to work properly, it still had to pay for two - the cost of maintaining and maintaining the infrastructure turned out to be unreasonably high.

    Today we have such services that allow you to configure a virtual server and data storage for your own needs. In this case, the costs depend on the required amount of computing (and other) resources - you pay only for what you use.

    The roots of cloud computing go back to high performance computing. Even such large companies as IBM and HP took part in the race of countries to increase computing power.

    “However, engineers and researchers quickly realized that this approach didn't scale well,” says Pradeep Padala, founder of ContainerX. “Therefore, a search began for alternative methods of performing computations: they began to develop distributed systems that combine the power of a huge number of computers.”

    Academic projects such as Condor, a distributed network of computers deployed at the University of Wisconsin in Madison, have emerged. To date, 350 UNIX desktop stations are installed there, which provide access to work for users from all over the world. There were other projects as well, for example distributed.net and [email protected]- at that time, this idea was innovative, and it is also quite interesting to search for extraterrestrial civilizations.

    Then came the LHC from CERN, which spawned countless research projects that cost billions of dollars. As part of this movement, grid computing has come into vogue. The definition of Grid Computing is very close to what we call Computing as a Service. An example is the Globus Toolkit.

    At the same time, in the tech industry, VMware and Xen were promoting virtualization, which allowed multiple machines to run on a single physical machine. It has transformed the IT industry, and its ease of use has caught the attention of startups who have found it difficult to buy and maintain their own hardware.

    Below is a classic model of computer computing. Servers, applications and services are accessed over the network.

    By turning to cloud computing, organizations are able to customize their infrastructure as they see fit, with less investment and effort. In other words, this model aims to improve the availability of computing resources and combines five characteristics: self-service on demand, broad availability over the Internet, resource pooling, adaptability, and measurability.

    Self-service means that consumers should be able to easily and of their own free will use (or turn off) additional computing power, without contacting staff and technicians on the side of the service provider.

    Wide availability means that all the capabilities offered by the supplier are available over the network. Working with them is carried out on the basis of standard mechanisms - this makes it possible to use various client platforms, for example, mobile phones, tablets and personal computers.

    The provider pools its computing resources so that they can be dynamically reallocated in accordance with the needs of users - this is the so-called principle of multiple tenancy (Multi-tenancy). There is a feeling of independence from location, when the customer does not know exactly where the resources are, but can determine their location at an abstract level (country or region).

    The ability to adapt quickly is the ability to quickly adapt resources to the needs of the customer. From the point of view of the client, the opportunities offered to him look unlimited, which he can use at any time.

    Cloud systems automatically monitor and optimize resource use. It does this by measuring various parameters (storage size, processing power, bandwidth). Thus, both the supplier and the consumer receive complete information about the volume of services provided / consumed.

    As for the cost of services, the process of their formation can be quite complicated, and the price tag can vary from supplier to supplier. Jason M. Lemkin, Partner at SaaStr Ventures, believes that if your product is better, then you shouldn't hesitate to inflate the price.

    If you are introducing a new feature that has the potential to dramatically change the user experience, then there is nothing wrong with trying to get the most out of it. “If your product is five times more serious than a competitor, then you can ask for 5 times more for it,” says Jason.

    In addition to the characteristics, there are three more service models: software as a service (SaaS), platform as a service (PaaS) and infrastructure as a service (IaaS). They differ in the degree of control provided.

    In the case of IaaS, the client gets the opportunity to use the cloud infrastructure at his own discretion and independently manage the processing and storage resources, as well as networks. “The user can create a virtual infrastructure and change it at any time,” says consultant Ewan Leith. Outsourcing has become popular since the days when companies wanted to use computers but did not want to bear the cost of maintaining and maintaining them. For this reason, we have virtualization technology today.

    Virtualization is the provision of a set of computing resources or their logical association, abstracted from the hardware implementation, that is, one physical machine can support several virtual ones. Thus, physical resources are pooled, and the hypervisor allocates them to virtual machines that run guest operating systems.

    You don’t need to buy equipment, you don’t need to build your own data center, you don’t need to hire system engineers who are responsible for maintaining equipment at the physical level. You give this part to the service of the cloud provider. Your area of ​​responsibility remains the management of the operating system, installation and configuration of applications.

    The second layer is Platform as a Service or PaaS. With the transition from the IaaS model to the PaaS (Platform as a Service) model, the management of operating systems and databases is additionally transferred to the side of the cloud provider. In this case, clients do not have to think about the disk space that needs to be allocated and the distribution of the load between the servers. Examples of PaaS include Google App Engine, Heroku, and Force.com.

    Software as a service (SaaS) is the latest layer of cloud computing, usually complementary to PaaS. It is end-user software such as email or text. It is very often provided by subscription. Examples of SaaS include Google Apps, Salesforce.com, and Microsoft's Business Productivity Online Suite.

    For the SaaS option, the issues of installing and configuring applications, monitoring, backup, secure transmission to the Internet are additionally transferred to the side of the cloud provider - that is, all tasks. If you decide to use this model, you don't even need to keep a technician on the team, since the service provider manages everything.

    There are several deployment models: private cloud, public cloud, public cloud, hybrid cloud.

    A private cloud is an infrastructure that is located within the same organization. This deployment model is designed to meet the needs of the internal workforce while providing a high level of data security. A private cloud is created, for example, to provide a subsidiary with a corporate mail service.

    A public cloud is an infrastructure designed for free use by the general public. This type of cloud can be owned by, for example, commercial, academic and government organizations.

    However, the word "public" does not at all mean that user data is available to absolutely everyone - security mechanisms are still implemented here to control access. The main advantage of using a public cloud is ease of setup and low cost. The service provider does all the work required to create the cloud, while the consumer only configures the required amount of resources.

    A public cloud (community cloud) has similar features to a private and public cloud. It is a type of infrastructure designed to be used by a specific community of consumers from organizations with common objectives. A public cloud can be operated by third-party organizations and exist both inside and outside the owner's jurisdiction. In this case, the responsibility for maintaining the cloud is shifted from the shoulders of the member organizations to the entire community.

    A hybrid cloud (hybrid cloud) is called a composition of two or more types of clouds that are linked together by standardized data transmission technologies. It is very common for companies to run business critical applications in the private cloud, while the rest of the applications run in the public cloud.

    P.S. A couple of our publications on the topic on Habré:

    Many modern users of computers and mobile devices can no longer imagine life without the Internet, which has firmly established itself in our everyday life. Relatively recently, new cloud technologies have appeared that are quite different from the classical models of computer systems, although in some aspects they work according to similar principles. However, the very concept of "cloud", although familiar to many, still remains incomprehensible. About what it is, read on.

    What is cloud computing?

    If we talk about the concept itself in simple terms, we can say that technological solutions of this type basically imply the storage and use of information, software or special services without actually using hard disks on computers (they are used only for the initial installation of client software from the purpose of accessing cloud services).

    In other words, the use of cloud technologies makes it possible to use only the purely computing resources of a computer terminal or mobile device. This explanation may seem too confusing to many. Therefore, in order to understand what the application of cloud technologies looks like in practice, we can give the simplest example.

    Most modern users use e-mail in one way or another. Often it is the presence of such an address that is required for registration in Internet services, social networks, online games, etc. Any Windows system has a built-in Outlook mail client. When you receive or send letters, all of them are saved directly on your hard drive in the program folder.

    It's another matter when the mailbox is located on a remote server (for example, Mail.Ru, Gmail, Yandex mail, etc.). The user simply enters the site, enters his registration data (login and password), and then gets access to his mail. These are cloud technologies in the simplest sense, since all correspondence is stored not on the user's computer (hard drive), but on a remote server. Actually, a special program for accessing the mailbox is not needed (a very ordinary web browser is enough, which in this case plays the role of a client application).

    Thus, the most important thing that distinguishes cloud technologies from standard IT methods is precisely in storing information or some kind of software on a remote server, which at one time was called a "cloud", and in the possibility of sharing data or ON. Today you can see many services that are built exactly on the principles of the cloud. But it was not always so.

    Development of cloud technologies

    In general, talks about the introduction of such models have been going on since the end of the 60s of the last century. Then the concept of using the computing power of computer systems around the world with an organization in the form of a public utility appeared, the authors of which were Joseph Licklider and John McCarthy.

    The next step was the introduction in 1999 of the so-called CRM systems in the form of websites provided by subscription, which provided access to computing resources via the Internet, which in 2002 began to actively use the online bookstore Amazon, which later transformed into a huge IT- corporation.

    And only in 2006, thanks to the emergence of the Elastic Compute Cloud project, they started talking seriously about the full-scale implementation of cloud technologies and services. Naturally, the launch of the familiar Google Apps service, which took place in 2009, also played an important role in the provision of computing resources.

    Modern cloud services

    Since then, the cloud technology market has undergone quite significant changes. And the matter was not limited to the provision of computing resources alone.

    New cloud technologies and services began to appear, which today can be conditionally divided into several large categories:

    • cloud information storage;
    • game portals;
    • anti-virus platforms;
    • web-based software tools.

    Each of these groups includes many subcategories, but in general terms, they all follow the same principles.

    Mandatory characteristics

    According to the generally accepted requirements of the US National Institute of Standards and Technology, there is a single list of conditions that cloud information technologies must meet:

    • independent user service on demand (the ability of the user to determine the degree of use of technological and computing resources in the form of data access speed, server processing time, storage volume, etc., without obligatory agreement or interaction with the service provider);
    • access to a universal network (access to data transmission regardless of the type of device used);
    • combining computing resources (dynamic redistribution of capacities by combining resources for a large number of users into a single pool);
    • elasticity (the ability at any time to provide, expand or narrow the range of services automatically and without additional costs);
    • accounting of services provided to consumers (abstraction of used traffic, the number of users and their transactions, bandwidth, etc.).

    Common classification of deployment models

    Speaking of cloud technologies, one cannot fail to mention their division according to the types of cloud service models used.

    There are several main groups among them:

    • A private cloud is a separate infrastructure used by only one organization or a multi-user enterprise, or partner companies (contractors), which may be owned or outside of the organization's jurisdiction.
    • A public cloud is a structure intended for use by the general public in the public domain and usually run by the owner (service provider).
    • A public cloud is an organizational structure designed for groups of users with common interests or goals.
    • A hybrid cloud is a combination of two or more of the above types, which in the structure remain unique independent objects, but are interconnected according to strictly defined standardized rules for data transfer or application use.

    Service model types

    Separately, the methodology for classifying service models should be highlighted, that is, the entire set of tools and tools that a cloud service can provide to the user.

    Among the main models, the following are distinguished:

    • SaaS (software as a service) is a model of a set of software provided by a cloud provider to a consumer, which can be used either directly in the cloud service from a device, or through access through thin clients, or through the interface of a special application.
    • PaaS (platform as a service) is a structure that allows the user, based on the provided tools, to use the cloud to develop or create basic software for the subsequent placement of other software (own, purchased or replicated) based on database management systems, runtime programming languages, binder Software, etc .;
    • IaaS (infrastructure as a service) is a model of using a cloud service with independent resource management and the ability to host any type of software (even OS), but with limited control of some network services (DNS, firewall, etc.).

    Cloud service blocks

    Since cloud technologies imply minimal user participation in the operation of the entire complex and are models consisting of many technological combinations interacting with each other through the use of middleware, at this stage of considering such services separately, we can single out some important components of any software and hardware complex that are accepted call blocks:

    • Self-service portal is a tool that allows the user to order a certain type of service with specification of additional details (for example, for IssA, this is an order of a virtual machine specifying the type of processor, the amount of RAM and hard disk, or refusal to use it).
    • A service catalog is a set of basic services and related templates for creation, which, through the transfer of automation, will be able to configure the created service in real-life computer systems and with a certain type of software.
    • Orchestrator is a specialized tool for controlling the actions of the operations performed, provided by the template for each service.
    • Billing and billing - accounting for services provided to the user, invoicing for payment to coordinate financial issues.

    Additional methods

    Among other things, sometimes in order to distribute the load, virtualization technology can be used in the form of a virtual server part, which is a kind of layer or bundle between software services and hardware (distribution of virtual servers over real ones). This approach is not mandatory, however, cloud technologies in education use this technique quite often.

    Antiviruses also look quite interesting, which upload suspicious files not to computers, but to the cloud or "sandbox" (Sandbox), where a preliminary check is carried out, after which permission is given to send it to the computer, or it is quarantined in the very cloud.

    Pros and cons of using cloud services

    As for the pros and cons, of course there are. The positive aspect is that when accessing software, storage or creating their own infrastructure for users of such services, the costs associated with the purchase of additional or more powerful equipment or licensed software are significantly reduced.

    On the other hand, most experts criticize the use of cloud services only because of their low security against outside interference. The issue of storing huge amounts of obsolete or unused data is also on the agenda. A prime example of this are Google services, in which the user cannot delete any data groups or unused services.

    Payment issues

    Naturally, the use of such services is paid, especially if it is cloud technologies in education (specialized libraries, educational platforms), access to specialized software, or ordinary data storage with large reserved amounts of disk space.

    But for an ordinary user, the same storage services like DropBox, OneDrive (formerly SkyDrive), "Cloud Mail.Ru", "Yandex. Disk" and many others make concessions, allocating, depending on the service itself, about 15-20 GB disk space without payment. By modern standards, of course, not much, but enough to save some important data.

    Conclusion

    That's it for cloud computing. Many experts and analysts promise them a great future, but the issue of information security or data confidentiality is so acute that without the use of new developments in the field of information security, such a rosy prospect looks very dubious.

    Students often ask questions: What is cloud computing? What are cloud services? What is a cloud site? What does cloud mean, cloud file storage? How is cloud computing used in education? SaaS service for B2C and B2B sales? SaaS ERP and SaaS CRM systems and solutions? What cloud computing models are used to develop web applications? Modern data centers on the basis of which cloud services are created: SaaS, PaaS and IaaS?

    First, let's look at what "cloud" (cloud) and "cloud computing" (сloud сomputing) are. "Cloud" is an innovative model (concept) of organizing an IT infrastructure, which consists of distributed and shared configurable hardware and network resources, as well as software deployed on remote (cloud) data centers of suppliers (providers). That is, the cloud is a new approach to organizing the IT infrastructure.

    Cloud computing is a model for providing remote access to shared computing resources that are physically distributed across many remote devices, forming a so-called cloud.

    Cloud computing is a model for providing scalable computing resources to the consumer as a service over the Internet. Cloud technologies are a model for presenting IT as a service to the consumer via the Internet.

    Let's analyze the fundamental definition of cloud computing proposed by the National Institute of Science and Technology on July 24, 2011.

    Definition of "cloud computing"

    Cloud computing- a model for providing the possibility of ubiquitous and convenient network access on demand to a pool of shared configurable computing resources(for example, networks, servers, storage facilities, applications and services) that can be quickly provided and released with minimal management effort or interaction with the provider (supplier). This cloud model is represented (described) by five core characteristics, three service models, and four deployment models.

    Key features of cloud computing that distinguish them from other types of computing (Internet resources):

    1. Self-service on demand. The consumer, as needed, automatically, without interacting with each service provider, can independently determine and change computing power, such as server time, data storage volume.
    2. Wide (universal) network access. Computing capabilities are available over long distances over the network through standard mechanisms, which facilitates widespread use of heterogeneous (thin or thick) client platforms (terminal devices).
    3. Pooling resources. Provider's configurable computing resources are pooled to share distributed resources with multiple consumers.
    4. Instant resource elasticity (instant scalability). Cloud services can be rapidly provisioned, expanded, shrinked and released based on the needs of the consumer.
    5. Measured service (accounting for consumed services and the ability to pay for services that were actually used). Cloud systems automatically manage and optimize resource use by performing measurements at some level of abstraction appropriate to the type of service.

    If the model (concept) of providing distributed and shared configurable computing resources meets the above characteristics, then it is cloud computing.

    Cloud computing service models:

    1. Software as a Service ( SaaS) - software as a service. In this cloud delivery model, the consumer uses the provider's applications running on the cloud infrastructure, which are available to the client through an interface (web browser) or program interface. Consumers cannot manage and control the underlying infrastructure of the cloud, including network, servers, operating systems, data warehouses, or even change application-specific settings.
    2. Platform as a Service ( PaaS) - platform as a service. The model of providing cloud computing, in which the consumer gets access to the use of a software platform: operating systems, DBMS, application software, software development and testing tools. In fact, the consumer receives a lease of a computer platform with an installed operating system and specialized tools for developing, hosting and managing web applications. The consumer does not manage the underlying cloud infrastructure, including the network, servers, operating systems, or data stores, but manages the deployed applications and possibly configuration settings for the environment environment.
    3. Infrastructure as a Service ( IaaS) - infrastructure as a service. The model of providing cloud computing, in which the consumer gets the opportunity to manage processing and storage facilities, as well as other fundamental computing resources (virtual servers and network infrastructure), on which he can independently install operating systems and application programs for his own purposes. In fact, the consumer leases abstract computing power (server time, disk space and network bandwidth) or uses IT infrastructure outsourcing services. The consumer does not manage the underlying cloud infrastructure, but manages the operating systems, storage, and applications deployed by it.

    Cloud computing deployment models i.e. cloud computing:

    1. Private cloud (private cloud) - Infrastructure designed to use cloud computing at the scale of a single organization.
    2. Community cloud is a cloud infrastructure that is designed for the exclusive use of cloud computing by a specific community of consumers from organizations that solve common problems.
    3. Public cloud is an infrastructure designed for the free use of cloud computing by the general public.
    4. Hybrid cloud is a combination of different cloud infrastructures (private, public or community) that remain unique entities, but are interconnected by standardized or private technologies that enable the exchange of data and applications.

    Rice. 1. Cloud computing deployment models

    Based on the above definition of cloud computing, cloud services can be represented as a multilayer model consisting of layers: IaaS, PaaS, SaaS. The basis or foundation of cloud services is physical infrastructure, i.e. servers, storages, networks and system software Cloud data center (cloud data center) or networks of interconnected cloud Data centers (Fig. 2).

    In cloud data centers or in data processing centers (DPC) physical equipment or hardware (servers, data storages, workstations), system software (OS, virtualization and automation tools), tool and application software, equipment management systems (Equipment management systems, network infrastructure: routers and switches for connecting and interconnecting physical equipment. In addition, the normal operation of data centers is provided by systems of engineering support (Systems of engineering support).

    Rice. 2. Cloud computing architecture

    First layer of cloud services - IaaS (infrastructure)

    IaaS is the provision of computer and network infrastructure (servers, storage, networking) to the user and their service as a service in the form of virtualization, i.e. virtual infrastructure... In other words, on the basis of the physical infrastructure of data centers or data centers, the supplier (provider) creates a virtual infrastructure that provides users as a service. Virtualization tools allow you to transform the physical infrastructure of data centers into a virtual one and thus create the first layer of cloud services - IaaS.

    What is virtualization? Resource virtualization technology allows physical equipment (servers, data storage, data transmission networks) to be divided between users into several parts, which are used by them to perform their current tasks. For example, on one physical server, you can run hundreds of virtual servers, and the user can allocate time to access them to solve problems. Virtualization can be implemented both at the software level and at the hardware level.

    Thus, the user is provided with abstract elastic computing power, for example, not a server or servers, but server time to process his tasks. Not disks for storing data, but the required disk space, not communication channels, but the network bandwidth of switching channels required for solving problems.

    In addition to virtualization, automation is used to create IaaS, which provides dynamic resource allocation without the involvement of service provider personnel, i.e. the system can automatically add or decrease the number of virtual servers, disk storage space, or change the network bandwidth of communication channels. Virtualization and automation provide compute efficiency and lower IaaS cloud rental costs.

    As a rule, IaaS is provided for rent (IaaS service is provided on an outsourced basis) to corporate users. That is, users receive integrated resources to build their own computing infrastructure. In this case, the user must himself install and configure the OS and the necessary programs to perform production tasks or to develop applications.

    The IaaS concept allows the user to buy only the computing power they need to perform specific tasks. IaaS value-added services may include the connection of any physical user equipment to the cloud platform and its placement in the network of data centers.

    Infrastructure as a Service is an enterprise-grade solution for businesses of all sizes. The infrastructure can be located both in the enterprise data center and in an external data center. IaaS services are designed to build and operate secure private, public, and hybrid cloud environments. Suppliers can provide hybrid cloud configurations that combine local networks at the customer's office with the cloud platform networks.

    In addition, IaaS cloud computing services include Cloud Hosting. Cloud hosting is a hosting that can provide dynamic resource allocation, has the ability to automatically scale resources and has increased fault tolerance. Cloud hosting is an essential alternative to shared hosting, hosting on a virtual dedicated server VPS / VDS and hosting on a physical dedicated server.

    The Cloud Hosting provider provides site owners only the resources the site needs: virtual servers, the amount of RAM and the amount of hard disk, as well as options for managing the hosting infrastructure (for example, the choice of the operating system, the amount of RAM, the amount and type of HDD, the number of CPU cores, the clock frequency and access speed). Payment for renting cloud hosting is made only upon the fact of already consumed resources: the amount of processor time, the amount of disk space, the amount of RAM consumed and the speed of access to the site.

    If necessary, the tenant (site owner) of cloud hosting can change the hosting resources or configure it to automatically increase resources when the load increases, but he will always pay only for the resources already consumed. Cloud hosting has increased fault tolerance, since the site hosted on it is simultaneously located on several virtual servers and the failure of one of them will not affect the operation of the site.

    Currently, hosters offer cloud hosting services for rent with a pre-installed CMS. Hosting providers for organizing such cloud hosting can, for example, deploy Jelastic platform-as-infrastructure with pre-installed CMS on their servers. Jelastic delivers Platform-as-Infrastructure in a complete stack that enables cloud hosting deployments on the hosting provider's physical data center infrastructure.

    The functionality of the Jelastic platform allows in one click to install the built-in CMS with an optimized web environment, for example, Jelastic on Infobox. Jelastic is a product that includes PaaS functionality and highly configurable IaaS infrastructure. Jelastic is a platform for running Java and PHP applications and can be used not only by hosters for organizing cloud hosting, but also by corporations to create development environments (private or hybrid clouds) for web applications.

    On cloud hosting, cloud sites are hosted - these are modern cloud applications. In cloud sites (cloud applications), data is stored in cloud databases, server applications of sites are stored and executed on cloud virtual servers, and the client side of the site is executed in the user's browser.

    The cloud computing environment can be created on the basis of cloud solutions Amazon EC2, IBM x86, Microsoft Azure, EMC, VMware, based on open-source solutions OpenStack, RackSpace based on OpenStack, etc., which allow you to transform the data center into a dynamic IT environment. In addition, cloud computing uses cloud databases, i.e. databases that run on cloud computing platforms. Both SQL-oriented models and NoSQL data models are used as cloud databases.

    IaaS services are widely used in the United States. In Ukraine, De Novo has begun to provide cloud infrastructure for corporate clients based on solutions from VMware, EMC, Microsoft Azure, etc. On the basis of the largest Ukrainian data center VOLIA, the VoliaCLOUD cloud IT infrastructure from VMware (based on VMware cloud solutions) was built, which has more than 500 virtual data centers.

    Key IaaS Solution / Vendor: Amazon Web Services / Amazon, IBM SmartCloud / IBM, SoftLayer IaaS / IBM, Azure Virtual Machines / Microsoft, Google Compute Engine / Google, HP Cloud / HP, EMC / EMC Corporation, Oracle Cloud Infrastructure Services / Oracle ... It should be noted that IBM offers a robust open infrastructure IBM SmartCloud based on self-service (SoftLayer) or fully managed IaaS (IBM SmartCloud Enterprise +).

    Rice. 3. Basic IaaS Cloud Computing Solution

    It should be noted that work is underway to create cloud core networks of mobile broadband providers (mobile operators) as an IaaS service. These services include, for example, Huawei's cloud telecom platform and Nokia Siemens Networks' NSN Telco Cloud solution.

    Huawei's FusionSphere platform virtualizes compute, storage, network resources and organizes a single pool of shared configurable compute resources with a single scheduling and management mechanism. Nokia Siemens Networks has completed comprehensive testing of key mobile services covering Voice over LTE (VoLTE) and other IP Multimedia Subsystem (IMS) services powered by Telco Cloud.

    The second layer is PaaS (software platform)

    The PaaS service provides a software platform and its maintenance as a service, consisting of:

    • OS - network operating system (Unix systems, including Ubuntu Server, BSD / OS Family, Solaris / SunOS, etc. or Windows Server),
    • Database - a database management system DBMS (MySQL, Microsoft SQL, SQL Database, PostgreSQL, Oracle, etc.),
    • Middleware - middleware or linking (middleware) software that is designed to provide interoperability between different applications, systems and components,
    • Software development tools and testing - instrumental software for developing web applications and testing them (software development environment: software frameworks, libraries, etc. for creating web applications in programming languages: Python, Java, PHP, Ruby, JS for Node.js, etc.),
    • App server is an application server for developing, testing, debugging and running web applications.

    So, PaaS offers software developers tools to develop, test, deploy and support various applications. In addition, the user is provided with administration and management tools. PaaS is mainly used for developing and hosting web applications (for example, related distributed applications - SaaS mashup, cloud sites, etc.).

    Basic PaaS Solution / Vendor:

    • AWS Elastic Beanstalk / Amazon (Java, .NET, PHP, Node.js, Python, Ruby and Apache HTTP Server, Apache Tomcat, Nginx, Passenger, and IIS),
    • IBM Bluemix / IBM (IBM Bluemix cloud platform offers a unified solution environment and a wide range of languages ​​and frameworks for building applications, for example, Liberty for Java ™, SDK for Node.js ™, ruby ​​on rails, ruby ​​sinatra),
    • Microsoft Asure / Microsoft (ASP.NET, Java, PHP, Python, Django, Node.js and Azure SQL Database),
    • Google App Engine / Google (Python, Java, PHP, Go and our MySQL),
    • Salesforce1 Platform Cloud application development / Salesforce brings Force.com, Heroku and ExactTarget into one cloud service network and provides tools for developing various applications. For example, for developing Salesforce1 Mobile App / Salesforce mobile apps or cloud databases for Database.com/Salesforce app developers, etc.
    • Heroku / Salesforce (Ruby, Java, Node.js, Scala, Clojure, Python and PHP and PostgreSQL),
    • Oracle Cloud Platform Services / Oracle (Oracle Database Cloud Service, Oracle Java Cloud Service, Oracle Database Backup Service),
    • OpenShift / Red Hat (Java, Java EE, Python, Perl, PHP, Ruby, Node.JS, and MySQL, PostgreSQL, MongoDB),
    • Cloud Foundry / VMware (Java Spring, Ruby on Rails and Sinatra, NodeJS, .NET and MySQL Redis, MongoDB),

    Rice. 4. Basic PaaS Cloud Computing Solution

    In addition to the listed PaaS solutions, Web application developers use other well-known cloud platform solutions: dotCloud PaaS, SAP HANA Cloud Platform, CloudBees Platform, Rackspace, etc.

    The third layer is SaaS (cloud application)

    The SaaS scheme delivers the following types of cloud applications and their maintenance: Business Apps, Office Web Apps, Management Apps, Communications, Security, etc. SaaS is most widely used in the United States. The most popular cloud applications are: CRM (customer relationship management system), HRM (personnel management system), ERP (enterprise resource planning system, for example 1C), office applications, communications, etc. Salesforce.com is the world's largest provider of cloud-based CRM applications.

    Communications means e-mail (for example, Gmail), audio and video chats (for example, Microsoft Lync Online), Cloud PBX or cloud PBX (for example, Mango-Office virtual PBX), cloud service MDM (Mobile Device Management) ). Cloud MDM service is designed to work with corporate systems using mobile devices.

    Applications, so-called agents, are installed on various mobile devices that operate under the control of the cloud-based MDM system. These applications provide centralized configuration of mobile devices and access to the enterprise corporate network in the form of a cloud SaaS service. Typically, cloud communications are integrated with other SaaS services such as CRM + MDM, Office Web Apps + Lync Online, Google Docs + Gmail + Hangouts, etc.

    The main consumers of SaaS are small and medium-sized businesses. Most SaaS applications are designed to support collaboration between employees working together to solve common problems (Collaboration). The architecture of SaaS applications, in which a single instance of an application running on a server serves many consumers, is multi-tenant. each consumer in the process of performing tasks is provided with its own instance of a virtual application.

    Basic application software:

    • Business Apps (CMR, FRM, IBM® B2B Cloud Services, Axway Cloud B2B, amoCRM SaaS service for B2B, Google Apps for Business),
    • Business Intelligence (PowerBI as part of Office 365 / Microsoft, Oracle Business Intelligence Managed Cloud Service, Anaplan / ADE Professional Solutions, Brand Analytics),
    • Office Web Apps (Google Docs, Office Online / Microsoft OneDrive, Office Web Apps / Microsoft, Zoho Docs, IBM SmartCloud Docs, etc.),
    • Management Apps (ERP / RENT 1C, HRM, SCM, MRP),
    • Communications (Gmail, Google Hangouts, Microsoft Lync Online, Cloud PBX or Cloud PBX, MDM),
    • Security (Panda Cloud Email Protection, Panda Cloud Internet Protection, McAfee SaaS Email Protection & Continuity, Сomfortway Mobile Security, etc.), etc.
    • Collaboration and Multi-tenant (Google Docs, Google Sites, Microsoft Office Online, Office 365, Office Web Apps).

    Main SaaS Solution / Vendor: Salesforce1 Sales Cloud / Salesforce (CRM), Oracle Cloud Applications / Oracle (HR, CX, ERP, EMP, SCP, Business Intelligence), Google Apps / Google - office cloud services suite (Google Docs, Google Drive , Google Sites, communication: Hangouts, Gmail, Google Calendar, etc.), IBM SmartCloud Docs / IBM, Microsoft Dynamics CRM, Microsoft OneDrive (Office Online, file storage), Office 365 / Microsoft (Office Web Apps, Lync Online, Exchange Online , SharePoint Online), Zoho Docs / Zoho (online office suite), Zoho Reports / Zoho (Business Intelligence), Zoho CRM / Zoho, Informatica Cloud MDM / Informatica, MaaS360 / Fiberlink, Cloud PBX from Vonage Business Solutions, etc.

    Rice. 5. Basic SaaS Cloud Computing Solution

    There are many other SaaS cloud computing services, such as Cisco WebEx, a cloud-based web conferencing service; CMS based on the SaaS model (for example, the SaaS platform UMI.CLOUD); E-Commerce B2B / B2C by SaaS model; Marketing of SaaS solutions; "Dr.Web Anti-virus" service based on the SaaS model; SugarCRM - open source commercial CRM system; BPMonline CRM with tools for modeling and automating business processes, etc.

    It should be noted that the concept of cloud computing assumes the provision of various additional types of cloud services to consumers: Storage-as-a-Service, Database-as-a-Service, Information-as-a-Service, Process-as-a-Service , Integration-as-a-Service, Testing-as-a-Service, etc. There are, for example, numerous storage-as-a-Service cloud file stores: Amazon Simple Storage Service (Amazon S3), DropBox, Google Drive, Microsoft OneDrive, etc.

    How are cloud computing and technology used in education? Google offers cloud-based Google Apps for education for e-education to educational institutions. Microsoft provides educational users with the Office 365 for education (Windows Azure in education) cloud services experience. The introduction of cloud computing (Cloud Computing) in schools and universities will provide schoolchildren and students with a very comfortable learning.

    The prospects for the spread of cloud computing, taking into account their current development, are outlined in the analytical work "Where do the clouds go on the compress.

    In conclusion, it should be noted again that all cloud computing service models must comply with the basic characteristics of cloud computing, as set out in "The NIST Definition of Cloud Computing", which distinguish them from other types of Internet resources.

    To ensure that the online resources offered to you belong to one of the cloud computing models, compare their characteristics with the main characteristics of cloud computing proposed by the National Institute of Standards and Technology (self-service on demand; single pool for resource sharing; instant elasticity or scalability; payment only for actually used services; universal network access).

    DEPLOYMENT MODELS

    • Private cloud

    Private cloud private cloud) - infrastructure intended for use by one organization, which includes several consumers (for example, divisions of one organization), possibly also clients and contractors of this organization. A private cloud can be owned, operated and operated by the organization itself or by a third party (or some combination of these), and it can physically exist both inside and outside the owner's jurisdiction.

    • Public cloud

    Public cloud (eng. public cloud) is an infrastructure intended for free use by the general public. The public cloud can be owned, operated and operated by commercial, academic, and government organizations (or any combination of these). The public cloud physically exists in the jurisdiction of the owner - the service provider.

    • Hybrid cloud

    Hybrid cloud (eng. hybrid cloud) is a combination of two or more different cloud infrastructures (private, public or public) that remain unique objects, but are interconnected by standardized or private technologies for transferring data and applications (for example, short-term use of public cloud resources to balance the load between clouds).

    • Public cloud

    Public cloud (eng. community cloud) - a type of infrastructure intended for use by a specific community of consumers from organizations with common objectives (for example, mission, security requirements, policies, and compliance with various requirements). A public cloud can be co-owned, operated and operated by one or more of the community organizations or a third party (or any combination of these), and it can physically exist both within and outside the owner's jurisdiction.

    SERVICE MODELS

    • Software as a Service

    Software as a Service ( SaaS, eng. Software-as-a-Service) - a model in which the consumer is given the opportunity to use the provider's application software that runs in the cloud infrastructure and is accessible from various client devices or through a thin client, for example, from a browser (for example, web mail) or an interface programs. Control and management of the underlying physical and virtual infrastructure of the cloud, including the network, servers, operating systems, storage, or even individual application capabilities (with the exception of a limited set of custom application configuration settings) is carried out by the cloud provider.

    • Platform as a Service

    Platform as a Service ( PaaS, eng. Platform-as-a-Service) is a model when the consumer is given the opportunity to use the cloud infrastructure to host the underlying software for the subsequent placement on it of new or existing applications (own, custom-developed or purchased replicated applications). Such platforms include tools for creating, testing and executing application software - database management systems, middleware, runtime programming languages ​​- provided by a cloud provider.

    Control and management of the main physical and virtual infrastructure of the cloud, including the network, servers, operating systems, storage, is carried out by the cloud provider, with the exception of developed or installed applications, as well as, if possible, configuration parameters of the environment (platform).

    • Infrastructure as a Service

    Infrastructure as a Service ( IaaS, eng. IaaS or Infrastructure-as-a-Service) is provided as an opportunity to use the cloud infrastructure to independently manage processing, storage, networking and other fundamental computing resources, for example, a consumer can install and run arbitrary software, which may include operating systems, platform and application software. The consumer can control operating systems, virtual storage systems and installed applications, as well as limited control over the set of available services (eg, firewall, DNS). The control and management of the main physical and virtual infrastructure of the cloud, including the network, servers, types of operating systems used, storage systems is carried out by the cloud provider.