๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Running Windows Containers on AWS: A complete guide to successfully running Windows containers on Amazon ECS, EKS, and AWS Fargate

โœ Scribed by Marcio Morales


Publisher
Packt Publishing
Year
2023
Tongue
English
Leaves
213
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


Scale up your Windows containers seamlessly on AWS powered by field-proven expertise and best practices on Amazon ECS, EKS, and Fargate

Purchase of the print or Kindle book includes a free PDF eBook

Key Features

  • Leverage the most recent best practices to run and manage Windows containers on AWS
  • Learn about AWS tools to containerize and run Windows containers on AWS
  • Deeper understanding on how Amazon ECS, EKS, and Fargate supports Windows containers

Book Description

Windows applications are everywhere, from basic intranet applications to high-traffic public APIs. Their prevalence underscores the importance of combining the same tools and experience for managing a modern containerized application with existing critical Windows applications to reduce costs, achieve outstanding operational excellence, and modernize quickly. This comprehensive guide to running and managing Windows containers on AWS looks at the best practices from years of customer interactions to help you stay ahead of the curve.

Starting with Windows containers basics, you'll learn about the architecture design that powers Amazon ECS, EKS, and AWS Fargate for Windows containers. With the help of examples and best practices, you'll explore in depth how to successfully run and manage Amazon ECS, EKS, and AWS Fargate clusters with Windows containers support. Next, the book covers day 2 operations in detail, from logging and monitoring to using ancillary AWS tools that fully containerize existing legacy .NET Framework applications into containers without any code changes. The book also covers the most common Windows container operations, such as image lifecycle and working with ephemeral hosts.

By the end of this book, you'll have mastered how to run Windows containers on AWS and be ready to start your modernization journey confidently.

What you will learn

  • Get acquainted with Windows container basics
  • Run and manage Windows containers on Amazon ECS, EKS, and AWS Fargate
  • Effectively monitor and centralize logs from Windows containers
  • Properly maintain Windows hosts and keep container images up to date
  • Manage ephemeral Windows hosts to reduce operational overhead
  • Work with the container image cache to speed up the container's boot time

Who this book is for

This book is targeted towards DevOps engineer, SREs, solution architects, or a Windows sysadmin who wants to learn more about running Windows containers on AWS. In order to learn from this book, you should have a basic understanding of containers, Docker, and Kubernetes. The book is also beneficial for Windows application developers who want to explore how to achieve better application scalability using containers as a compute layer.

Table of Contents

  1. Windows Container 101
  2. Amazon Web Services - Breadth and Depth
  3. Amazon ECS - Overview
  4. Deploying a Windows Container Instance
  5. Deploying an EC2 Windows-Based Task
  6. Deploying a Fargate Windows-Based Task
  7. Amazon EKS - Overview
  8. Preparing the Cluster for OS Interoperability
  9. Deploying a Windows Node Group
  10. Managing a Windows Pod
  11. Monitoring and Logging
  12. Managing a Windows Container's Image Life Cycle
  13. Working with Ephemeral Hosts
  14. Implementing a Container Image Cache Strategy
  15. AWS Windows Containers Deployment Tools

โœฆ Table of Contents


Cover
Title Page
Copyright and Credits
Dedications
Contributors
Table of Contents
Preface
Part 1: Why Windows Containers on Amazon Web Services (AWS)?
Chapter 1: Windows Container 101
Why are Windows containers an important topic?
How does Windows Server expose container primitives?
How Windows Server implements resource controls for Windows containers
Understanding Windows container base images
Enumerating the Windows container image sizes
Delving into Windows container licensing on AWS
Summary
Further reading
Chapter 2: Amazon Web Services โ€“ Breadth and Depth
Why AWS for Windows containers?
Understanding how AWS Nitro impacts container performance
Learning about AWS container orchestrators
Summary
Part 2: Windows Containers on Amazon Elastic Container Service (ECS)
Chapter 3: Amazon ECS โ€“ Overview
Technical requirements
Amazon ECS โ€“ fundamentals
Amazon ECS โ€“ task networking
Deploying an Amazon ECS cluster with Terraform
Why Terraform?
Deploying the AWS services
Summary
Chapter 4: Deploying a Windows Container Instance
Technical requirements
Amazon ECS-optimized Windows AMIs
Amazon ECS agent
Right-sizing a Windows container instance
Storage
Processor
Memory
Network
Deploying a Windows container instance with Terraform
Deploying security groups
Summary
Chapter 5: Deploying an EC2 Windows-Based Task
Technical requirements
Understanding a task definition
Task placement strategies
Task placement constraints
Setting up AD integration
Windows containers and gMSA integration
Setting up persistent storage
Scheduling an EC2 Windows-based task with Terraform
Deploying an EC2 Windows-based task definition
Deploying an ECS service
Deploying an Application Load Balancer
Summary
Chapter 6: Deploying a Fargate Windows-Based Task
Technical requirements
AWS Fargate overview
Process isolation mode
Hyper-V isolation mode
Planning for serverless Windows containers
Fargate Windows-based task start-up time
Fargate Windows-based task image pull time
AWS Fargate Windows-based task use cases
Scheduling a Fargate Windows-based task definition with Terraform
Deploying a Fargate Windows-based task definition
Deploying an ECS service
Deploying an ALB
Summary
Part 3: Windows Containers on Amazon Elastic Kubernetes Service (EKS)
Chapter 7: Amazon EKS โ€“ Overview
Amazon EKS โ€“ fundamentals
Control plane
Data plane
Amazon VPC CNI for Windows
Amazon EKS and Windows support
Personal thoughts
Summary
Chapter 8: Preparing the Cluster for OS Interoperability
Setting up the VPC CNI plugin for Windows support
Avoiding pod-scheduling disruption
Using nodeSelector to avoid pod-schedule disruption
Using taints and tolerations to avoid pod schedule disruption
Dynamically scaling out Windows pods
Summary
Chapter 9: Deploying a Windows Node Group
Technical requirements
Amazon EKS node groups
Amazon EKS-optimized Windows AMIs
Consuming an EKS-optimized Windows AMI using Terraform
Understanding the EKS Windows bootstrap
Working with persistent storage using CSI drivers
SMB CSI driver high-level overview
Managing persistent volumes on Kubernetes
Deploying an Amazon EKS cluster with Windows nodes using Terraform
Creating security groups
Creating an OpenID Connect endpoint and IAM roles for the cluster
Creating instance roles for Windows and Linux node groups
Enabling VPC CNI Windows support
Using ConfigMap to add Kubernetes permissions (RBAC) to a node level
Creating a launch template to launch and bootstrap Windows and Linux Amazon EC2 nodes
Creating an Auto Scaling group
Summary
Chapter 10: Managing a Windows Pod
Technical requirements
Exploring Windows host and Pod resource management
Pod memory management
Pod CPU management
Host CPU management
System resource reservations
Understanding the Runtime Class use case
Understanding Active Directory integration on Kubernetes
Credential specs
Deploying a Windows Pod on Amazon EKS
Connecting to the Amazon EKS cluster
Deploying the Windows Pod
Summary
Part 4: Operationalizing Windows Containers on AWS
Chapter 11: Monitoring and Logging
Implementing LogMonitor
Implementing log forwarding
The awslogs driver as a log processor
Fluent Bit as a log processor
Using Amazon CloudWatch Container Insights
Summary
Chapter 12: Managing a Windows Container's Image Life Cycle
Understanding Microsoft Patch Tuesday
Security patch compliance on Windows container images
Rebuilding your container image frequently
Summary
Chapter 13: Working with Ephemeral Hosts
The idea behind ephemeral hosts
Why custom AMIs
Building a custom AMI pipeline
Summary
Chapter 14: Implementing a Container Image Cache Strategy
Why is implementing a container image cache strategy important?
Container runtime pull throttling
Layer extraction is a serial operation
Layer extraction is CPU/disk intensive when Windows Defender antivirus is enabled
Speeding up a Windows container startup time
Extending EC2 Image Builder with custom components
Summary
Chapter 15: AWS โ€“ Windows Containers Deployment Tools
Deploying an Amazon EKS cluster with eksctl
Containerizing Windows applications with AWS App2Container
Deploying Windows containers with AWS Copilot
Summary
Index
Other Books You May Enjoy


๐Ÿ“œ SIMILAR VOLUMES


Running Windows Containers on AWS: A com
โœ Marcio Morales ๐Ÿ“‚ Library ๐Ÿ“… 2023 ๐Ÿ› Packt Publishing ๐ŸŒ English

<p><span>Scale up your Windows containers seamlessly on AWS powered by field-proven expertise and best practices on Amazon ECS, EKS, and Fargate</span></p><p><span>Purchase of the print or Kindle book includes a free PDF eBook</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Leverage

Running Windows Containers on AWS: A com
โœ Marcio Morales ๐Ÿ“‚ Library ๐Ÿ“… 2023 ๐Ÿ› Packt Publishing ๐ŸŒ English

<p><span>Scale up your Windows containers seamlessly on AWS powered by field-proven expertise and best practices on Amazon ECS, EKS, and Fargate</span></p><p><span>Purchase of the print or Kindle book includes a free PDF eBook</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Leverage

Amazon Fargate Quick Start Guide: Learn
โœ Deepak Vohra ๐Ÿ“‚ Library ๐Ÿ“… 2018 ๐Ÿ› Packt Publishing ๐ŸŒ English

<p><b>This book gets you started and gives you knowledge about AWS Fargate in order to successfully incorporate it in your ECS container application.</b></p> Key Features <li>Gives you a quick walk-through over the Amazon Elastic Container Services (ECS) </li> <li>Provides an in depth knowledge of t

Deploy Containers on AWS: With EC2, ECS,
โœ Shimon Ifrah ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Apress ๐ŸŒ English

<p>Start deploying, managing, and scaling containerized applications into AWS container infrastructure using Docker on Amazon EC2, Amazon Elastic Container Service (ECS), and AWS Elastic Kubernetes Service (EKS). This step by step practical book will cover all the available container services on AWS

Deploy Containers on AWS With EC2, ECS,
โœ Ifrah, Shimon ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Apress ๐ŸŒ English

Start deploying, managing, and scaling containerized applications into AWS container infrastructure using Docker on Amazon EC2, Amazon Elastic Container Service (ECS), and AWS Elastic Kubernetes Service (EKS). This step by step practical book will cover all the available container services on AWS an

Deploy Containers on AWS With EC2, ECS,
โœ Ifrah, Shimon ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Apress ๐ŸŒ English

Start deploying, managing, and scaling containerized applications into AWS container infrastructure using Docker on Amazon EC2, Amazon Elastic Container Service (ECS), and AWS Elastic Kubernetes Service (EKS). This step by step practical book will cover all the available container services on AWS an