BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
AWS (Amazon Web Services) is a comprehensive, evolving cloud computing platform provided by Amazon that includes a mixture of infrastructure as a service (IaaS), platform as a service (PaaS) and packaged software as a service (SaaS) offerings. AWS services can offer an organization tools such as compute power, database storage and content delivery services.
AWS launched in 2006 from the internal infrastructure that Amazon.com built to handle its online retail operations. AWS was one of the first companies to introduce a pay-as-you-go cloud computing model that scales to provide users with compute, storage or throughput as needed.
AWS offers many different tools and solutions for enterprises and software developers that can be used in data centers in up to 190 countries. Groups such as government agencies, education institutions, nonprofits and private organizations can use AWS services.
How AWS works
AWS is separated into different services and each can be configured in different ways based on the user's needs. Users should be able to see configuration options and individual server maps for an AWS service.
More than 100 services comprise the Amazon Web Services portfolio, including those for compute, databases, infrastructure management, application development and security. These services, by category, include:
- Storage databases
- Data management
- Hybrid cloud
- Development tools
- Big data management
- Artificial intelligence (AI)
- Mobile development
- Messages and notification
Amazon Web Services provides services from dozens of data centers spread across availability zones (AZs) in regions across the world. An AZ represents a location that typically contains multiple physical data centers, while a region is a collection of AZs in geographic proximity connected by low-latency network links. A business will choose one or multiple availability zones for a variety of reasons, such as compliance and proximity to end customers. As an example, an AWS customer can spin up virtual machines (VMs) and replicate data in different AZs to achieve a highly reliable infrastructure that is resistant to failures of individual servers or an entire data center. Amazon Elastic Compute Cloud (EC2) is a service that provides virtual servers -- called instances -- for compute capacity. The EC2 service offers dozens of instance types with varying capacities and sizes, tailored to specific workload types and applications, such as memory-intensive and accelerated-computing jobs. AWS also provides an Auto Scaling tool to dynamically scale capacity to maintain instance health and performance.
Amazon Simple Storage Service (S3) provides scalable object storage for data backup, archival and analytics. An IT professional stores data and files as S3 objects -- which can range up to 5 GB -- inside S3 buckets to keep them organized. A business can save money with S3 through its Infrequent Access storage tier or use Amazon Glacier for long-term cold storage.
Databases, data management
The Amazon Relational Database Service -- which includes options for Oracle, SQL Server, PostgreSQL, MySQL, MariaDB and a proprietary high-performance database called Amazon Aurora -- provides a relational database management system for AWS users. AWS also offers managed NoSQL databases through Amazon DynamoDB.
An AWS customer can use Amazon ElastiCache and DynamoDB Accelerator as in-memory and real-time data caches for applications. Amazon Redshift offers a data warehouse, which makes it easier for data analysts to perform business intelligence tasks.
Migration, hybrid cloud
AWS includes various tools and services designed to help users migrate applications, databases, servers and data onto its public cloud. The AWS Migration Hub provides a location to monitor and manage migrations from on premises to the cloud. Once in the cloud, EC2 Systems Manager helps an IT team configure on-premises servers and AWS instances.
Amazon also has partnerships with several technology vendors that ease hybrid cloud deployments. VMware Cloud on AWS brings software-defined data center technology from VMware to the AWS cloud. Red Hat Enterprise Linux for Amazon EC2 is the product of another partnership, extending Red Hat's operating system to the AWS cloud.
An Amazon Virtual Private Cloud (Amazon VPC) gives an administrator control over a virtual network to use an isolated section of the AWS cloud. AWS automatically provisions new resources within a VPC for extra protection.
Admins can balance network traffic with the Elastic Load Balancing (ELB) service, which includes the Application Load Balancer and Network Load Balancer. AWS also provides a domain name system called Amazon Route 53 that routes end users to applications.
An IT professional can establish a dedicated connection from an on-premises data center to the AWS cloud via AWS Direct Connect.
A developer can take advantage of AWS command-line tools and software development kits (SDKs) to deploy and manage applications and services. The AWS Command Line Interface is Amazon's proprietary code interface. A developer can also use AWS Tools for Powershell to manage cloud services from Windows environments and AWS Serverless Application Model to simulate an AWS environment to test Lambda functions. AWS SDKs are available for a variety of platforms and programming languages, including Java, PHP, Python, Node.js, Ruby, C++, Android and iOS.
Amazon API Gateway enables a development team to create, manage and monitor custom APIs that let applications access data or functionality from back-end services. API Gateway manages thousands of concurrent API calls at once.
A development team can also create continuous integration and continuous delivery pipelines with services like:
Management and monitoring
An admin can manage and track cloud resource configuration via AWS Config and AWS Config Rules. Those tools, along with AWS Trusted Advisor, can help an IT team avoid improperly configured and needlessly expensive cloud resource deployments.
AWS provides several automation tools in its portfolio. An admin can automate infrastructure provisioning via AWS CloudFormation templates, and also use AWS OpsWorks and Chef to automate infrastructure and system configurations.
An AWS customer can monitor resource and application health with Amazon CloudWatch and the AWS Personal Health Dashboard, as well as use AWS CloudTrail to retain user activity and application programming interface (API) calls for auditing.
Security and governance
AWS provides a range of services for cloud security, including AWS Identity and Access Management, which allows admins to define and manage user access to resources. An admin can also create a user directory with Amazon Cloud Directory, or connect cloud resources to an existing Microsoft Active Directory with the AWS Directory Service. Additionally, AWS Organizations enables a business to establish and manage policies for multiple AWS accounts.
The cloud provider has also introduced tools that automatically assess potential security risks. Amazon Inspector analyzes an AWS environment for vulnerabilities that might impact security and compliance. Amazon Macie uses machine learning technology to protect sensitive cloud data.
AWS also includes tools and services that provide software- and hardware-based encryption, protect against DDoS attacks, provision Secure Sockets Layer and Transport Layer Security certificates and filter potentially harmful traffic to web applications. AWS certified individuals should be able to demonstrate and validate technical cloud knowledge and skills in AWS environments.
The AWS Management Console is a browser-based GUI for AWS. The management console can be used to manage resources in cloud computing, cloud storage and security credentials. The AWS console interfaces with all the AWS resources.
Big data management and analytics
AWS includes a variety of big data analytics and application services. Amazon Elastic MapReduce offers a Hadoop framework to process large amounts of data, while Amazon Kinesis provides several tools to process and analyze streaming data.
AWS Glue is a service that handles extract, transform and load jobs, while the Amazon Elasticsearch Service enables a team to perform application monitoring, log analysis and other tasks with the open source Elasticsearch tool.
AWS offers a range of AI model development and delivery platforms, as well as packaged AI-based applications. The Amazon AI suite of tools includes Amazon Lex for voice and text chatbot technology; Amazon Polly for text-to-speech translation; and Amazon Rekognition for image and facial analysis. AWS also provides technology for developers to build smart apps that rely on machine learning technology and complex algorithms.
With AWS Deep Learning AMIs (Amazon Machine Image), developers can create and train custom AI models with clusters of GPUs or compute-optimized instances. AWS also includes deep learning development frameworks for MXNet and TensorFlow.
The AWS Mobile Hub offers a collection of tools and services for mobile app developers, including the AWS Mobile SDK, which provides code samples and libraries.
A mobile app developer can also use Amazon Cognito to manage user access to mobile apps, as well as Amazon Pinpoint to send push notifications to application end users and then analyze the effectiveness of those communications.
Messages and notifications
AWS messaging services provide core communication for users and applications. Amazon Simple Queue Service (SQS) is a managed message queue that sends, stores and receives messages between components of distributed applications to ensure that the parts of an application work as intended.
Amazon Simple Notification Service (SNS) enables a business to send pub-sub messages to endpoints, such as end users or services. SNS includes a mobile messaging feature that enables push messaging to mobile devices. Amazon Simple Email Service provides a platform for IT professionals and marketers to send and receive emails.
Amazon Web Services has a range of business productivity SaaS options. The Amazon Chime service enables online video meetings, calls and text-based chats across devices. A business can also take advantage of Amazon WorkDocs, a file storage and sharing service, and Amazon WorkMail, a business email service with calendaring features.
Desktop and streaming application services include Amazon WorkSpaces, a remote desktop-as-a-service platform, and Amazon AppStream, a service that lets a developer stream a desktop application from AWS to an end user's web browser.
AWS pricing models and competition
AWS offers a pay-as-you-go model for its cloud services, either on a per-hour or per-second basis. There is also an option to reserve a set amount of compute capacity at a discounted price for customers who prepay in whole, or who sign up for one- or three-year usage commitments.
If potential customers can’t afford the costs, then AWS Free Tier is another possible avenue for using AWS services. AWS Free Tier allows users to gain first-hand experience with AWS services for free. Users can use up to 60 products and start building on AWS with Free Tier. Free Tier is offered in three different options: always free, 12 months free and trials.
AWS competes primarily with Microsoft Azure, Google and IBM in the public infrastructure-as-a-service market.
The AWS platform was originally launched in 2002, only consisting of a few services. In 2003, AWS was re-envisioned to make Amazon's compute infrastructure standardized, automated and web service focused. This re-envisioning included the thought of selling access to virtual servers as a service platform. One year later, in 2004, the first publically available AWS service -- Amazon SQS -- was launched.
In 2006, AWS was relaunched to include three services -- including Amazon S3 cloud storage, SQS, and EC2 -- officially making AWS a suite of online core services. In 2009, S3 and EC2 were launched in Europe, and the Elastic Block Store and Amazon CloudFront were released and adopted to AWS. In 2013, AWS started to offer a certification process in AWS services, and 2018 saw the release of an autoscaling service.
Over time, AWS has added plenty of services that helped make it a low-cost infrastructure platform that is highly available and scalable. AWS now has a focus on the cloud, with data centers placed around the world, in places such as the United States, Australia, Europe, Japan and Brazil.
Over time, AWS has acquired a number of organizations focusing on technologies it wants to further incorporate. Recently AWS' acquisitions haven't concentrated on larger well-established companies, but rather on organizations that could bolster and overall improve the cloud vendor's existing offerings. These acquisitions don't add to AWS, but rather augment its core services. For example, AWS has acquired TSO Logic, Sqrrl and CloudEndure.
TSO Logic was a cloud migration company that provides analytics, enabling customers to view the state of their current data center and model a migration to the cloud. Sqrrl was a security startup that collects data from points such as gateways, servers and routers, and then puts those findings inside a security dashboard. Cloud Endure is a company that focuses on workload migrations to the public cloud, disaster recovery and backup. These acquisitions shouldn't majorly change AWS, but position it better. For example, the acquisition of CloudEndure should accelerate movement of on-premises workloads to the AWS cloud.
AR & VR (Augmented reality and virtual reality)
AWS offers augmented reality (AR) and virtual reality (VR) development tools through the Amazon Sumerian service. Amazon Sumerian allows users to create AR and VR applications without needing to know programming or create 3D graphics. The service also enables users to test and publish applications in-browser. Amazon Sumerian can be used in:
- 3D web applications
- E-Commerce & sales applications
- Online education
- Training simulations
AWS can also be used for game development. Even larger game developers, such as Ubisoft, will use AWS services for games, like For Honor. AWS can provide services for each part of a game's lifecycle. For example, AWS will provide a developer back-end services, analytics and developer tools. Developer tools should help aid developers in making their game, while back-end services might be able to help with building, deploying or scaling a developer's platform. Analytics might help developers better know their customers and how they play the game. Developers can also store data, or host game data on AWS servers.
Internet of Things
AWS also has a variety of services that enable the internet of things (IoT) deployments. The AWS IoT service provides a back-end platform to manage IoT devices and data ingestion to other AWS storage and database services. The AWS IoT Button provides hardware for limited IoT functionality, and AWS Greengrass brings AWS compute capabilities to IoT devices.
Learn about the features and benefits of Amazon Web Services EC2 in this expert overview.
Before deploying Amazon Web Services, read this in-depth overview of the many features AWS public cloud storage has to offer.
AWS OpsWorks: Should you buy it today?