O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Implementing AWS: Design, Build, and Manage your Infrastructure

Book Description

Work through exciting recipes to administer your AWS cloud

Key Features

  • Build secure environments using AWS components and services
  • Explore core AWS features with real-world applications and best practices
  • Design and build Lambda functions using real-world examples

Book Description

With this Learning Path, you'll explore techniques to easily manage applications on the AWS cloud.

You'll begin with an introduction to serverless computing, its advantages, and the fundamentals of AWS. The following chapters will guide you on how to manage multiple accounts by setting up consolidated billing, enhancing your application delivery skills, with the latest AWS services such as CodeCommit, CodeDeploy, and CodePipeline to provide continuous delivery and deployment, while also securing and monitoring your environment's workflow. It'll also add to your understanding of the services AWS Lambda provides to developers. To refine your skills further, it demonstrates how to design, write, test, monitor, and troubleshoot Lambda functions.

By the end of this Learning Path, you'll be able to create a highly secure, fault-tolerant, and scalable environment for your applications.

This Learning Path includes content from the following Packt products:

  • AWS Administration: The Definitive Guide, Second Edition by Yohan Wadia
  • AWS Administration Cookbook by Rowan Udell, Lucas Chan
  • Mastering AWS Lambda by Yohan Wadia, Udita Gupta

What you will learn

  • Explore the benefits of serverless computing and applications
  • Deploy apps with AWS Elastic Beanstalk and Amazon Elastic File System
  • Secure environments with AWS CloudTrail, AWSConfig, and AWS Shield
  • Run big data analytics with Amazon EMR and Amazon Redshift
  • Back up and safeguard data using AWS Data Pipeline
  • Create monitoring and alerting dashboards using CloudWatch
  • Effectively monitor and troubleshoot serverless applications with AWS
  • Design serverless apps via AWS Lambda, DynamoDB, and API Gateway

Who this book is for

This Learning Path is specifically designed for IT system and network administrators, AWS architects, and DevOps engineers who want to effectively implement AWS in their organization and easily manage daily activities. Familiarity with Linux, web services, cloud computing platforms, virtualization, networking, and other administration-related tasks will assist in understanding the concepts in the book. Prior hands-on experience with AWS core services such as EC2, IAM, S3, and programming languages, such as Node.Js, Java, and C#, will also prove beneficial.

Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Implementing AWS: Design, Build, and Manage your Infrastructure
  3. About Packt
    1. Why subscribe?
    2. Packt.com
  4. Contributors
    1. About the authors
    2. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Conventions used
    4. Get in touch
      1. Reviews
  6. What is New in AWS?
    1. Improvements in existing services
      1. Elastic Compute Cloud
      2. Availability of FPGAs and GPUs
      3. Simple Storage Service
      4. Virtual Private Cloud
      5. CloudWatch
      6. Elastic Load Balancer
    2. Introduction of newer services
  7. Managing EC2 with Systems Manager
    1. Introducing EC2 Systems Manager
    2. Getting started with the SSM agent
      1. Configuring IAM Roles and policies for SSM
      2. Installing the SSM agent
      3. Configuring the SSM agent to stream logs to CloudWatch
    3. Introducing Run Command
    4. Working with State Manager
    5. Simplifying instance maintenance using System Manager Automation
      1. Working with automation documents
      2. Patching instances using automation
      3. Triggering automation using CloudWatch schedules and events
    6. Managing instance patches using patch baseline and compliance
    7. Getting started with Inventory Management
  8. Introducing Elastic Beanstalk and Elastic File System
    1. Introducing Amazon Elastic Beanstalk
      1. Concepts and terminologies
    2. Getting started with Elastic Beanstalk
      1. Creating the Dev environment
      2. Working with the Elastic Beanstalk CLI
      3. Understanding the environment dashboard
      4. Cloning environments
      5. Configuring the production environment
    3. Introducing Amazon Elastic File System
      1. How does it work?
      2. Creating an Elastic File System
      3. Extending EFS to Elastic Beanstalk
  9. Securing Workloads Using AWS WAF
    1. Introducing AWS Web Application Firewall
      1. Concepts and terminologies
    2. Getting started with WAF
      1. Creating the web ACL
      2. Creating the conditions
      3. Creating rules
      4. Assigning a WAF Web ACL to CloudFront distributions
      5. Working with SQL injection and cross-site scripting conditions
      6. Automating WAF Web ACL deployments using CloudFormation
      7. Monitoring WAF using CloudWatch
      8. Introduction to AWS Shield
  10. Governing Your Environments Using AWS CloudTrail and AWS Config
    1. Introducing AWS CloudTrail
    2. Working with AWS CloudTrail
      1. Creating your first CloudTrail Trail
      2. Viewing and filtering captured CloudTrail Logs and Events
      3. Modifying a CloudTrail Trail using the AWS CLI
      4. Monitoring CloudTrail Logs using CloudWatch
      5. Creating custom metric filters and alarms for monitoring CloudTrail Logs
      6. Automating deployment of CloudWatch alarms for AWS CloudTrail
      7. Analyzing CloudTrail Logs using Amazon Elasticsearch
    3. Introducing AWS Config
      1. Concepts and terminologies
      2. Getting started with AWS Config
      3. Creating custom config rules
    4. Tips and best practices
  11. Access Control Using AWS IAM and AWS Organizations
    1. What's new with AWS IAM
      1. Using the visual editor to create IAM policies
      2. Testing IAM policies using the IAM Policy Simulator
    2. Introducing AWS Organizations
      1. Getting started with AWS Organizations
  12. Transforming Application Development Using the AWS Code Suite
    1. Understanding the AWS Code Suite
    2. Getting Started with AWS CodeCommit
      1. Working with branches, commits, and triggers
    3. Introducing AWS CodeDeploy
      1. Concepts and terminologies
      2. Installing and configuring the CodeDeploy agent
      3. Setting up the AppSpec file
      4. Creating a CodeDeploy application and deployment group
    4. Introducing AWS CodePipeline
      1. Creating your own continuous delivery pipeline
      2. Putting it all together
  13. Powering Analytics Using Amazon EMR and Amazon Redshift
    1. Understanding the AWS analytics suite of services
    2. Introducing Amazon EMR
      1. Concepts and terminologies
      2. Getting started with Amazon EMR
      3. Connecting to your EMR cluster
      4. Running a job on the cluster
      5. Monitoring EMR clusters
    3. Introducing Amazon Redshift
      1. Getting started with Amazon Redshift
      2. Connecting to your Redshift cluster
      3. Working with Redshift databases and tables
  14. Orchestrating Data using AWS Data Pipeline
    1. Introducing AWS Data Pipeline
    2. Getting started with AWS Data Pipeline
      1. Working with data pipeline definition Files
      2. Executing remote commands using AWS Data Pipeline
      3. Backing up data using AWS Data Pipeline
  15. Managing AWS Accounts
    1. Introduction
    2. Setting up a master account
      1. How to do it...
      2. How it works...
      3. There's more...
        1. Multi-factor authentication
        2. Using the CLI
      4. See also
    3. Creating a member account
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
        1. Accessing the member account
        2. Service control policies
        3. Root credentials
        4. Deleting accounts
      5. See also
    4. Inviting an account
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
        1. Removing accounts
        2. Consolidated billing
      5. See also
    5. Managing your accounts
      1. Getting ready
      2. How to do it...
        1. Getting the root ID for your organization
        2. Creating an OU
        3. Getting the ID of an OU
        4. Adding an account to an OU
        5. Removing an account from an OU
        6. Deleting an OU
      3. How it works...
      4. There's more...
      5. See also
    6. Adding a service control policy
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
  16. Using AWS Compute
    1. Introduction
    2. Creating a key pair
      1. Getting ready
      2. How to do it...
      3. How it works...
    3. Launching an instance
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
      5. See also
    4. Attaching storage
      1. Getting ready
      2. How to do it...
      3. How it works...
    5. Securely accessing private instances
      1. Getting ready
      2. How to do it...
        1. Configuration
      3. How it works...
      4. There's more...
    6. Auto scaling an application server
      1. Getting ready
      2. How to do it...
      3. How it works...
        1. Scaling policies
        2. Alarms
    7. Creating machine images
      1. Getting ready
      2. How to do it...
      3. How it works...
        1. Template
        2. Validate the template
        3. Build the AMI
      4. There's more...
        1. Debugging
        2. Orphaned resources
        3. Deregistering AMIs
        4. Other platforms
    8. Creating security groups
      1. Getting ready
      2. How to do it...
      3. There's more...
        1. Differences from traditional firewalls
    9. Creating a load balancer
      1. How to do it...
      2. How it works...
      3. There's more...
        1. HTTPS/SSL
        2. Path-based routing
  17. Management Tools
    1. Introduction
    2. Auditing your AWS account
      1. How to do it...
      2. How it works...
      3. There's more...
    3. Recommendations with Trusted Advisor
      1. How to do it...
      2. How it works...
      3. There's more...
    4. Creating e-mail alarms
      1. How to do it...
      2. How it works...
      3. There's more...
        1. Existing topics
        2. Other subscriptions
    5. Publishing custom metrics in CloudWatch
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
        1. Cron
        2. Auto scaling
        3. Backfilling
    6. Creating monitoring dashboards
      1. Getting ready
      2. How to do it...
      3. There's more...
        1. Widget types
    7. Creating a budget
      1. Getting ready
      2. How to do it...
      3. How it works...
    8. Feeding log files into CloudWatch logs
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
  18. Database Services
    1. Introduction
    2. Creating a database with automatic failover
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
    3. Creating a NAT gateway
      1. Getting ready
      2. How to do it...
      3. How it works...
    4. Creating a database read-replica
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
    5. Promoting a read-replica to master
      1. Getting ready
      2. How to do it...
    6. Creating a one-time database backup
      1. Getting ready
      2. How to do it...
    7. Restoring a database from a snapshot
      1. Getting ready
      2. How to do it...
      3. There's more...
    8. Migrating a database
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
        1. Database engines
        2. Ongoing replication
        3. Multi-AZ
    9. Calculating DyanmoDB performance
      1. Getting ready
      2. How to do it...
      3. How it works...
      4. There's more...
        1. Burst capacity
        2. Metrics
        3. Eventually consistent reads
  19. Introducing AWS Lambda
    1. What is serverless computing?
      1. Pros and cons of serverless computing
    2. Introducing AWS Lambda
      1. How it works
    3. Getting started with AWS Lambda
      1. Using the AWS Management Console
      2. Using the CLI
  20. Writing Lambda Functions
    1. The Lambda programming model
      1. Handler
      2. The context object
      3. Logging
      4. Exceptions and error handling
    2. Versioning and aliases
      1. Environment variables
    3. Packaging and deploying
      1. APEX
      2. Claudia.js
  21. Testing Lambda Functions
    1. The need for testing Lambda function
      1. Manually testing your functions with the AWS Management Console
      2. Testing functions with Mocha and Chai
      3. Testing functions using the npm modules
    2. Testing with a simple serverless test harness
  22. Event-Driven Model
    1. Introducing event-driven architectures
    2. Understanding events and AWS Lambda
      1. Lambda architecture patterns
    3. Exploring Lambda and event mapping
      1. Mapping Lambda with S3
      2. Mapping Lambda with DynamoDB
      3. Mapping Lambda with SNS
      4. Mapping Lambda with CloudWatch events
      5. Mapping Lambda with Kinesis
        1. Creating the Kinesis Stream
        2. Setting up the log streaming
        3. Packaging and uploading the function
  23. Extending AWS Lambda with External Services
    1. Introducing Webhooks
    2. Integrating GitHub with AWS Lambda
    3. Integrating Slack with AWS Lambda
    4. Invoking Lambda using an external application
  24. Build and Deploy Serverless Applications with AWS Lambda
    1. Introducing SAM
      1. Writing SAM templates
        1. AWS::Serverless::Function
        2. AWS::Serverless::Api
        3. AWS::Serverless::SimpleTable
      2. Building serverless applications with SAM
    2. Introducing AWS step functions
      1. Under the hood
      2. Getting started with step functions
      3. Building distributed applications with step functions
  25. Monitoring and Troubleshooting AWS Lambda
    1. Monitoring Lambda functions using CloudWatch
    2. Introducing AWS X-Ray
    3. Monitoring Lambda functions using Datadog
    4. Logging your functions with Loggly
  26. AWS Lambda - Use Cases
    1. Infrastructure management
      1. Scheduled startup and shutdown of instances
      2. Periodic snapshots of EBS volumes using Lambda
      3. Enabling governance using EC2 tags and Lambda
    2. Data transformation
  27. Next Steps with AWS Lambda
    1. Processing content at the edge with Lambda@Edge
    2. Building next generation chatbots with Lambda and Lex
    3. Processing data at the edge with Greengrass and Lambda
  28. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think