Amazon Web Services Explained
Amazon Web Services
It can be a bit daunting when you first start looking at AWS and seeing the number of offerings available. I've explained each of the different services and also included some alternatives so you can see what it's like.
What is Amazon Web Services
Amazon Web Services (AWS) is a collection of remote computing services, that make up a cloud computing platform offered by Amazon.com.
Services
Service | Description | Alternative |
CloudServices
|
||
---|---|---|
EC2 | Virtual Machines | Azure VMs, Linode, DigitalOcean or Rackspace. |
IAM | Users, Policies | |
S3 | File storage, store images and other assets | |
VPC | Hybrid some on premise and some online. | |
Lambda | Used for storing and then executing changes to your AWS setup or responding to events in S3 or DynamoDB. | |
Developer Services
|
||
API Gateway | Works like a proxy on your network. | 3Scale |
RDS | It's basically SQL server. | Heroku Postgres, Azure SQL |
Route53 | It's DNS | DNSimple, GoDaddy, Gandi |
SES | Transactional email service | SendGrid, Mandrill, Postmark, MailGun |
Cloudfront | It's a content delivery network makes it easy to deliver files to your users. | MaxCDN, Akamai |
CloudSearch | Pull in data on S3 or in RDS and then search it. | Sphinx, Solr, ElasticSearch |
DynamoDB | No SQLDB | MongoLab, Azure Document DB |
Elasticache | An open-source search and analytics engine for use cases such as log analytics, real-time application monitoring, and click stream analytics. | Redis to Go, Memcachier |
Elastic Transcoder | Video Stuff | |
SQS | Message Queue | RabbitMQ, Sidekiq, Azure Service bus |
WAF | It's a Firewall | Sophos, Kapersky |
Cognito | Login Service Give end users - (non AWS) - the ability to log in with Google, Facebook, etc. | OAuth.io |
Device Farm | Test your app on a bunch of different IOS and Android devices simultaneously. | MobileTest, iOS emulator |
Mobile Analytics | Track what people are doing inside of your app. | Flurry, Azure Application Insights, Newrelic |
SNS | Send mobile notifications, emails and/or SMS messages | UrbanAirship, Twilio |
Ops and Code Deployment Services
|
||
CodeCommit | Version control your code - hosted Git. | Github, BitBucket |
Code Deploy | Deploy and build you code on the cloud. | Heroku, Capistrano, Visual studio team services. |
CodePipeline | Automated tests on code. | CircleCI, Travis |
EC2 Container Service | It's docker on the AWS | |
Enterprise / Corporate Services
|
||
AppStream | Put a copy of a Windows application on a Windows machine that people get remote access to. | Citrix, RDP, Azure Remote app |
Direct Connect | Pay your Telco + AWS to get a dedicated leased line from your data center or network to AWS. | |
Directory Service | Tie together other apps that need a Microsoft Active Directory to control them. | Azure Active Directory |
WorkDocs | Share Word Docs with your colleagues. | Dropbox, DataAnywhere |
WorkMail | Hosted email service. | Google Apps for Domains, Office365 |
Workspaces | A windows desktop of your own just without the office. | |
Storage Gateway | Make automating getting files into S3 from your corporate network easier. | |
Big Data Services
|
||
Data Pipeline | Extract, Transform and Load data from elsewhere in AWS. Schedule when it happens and get alerts when they fail. | |
Elastic Map Reduce | Iterate over massive text files of raw data that you're keeping in S3. | |
Glacier | Make backups of your backups that you keep on S3. For long term archiving can be slow to get the data back. Also not cheap. | |
Kinesis | Ingest lots of data very quickly that you then later use other AWS services to analyze. | Kafka |
RedShift | Store a whole bunch of analytics data, do some processing, and dump it out. | |
Machine Learning | Machine learning on AWS. | Azure Machine Learning |
SWF | Build a service of workers on top of EC2 to accomplish a set task. | IronWorker, Azure Web jobs |
Snowball | Get a bunch of hard drives you can attach to your network to make getting large amounts (Terabytes of Data) into and out of AWS | |
AWS Management Services
|
||
CloudFormation | Set up a bunch of connected AWS services in one go. | |
CloudTrail | Log who is doing what in your AWS stack (API calls). | |
CloudWatch | Get alerts about AWS services messing up or disconnecting. | PagerDuty, Statuspage |
Config | Keep from going insane if you have a large AWS setup and changes are happening that you want to track. | |
OpsWorks | Handle running your application with things like auto-scaling. |
Pricing
Amazon have a pricing calculator that will allow you to estimate and work out how much it will cost to use the services.
Don't forget your Backups
There are some really good backup services out there for AWS, you should check out Snapshooter's AWS backups from Simon Bennett for an easy to manage backup solution.