The cloud is basically a metaphor for the Internet. Cloud computing is a method of making computer services via the Internet accessible. A company can eliminate two major enduring problems in IT service provisioning by adopting cloud computing: the typically large upfront costs from acquiring computational assets and the typical time delay in building out and deploying computer software applications. By eliminating upfront costs, precious capital can be saved for other important business decisions. The current cloud model is composed of three service models, cloud infrastructure as a service (IaaS), cloud platform as a service (PaaS), and cloud software as a service (SaaS). In IaaS, the consumer can deploy and operate arbitrary software, such as, operating systems and software applications. The consumer doesn’t control the infrastructure. The consumer has control over the operating systems, deployed applications, storage, and sometimes slight control of select networking modules. In PaaS, the consumer can deploy onto the infrastructure their consumer-created or applications created by using tools and programming languages supported by the cloud provider. The consumer doesn’t have control over the cloud infrastructure, servers, storage, operating systems, or network, but the user has control over the applications and application-hosting environment configurations. In SaaS, the consumer can use the cloud provider’s applications running on the cloud infrastructure. These applications are available from various client sources or devices using a thin client interface. For example, a web browser or perhaps web-based email can be the thin client. The consumer doesn’t control the cloud infrastructure, operating systems, storage servers, or network. The user may not have control over individual application capabilities, but may have access to limited specific application software configuration settings. It’s important to know the difference between the types of cloud infrastructures. A company could choose to adapt their potential move to just certain cloud services if they have already expended capital on certain IT hardware or software. Companies must weigh the potential benefits versus the risks in a cost analysis before deciding to implement cloud computing. A potential customer must carefully analyze every potential use for cloud computing. These uses must be examined from a wide range of perspectives, such as from a legal, regulatory, technological, and business strategy viewpoint to determine if cost savings justify making a full move to the cloud or if making a smaller move such as by using PaaS, SaaS, or IaaS service models make more sense. If the costs or risks are found to be too high, then making partial moves to IaaS, SaaS, or PaaS might be much more efficient. If a company determines that risks aren’t too high, but that it isn’t prepared for a complete move to the clouds, then a smaller or subtle move to the clouds might be more cost efficient. In a private cloud, all the technology components, servers, and software are maintained by an individual organization. The solution or system setup might be managed by the user or even a third party host, but it’s nevertheless provided for the benefit of solely one organization. The development of private clouds is becoming more popular within large corporations. In a private cloud, a user can use a pooled resource. For example, not every laptop needs to have a specific software program installed on it. The user may use a pooled software program from one server with other users connected to this private cloud. In the future, users may not even require the use of a hard drive in every single laptop. This could help corporations minimize hardware costs. A public cloud is commercially made available to everyone or to larger industry groups. A public cloud is typically maintained by the provider of the specific service. Examples of a public cloud are salesforce.com, Amazon’s EC2 cloud offering, and Google’s Gmail. Large corporations are increasingly using this type of deployment for discrete services and are experimenting with various ways to use this model. This cloud deployment model offers great potential flexibility and savings because of the large economy of scale that is utilized. On the other hand, it grants the provider virtually exclusive control over all the technological capabilities, and typically makes the user totally dependent on their service.
There are three major service types which can be distributed by the cloud, infrastructure, software, and platform. Infrastructure services are services offered by a remote delivery of a complete system of computer infrastructure. This infrastructure is composed of such things as storage devices, virtual computers, and servers. Software services are distributed through the Internet using smaller, sophisticated applications. This eliminates the necessity of having to maintain and install software on numerous laptops and desktops. Platform services are services such as operating systems, web servers, middleware, and data basing provided remotely by vendors. In IaaS, a company outsources the required equipment used to fulfill IT operations, such as, servers, storage, networking components, and other hardware. The IaaS provider owns the technology equipment and is responsible for operating and maintaining the equipment. Cloud clients may typically pay by a per-use basis. In SaaS, various types of software applications are distributed by the Application Service Provider (ASP) as rentals through the Internet. In PaaS, clients access computer services, such as, data basing and storage within a virtualized delivery system through the Internet. Open source software (OSS) is anticipated to become a key enabler of cloud computing. Cloud adoption should be enhanced by the growing ubiquity of this freely used, OSS for the cloud infrastructure. There are major costs connected with cloud computing – storage and network bandwidth costs, costs for the application (SaaS), and CPU costs. The ability to modify source code makes OSS very attractive for companies. Proprietary software applications usually don’t allow, nor provide clients access to source code. OSS, conversely, allows users full access to the source code. This is valuable for companies, since this software can be manipulated to suit specific company requirements. Since there’s a growing number of free OSS applications, promoting and allowing greater cloud access to OSS would reduce costs for SaaS. An example of one major OSS system is Google’s Chromium Projects. The Google OSS project is developing an operating system that is cloud-based. One of the most important enablers of cloud computing has been met by utilizing a commodity-driven purchase of computing resources using very large economies of scale in the construction and operation of extremely large computer data centers in low-cost locations. These locations with very large economies of scale have uncovered from factors of to in the decrease in hardware necessary, cost of electricity, software, operations, and network bandwidth. There are four aspects which will further bring tremendous cost savings with regard to the diminished need for computer hardware. The first aspect is the ability of cloud computing resources that are available on demand, which will be quick enough to support seemingly infinite data load surges, subsequently eliminating the necessity for cloud users from having to plan far ahead and to make provisions for computing bottlenecks. The second will be the eradication of up-front commitment costs for cloud users. This will allow companies to start small and allow for incremental increases in resources as their needs grow. The third will be the ability to pay on a short-term basis for computing resources as needed such as, purchasing processing power by hour or storage by day. The fourth will be the freedom to immediately terminate services when they aren’t needed.