In part two of “How Does AWS Work” series, we tackled Amazon’s global infrastructure, the vast network of underlying hardware that’s running the entire AWS cloud. We also looked at the Shared Responsibility Model, which defines roles and responsibilities of both Amazon and their customers in protecting the resources in the cloud.
In this third and final part of this series, we’re going to do a high-level overview of some of the most notable AWS services.
AWS currently provides over 100 services to their customers, covering everything from networking, compute and storage to business analytics, robotics and machine learning. Most of these services are fully managed by Amazon and are designed to help you offload the responsibility of running and maintaining them, while allowing you to focus on your product.AWS currently provides over 100 services to their customers, covering everything from networking, compute and storage to business analytics, robotics and machine learning. Click To Tweet
This is crucial for smaller companies, especially startups, where, due to the lack of resources, there are no dedicated DevOps teams available to handle these tasks.
Let’s take a brief overview of some of the more prominent services that you’ll encounter when working with the AWS cloud.
Compute services provide raw horsepower for your AWS environment, allowing you to run web servers, batch workloads, analytics or anything else that comes to mind. The most used service here is Elastic Compute Cloud (better known as EC2), which is best compared to virtual machines, and provides a flexible and resizable compute capacity.
With EC2, you will often utilize Auto Scaling, a service that dynamically responds to demand and scales resources and Elastic Load Balancing, a traffic distribution service that can handle traffic across multiple availability zones.
Another compute service that is often utilized is Lambda, the first “serverless” offering that has drawn much attention when it was released publicly. Lambda allows you to run your code, without having to provision servers. You simply provide the code and choose the desired settings, and AWS will handle all the necessary requirements in the background for you.
For those working with containers, AWS offer two different services – Elastic Container Service (ECS) and Elastic Kubernetes Service (EKS). The latter is Amazon’s Kubernetes service that provides a managed control plane. This can drastically simplify the usage of the Kubernetes on AWS, as you only have to think about the management of the worker nodes.
The former of the two is Amazon’s take on container orchestration, and with its native integration with other AWS services, it has been a product of choice for many who wanted to avoid the complexity of Kubernetes but still achieve all the benefits offered by containerization.
Along with compute, storage services are at the core of the AWS offering. There are very few use cases of the AWS cloud that don’t involve a storage solution provided by Amazon.
When talking about storage on AWS, nothing beats Simple Storage Service (S3). It was one of the first services ever released, and has grown to an incredible offering through the years.
S3 is a highly scalable and durable object storage that supports any type of data that you may need. S3 also has multiple storage classes, so you can use it as a general storage solution, or as a cold storage for data archival, if required.
Another storage service that is somewhat unavoidable is Elastic Block Store (EBS). It provides a block storage needed for your running EC2 instances. You can use it as a file system or data storage, and it comes in various types – whether you need high performing SSD for sensitive application or HDD designed for larger sequential workloads.
RDS allows you to quickly set up and operate a relational database on AWS, whether you need MySQL, PostgreSQL, MariaDB, or even SQL Server and Oracle Database engines.
DynamoDB provides a high performance multimaster key-value database that can scale read and write throughput on-demand, and allows you to replicate the data across multiple AWS regions.
Neither of these two requires any administration at all, making them an easy choice when running a database in the cloud.
For any DevOps, understanding and setting up a network is a requirement, so working with Virtual Private Cloud (VPC) is a must. Additionally, user administration is not only a required part of the job; it is also critical for the security in the cloud, so Identity and Access Management (IAM) can be a service that you’ll often be focusing on.
And then there are various services that fall under the categories of Machine Learning, Internet of Things or Mobile, allowing you to do things like time-series forecasting, building and training your own neural network models, deploying your own mobile applications or connect various devices to your cloud application.
There are many services being offered on AWS, and while you’re unlikely to work with all of them, we’ve briefly zoomed on those that anyone should be familiar with when working in the AWS environment.
These, of course, are not the only ones worth looking into, so whether you have a business requirement within your company, or a personal interest in the cloud technologies, make sure to take some time and dig deeper into the AWS offering.
Jatheon Cloud is a fourth-generation, cloud-based email archiving platform that runs on AWS. To learn more about Jatheon’s cloud archive, contact us or schedule your personal demo.