Cloud computing is a computing model that involves delivering hosted services over the Internet. It enables convenient, on-demand access to a shared pool of computing resources, which may include networks, servers, storage or software applications.
These resources can be rapidly self-provisioned online with no service provider interaction. The service is fully managed by the provider, freeing users from the finer details of system maintenance.
Services are sold on-demand and provisioned on a pay-per-use or metered-use basis, similar to a utility. Services are also elastic, meaning they will automatically scale to meet fluctuations in demand so a user can have as much or as little of a service as they want at any given time.
Cloud services typically fall into three broad categories:
Software as a Service (SaaS)
Software services can include anything from Web-based email to specialized inventory control and database processing software. The user interacts with the software product through a front-end portal and because the service provider hosts both the application and the data, the end user is free to use the service from anywhere.
Platform as a Service (PaaS)
Platform as a Service provides a set of software and product development tools hosted on the service provider’s infrastructure. Developers can create custom software applications on the provider’s platform over the Internet. Service providers may use APIs, website portals or gateway software installed on the userâ€™s computer to enable interoperability with other systems. (*note: There are currently no standards for interoperability or data portability in the cloud)
Infrastructure as a Service (IaaS)
Sometimes referred to as utility computing, Infrastructure as a Service provides virtual server instances with unique IP addresses and blocks of on-demand storage. Users can start, stop, access and configure their virtual servers and storage via the provider’s application program interface (API). Users pay for only as much capacity as is needed, and the cloud provides more capacity automatically as soon as it is required.
Advantages of cloud computing for the federal government
Cloud computing offers a cost-effective and service-oriented approach for sharing computing resources across the government. Being able to access a powerful pool of common infrastructure, applications, information, and solutions greatly improves communication and collaboration across government in addition to providing incredible cost savings. The overall objective is to create a more agile federal enterprise, where services can be provisioned and reused on demand to meet changing business needs.
How cloud computing enables government transparency
Cloud computing is an excellent tool for fast, easy, secure and economical data sharing. By using a hybrid cloud environment, a government agency can easily port data sets into a secure computing environment and that data can be safely accessed by outside parties via open data APIs or commercial cloud services such as Amazon EC2 or Goggle App Engine.
Government clouds underway
More on cloud computing
- National Institute of Standards and Technology (NIST) definition of cloud computing
- Wikipedia: Cloud computing
- NIST: Cloud computing
- Apps.gov: A collection of Cloud services available to Government Agencies
- Vivek Kundraâ€™s apps.gov announcement: Streaming at 1:00: In the Cloud
Federal cloud bodies
- Cloud Computing Advisory Council
- Cloud Computing Executive Steering Committee
The Benefits of Government Cloud Computing
Technology, Innovation and Government
Vivek Kundra introduces apps.gov
Aneesh Chopra, Federal CTO discusses Cloud Computing
Linda Cureton, NASA CIO discusses Cloud Computing
Popular private-sector clouds
- Amazon Elastic Compute Cloud (Amazon EC2)
- Google App Engine
- Microsoft Windows Azure