Cloud computing
Cloud computing is the delivery of hosted services over the internet. Cloud computing enables companies to use a compute resource, such as a virtual machine, storage or an application, as a service rather than having to build and maintain computing infrastructures on premise.
Characteristics of cloud computing
On demand self-service: a consumer can unilaterally provision computing capabilities, such as server time and network storage as needed.
Broad network access: capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms.
Resource pooling: the provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand.
Rapid elasticity: capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear unlimited and can be appropriated in any quantity at any time.
Measured service: cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service. Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.
Service models
Cloud computing providers offer their services according to different models, of which the three standard models are
Infrastructure as a service (IaaS)
Platform as a service (PaaS)
Software as a service (SaaS)
Infrastructure as a Service (IaaS)
IaaS is where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, and deployed applications; and possibly limited control of select networking components.
IaaS cloud providers supply these resources on demand from their large pools of equipment installed in data centers. For wide area connectivity, customers can use either the internet or carrier clouds (VPN). To deploy their applications, cloud users install operating system images and their application software on the cloud infrastructure. In this model, the cloud user patches and maintains the operating systems and the application software. Cloud providers typically bill IaaS services on a utility computing basis: cost reflects the amount of resources allocated and consumed.
Platform as a Service (PaaS)
PaaS provides the consumer the capability to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment. In the PaaS models, cloud providers deliver a computing platform, typically including operating system, programming-language execution environment, database, and web server. Application developers can develop and run their software solutions on a cloud platform without the cost and complexity of buying and managing the underlying hardware and software layers. With some PaaS offers like Microsoft Azure, and Google App Engine, the underlying computer and storage resources scale automatically to match application demand so that the cloud user does not have to allocate resources manually.
Software as a Service (SaaS)
Software as a Service is the capability provided to the consumer to use the provider’s applications running on the cloud infrastructure. The applications are accessible from various client devices through either a thin client interface, such as a web browser, or a program interface. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user specific application configuration settings.
In the software as a service model, users gain access to application software and databases. Cloud providers manage the infrastructure and platforms that run the applications. SaaS is sometimes referred to as “on demand software” and is usually priced on a pay per use basis or using a subscription fee. To accommodate a large number of cloud users, cloud applications can be multitenant, meaning that any machine may serve more than one cloud user organization. Load balancers distribute the work over the set of virtual machines. This process is transparent to the cloud user, who sees only a single access point.
The pricing model for SaaS applications is typically a monthly or yearly flat fee per user, so prices become scalable and adjustable if users are added or removed at any point. SaaS gives a business the potential to reduce IT operational costs by outsourcing hardware and software maintenance and support to the cloud provider.
One drawback of SaaS comes with storing the users’ data on the cloud provider’s server. As a result, there cloud be unauthorized access to the data.
Deployment models
Private cloud
Private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third party, and hosted ether internally or externally. Undertaking a private cloud project requires significant engagement to virtualize the business environment, and requires the organization to reevaluate decisions about existing resources.
Public cloud
A cloud is called a “public cloud” when the services are rendered over a network that is open for public use. Generally, public cloud service providers like Amazon web services (AWS), Microsoft and Google own and operate the infrastructure at their data center and access id generally via the internet. They also offer direct connect services called “AWS direct connect”, “Azure ExpressRoute” and “Cloud interconnect” respectively, such connections require customers to purchase or lease a private connection to a peering point offered by the cloud provider.
Hybrid cloud
Hybrid cloud is a composition of two or more clouds (private or public) that remain distinct entities but are bound together, offering the benefits of multiple deployment models. For example, an organization may store sensitive client data on premise or on a private cloud, but interconnect that data to a business intelligence application provided on a public cloud as a software service. Hybrid cloud adoption depends on a number of factors such as data security and compliance requirements, level of control needed over data, and the applications an organization uses.
Security and privacy
Cloud computing poses privacy concerns because the service provider can access the data that I sin the cloud at any time. It cloud accidentally or deliberately alter or even delete information. Solutions to privacy include policy and legislation (GDRP) as well as end users’ choices for how data is stored. Users can encrypt data that is processed or stored within the cloud to prevent unauthorized access.
The top three threats in the cloud are:
– Insecure interfaces and API’s (29%)
– Data loss & leakage (25%)
– Hardware failure (10%)
Hackers are spending substantial time and effort looking for ways to penetrate the cloud. Because data from hundreds or thousands of companies can be stored on large cloud servers, hackers can theoretically gain control of huge stores of information through a single attack, a process called “hyper jacking”. Some examples of this include the Dropbox security breach, and iCloud leak.
There is the problem of the legal ownership of the data. If a user stores some data in the cloud, can the cloud provider profit from it? Many terms of the service agreements are silent on the question of ownership. Fundamentally, private cloud is seen as more secure with higher levels of control for the owner, however public cloud is seen to be more flexible and requires less time and money investment from the user.
Limitations disadvantages
The downside is that you will have limited customization options. In cloud computing, the control of the back end infrastructure is limited to the cloud vendor only. Cloud providers often decide on the management policies, which moderates what the cloud are able to do with their deployment. Cloud users are also limited to the control and management of their applications, data and services.
Privacy and confidentiality are big concerns in some activities.
Cloud computing is still a subject of research and the providers are seeking to minimize risk of outages. Major cloud technology companies invest billions per year in cloud research and development.
Be the first to comment on "Cloud computing"