Learning AWS - Second Edition
eBook - ePub

Learning AWS - Second Edition

Aurobindo Sarkar, Amit Shah

Share book
  1. 356 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Learning AWS - Second Edition

Aurobindo Sarkar, Amit Shah

Book details
Book preview
Table of contents
Citations

About This Book

Discover techniques and tools for building serverless applications with AWSAbout This Book• Get well-versed with building and deploying serverless APIs with microservices• Learn to build distributed applications and microservices with AWS Step Functions• A step-by-step guide that will get you up and running with building and managing applications on the AWS platformWho This Book Is ForIf you are an I.T. professional or a system architect who wants to improve infrastructure using AWS, then this book is for you. It is also for programmers who are new to AWS and want to build highly efficient, scalable applications.What You Will Learn• Set up your AWS account and get started with the basic concepts of AWS• Learn about AWS terminology and identity access management• Acquaint yourself with important elements of the cloud with features such as computing, ELB, and VPC• Back up your database and ensure high availability by having an understanding of database-related services in the AWS cloud• Integrate AWS services with your application to meet and exceed non-functional requirements• Create and automate infrastructure to design cost-effective, highly available applicationsIn DetailAmazon Web Services (AWS) is the most popular and widely-used cloud platform. Administering and deploying application on AWS makes the applications resilient and robust. The main focus of the book is to cover the basic concepts of cloud-based development followed by running solutions in AWS Cloud, which will help the solutions run at scale.This book not only guides you through the trade-offs and ideas behind efficient cloud applications, but is a comprehensive guide to getting the most out of AWS. In the first section, you will begin by looking at the key concepts of AWS, setting up your AWS account, and operating it. This guide also covers cloud service models, which will help you build highly scalable and secure applications on the AWS platform. We will then dive deep into concepts of cloud computing with S3 storage, RDS and EC2. Next, this book will walk you through VPC, building realtime serverless environments, and deploying serverless APIs with microservices. Finally, this book will teach you to monitor your applications, and automate your infrastructure and deploy with CloudFormation.By the end of this book, you will be well-versed with the various services that AWS provides and will be able to leverage AWS infrastructure to accelerate the development process.Style and approach• Learn to write, run, and deploy applications in the AWS cloud• Make the most of AWS to build scalable and cost-efficient systems• A practical guide to developing serverless services and make the applications run faster

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Learning AWS - Second Edition an online PDF/ePUB?
Yes, you can access Learning AWS - Second Edition by Aurobindo Sarkar, Amit Shah in PDF and/or ePUB format, as well as other popular books in Computer Science & Cloud Computing. We have over one million books available in our catalogue for you to explore.

Information

Year
2018
ISBN
9781787289314
Edition
2

Introducing AWS Components

This chapter will introduce you to some of the key AWS components and services. We will also cover strategies to lower your cloud infrastructure costs and their influence on your architectural decisions. Furthermore, this chapter will discuss the typical characteristics of AWS Cloud application development environments, including development, testing, staging, and production environments. Finally, we will walk you through the process of setting up the AWS infrastructure for our sample application.
In this chapter, we will cover the following topics:
  • AWS components
  • Managing costs on the AWS cloud
  • Application development environments
  • Setting up the AWS infrastructure

AWS components

AWS offers a wide variety of cloud-based services. There has been a continuously growing list of AWS services over the past few years with several of them in preview mode at any given time. These services include compute, storage, database, migration, networking and content delivery, security, analytics, AI, management tools, and many other products and services available. These ready-to-use AWS services and SDKs significantly simplify and accelerate the cloud application design, development, deployment, and maintenance-related activities.
In the following sections, we will describe some of the key AWS services used by developers and architects.

Amazon compute-related services

AWS offers several compute-related services to deploy and run your applications as virtual servers, containers, or even as code. For example, with EC2, you can provision and scale your compute infrastructure using a wide selection of instances that are optimized for various use cases. You can also run stateless or stateful applications packaged as Docker containers using Amazon EC2 Container Services (Amazon ECS), or run event-based stateless applications with the AWS Lambda service.

Amazon EC2

Amazon EC2 is a web service that provides compute capacity in the AWS cloud. You have several choices of instance types, operating systems, and software packages available. You will need to choose an appropriate mix of instance types based on your specific use cases. These instance types include general purpose, accelerated computing, compute-optimized, memory-optimized, and storage-optimized instances. For example, you would choose compute-optimized instances for your compute-intensive workloads and accelerated computing instances for GPU-based processing, typically, used for deep learning applications. In addition, each instance type includes one or more instance sizes to match the scalability requirements of your specific workloads.
Amazon EC2 allows you to configure the memory, CPU, instance storage, and your choice of operating system and applications. You can bundle the operating system, application software, and associated configuration settings into an Amazon Machine Image (AMI). Then, use it to provision or decommission multiple virtualized instances using web service calls. EC2 instances can be resized and the number of instances scaled, up or down, to match your requirements or demand.
Each AWS region comprises several Availability Zones (AZs) at distinct locations, connected by low latency networks. EC2 instances can be launched in one or more geographical locations or regions and also within one or more AZs belonging to a specific region.
Amazon Elastic Block Storage (EBS) volumes provide network-attached persistent storage to the EC2 instances. Elastic IP addresses allow you to allocate a static IP address and programmatically assign it to an instance. You can enable monitoring on EC2 instances using Amazon CloudWatch, and auto-scaling groups can be created, using the auto scaling feature, to automatically scale available capacity (based on the CloudWatch metrics).

Amazon EC2 container service

The Amazon EC2 container service is a cluster management and configuration management service. This service enables you to launch and stop container-enabled applications via API calls.

AWS Lambda

The AWS Lambda service supports executing your code in response to certain events within your application. Such events could include website clicks, image uploads, updates to certain data fields, document transformation, indexing, anomaly detection, errors detected in log files, sensitive or auditable events, unusual readings from sensors, and so on. You can also send notifications using SNS in response to these events.
Other AWS compute-related services include AWS Batch (to plan, schedule, and execute your batch jobs), AWS Elastic Beanstalk (for your application deployment and scalability requirements), Amazon EC2 Container Registry (to store, deploy, and manage Docker container images), and Amazon Lightsail (to launch and manage preconfigured virtual private servers).

Amazon storage-related services

Amazon's cloud storage services include object storage (Amazon S3), block storage (Amazon EBS), archival storage (Amazon Glacier), and file storage (Amazon Elastic File System) services. We will briefly describe some of these services in the following sections.

Amazon S3

Amazon S3 is a highly durable and distributed data store. Using a web services interface, you can store and retrieve large amounts of data as objects in buckets (containers). The stored objects are also accessible from the web via HTTP. It supports the implementation of stringent security and compliance policies on the stored data to ensure the security of data-at-rest. S3 is also an economical storage option for massive amounts of data typically used by analytics, IoT, and machine learning applications.

Amazon EBS

Amazon EBS is a highly available and durable persistent block-level storage volume for use with Amazon EC2 instances. You can configure EBS with SSD (general purpose or provisioned IOPS) or magnetic volumes. Each EBS volume is automatically replicated within its Availability Zone (AZ).

Amazon Glacier

Amazon Glacier is a low-cost storage service that is typically used for archival and backups. The retrieval time for data on Glacier, based on the option selected, varies from a few minutes to several hours.
Other AWS storage services include Amazon Storage Gateway (which enables integration between on-premise environment and AWS storage infrastructure) and AWS Import/Export service (which uses portable storage devices to enable movement of large amounts of data into and out of AWS cloud environment). Newer offerings from Amazon include petabyte to exabyte scale data transport services, such as AWS Snowball, AWS Snowball Edge, and AWS Snowmobile.

Amazon database-related services

There are several database-related services offered, including SQL and NoSQL databases, caching services, and a data warehouse service. In addition, an AWS database migration service is also available that can help migrate databases to AWS cloud with minimal downtime. Some of these services are described in the following sections.

Amazon Relational Database Service (RDS)

Amazon Relational Database Service (RDS) provides an easy way to set up, operate, and scale a relational database in the cloud. Database options available from AWS include MySQL, Oracle, SQL Server, PostgreSQL, and Amazon A...

Table of contents