Machine Learning containers and placement constraints

After the quite simplistic image filtering using the ImageAssessor container, the Data Scientists want to deploy a machine learning container. This should be much better at identifying cats (and dogs!) in the images. However, they only want to run it on EC2 instances with a large number of CPUs so it doesn’t interfere with the website. In this lab, you will create a new task and configure an ECS custom constraint that uses built-in attributes. You will then create a new service with a custom placement strategy for the tasks within the service. This ensures the tasks are scheduled on container instances that meet the data science team’s requirements. After completing this lab, you will understand how to use ECS placement constraints to schedule tasks on specific container instance types, and attach custom attributes to container instances, then use those attributes to constrain the placement of tasks.