In data centers today, many computers suffer the same under-utilization利用不足 in computing power and networking bandwidth. For example, projects may need a large amount of computing capacity to complete a computation, but no longer need the computing power after completing the computation. You want cloud computing when you want a service that's available on-demand with the flexibility to bring it up or down through automation or with little intervention.
The phrase "cloud computing" is often represented with a diagram that contains a cloud-like shape indicating a layer where responsibility for service goes from user to provider. The cloud in these types of diagrams contains the services that afford computing power harnessed to get work done. Much like the electrical power we receive each day, cloud computing provides subscribers or users with access to a shared collection of computing resources: networks for transfer, servers for storage, and applications or services for completing tasks.
Features of a cloud:
• On-demand self-service: Users can provision servers and networks with little human intervention.
• Network access: Any computing capabilities are available over the network. Many different devices are allowed access through standardized mechanisms.
• Resource pooling: Multiple users can access clouds that serve other consumers according to demand.
• Elasticity弹性: Provisioning is rapid and scales out or in based on need.
• Metered or measured service: Just like utilities that are paid for by the hour, clouds should optimize resource use and control it for the level of service or type of servers such as storage or processing.
Service models
Cloud computing offers different service models depending on the capabilities a consumer may require.
• SaaS: Software as a Service. Provides the consumer the ability to use the software in a cloud environment, such as web-based email for example.
• PaaS: Platform as a Service. Provides the consumer the ability to deploy applications through a programming language or tools supported by the cloud platform provider. An example of platform as a service is an Eclipse/Java programming platform provided with no downloads required.
• IaaS: Infrastructure as a Service. Provides infrastructure such as computer instances, network connections, and storage so that people can run any software or operating system.
Deployment model
When you hear terms such as public cloud or private cloud, these refer to the deployment model for the cloud.
- A private cloud operates for a single organization, but can be managed on-premise or off-premise.
- A public cloud has an infrastructure that is available to the general public or a large industry group and is likely owned by a cloud services company.
- The NIST also defines community cloud as shared by several organizations supporting a specific community with shared concerns.
Clouds can also be described as hybrid混合物. A hybrid cloud can be a deployment model, as a composition of both public and private clouds, or a hybrid model for cloud computing may involve both virtual and physical servers.
What have people done with cloud computing?
- Cloud computing can help with large scale computing needs or can lead consolidation efforts by virtualizing servers to make more use of existing hardware and potentially release old hardware from service.
- People also use cloud computing for collaboration because of its high availability through networked computers.
- Productivity suites for word processing, number crunching, and email communications, and more are also available through cloud computing.
- Cloud computing also avails additional storage to the cloud user, avoiding the need for additional hard drives on each user's desktop and enabling access to huge data storage capacity online in the cloud.