Summary and Quiz
Get a refresher on what you’ve learned in the Containers section, and take a short quiz to validate your knowledge.
We'll cover the following
In this lesson, we’ll summarize what we’ve learned in this chapter and test our knowledge of the containers and AWS container orchestration services with a quiz.
Summary
In this chapter, we learned about containers and AWS container orchestration services. Here’s a summary of the key takeaways from this chapter:
Virtualization refers to the logical division of a physical machine into virtual machines (VM) such that each VM running has its own OS, required libraries, and the application. Virtualization has limits, as only a limited number of VMs can share a single physical machine due to a server’s processing and storage limitations.
These limitations lead us to Containerization, logically isolated spaces on physical machines that use the same operating system as the physical machine. Different software can be used to manage, develop, and maintain these containers, such as Docker, Portainer, etc.
Docker is a software platform that simplifies container development, shipping, and management of container applications. Docker separates the underlying infrastructure, such that the applications can be quickly run on different platforms irrespective of hardware. Let’s take a look at the two major components of Docker:
A Dockerfile is a blueprint for creating Docker images. It contains a set of instructions on how to build a docker image.
A Docker image is a set of read-only instructions that, when executed, creates a container.
A Container Orchestration service is a tool to automate, scale, and manage containers, e.g., Docker Engine.
A Docker Engine is an open-source container orchestration service that allows developers to package application and their dependencies into lightweight containers.
As we need different tools to manage containers, we also require storage to store container images. A container registry is used to store, maintain, and distribute different images.
Amazon Elastic Container Registry (ECR) is an AWS managed Docker container registry service. ECR provides a secure and scalable repository to store, manage, and deploy Docker images. There are two types of registries in ECR:
A private registry is available to everyone with IAM permissions only.
A public registry is a container registry publicly accessible to anyone on the internet.
Amazon Elastic Container Service (ECS) is a fully managed container orchestration service by AWS. It simplifies the deployment and management of containerized applications, allowing us to run Docker containers at scale. It has three layers:
Provisioning is the tool used to manage and deploy applications on ECS.
A controller is where ECS manages how the applications are deployed in the form of tasks or services from the task definition, the underlying infrastructure is also named capacity.
ECS Anywhere by Amazon ECS is container orchestration software to manage containers on-premises or data centers.
Amazon Elastic Kubernetes Service (EKS) is a fully managed container orchestration service that simplifies managing Kubernetes clusters on AWS. EKS manages clusters with a control plane hosted in an AWS-managed VPC and worker nodes in a customer-managed VPC.
Amazon EKS Distro, an open-source distribution of Kubernetes by AWS. It offers the same core components that power Amazon Elastic Kubernetes Service (EKS) for creating and managing containerized applications.
AWS Outposts is an AWS-managed service used to extend AWS infrastructure to data centers or on-premises infrastructure to offer consistency across all infrastructures. EKS can be used with AWS Outposts to run and manage clusters on-premises completely or partially known as Local and Extended clusters respectively.
Local clusters refer to having the complete cluster, i.e., the Control plane and worker nodes on the Outposts.
Extended clusters are the K8 clusters that have their control plane in AWS-managed VPC and worker nodes on the Outposts.
EKS Anywhere is a customer-managed container management software built by AWS to run and manage Kubernetes clusters on-premises or at the edge. The edge refers to Kubernetes clusters closer to where data is generated or consumed rather than centralized cloud data centers.
Test your knowledge
Take a short quiz to validate your knowledge and to make sure you’ve not missed out on anything:
Get hands-on with 1400+ tech skills courses.