Search for question
Question

Sheridan Lab 1: Interacting with the cloud programmatically TELE20483 Submission Instructions Value Due Date To be submitted via SLATE 12.5% of final grade Learning Outcomes Covered in Assignment 1. Describe

the organization and general structure of a cloud provider. 2. Execute basic scripts to retrieve resource information from the cloud environment. Winter 2024 NOTE (READ ME): AWS Academy has a limit of 9 EC2 instances. Do not keep adding EC2 instances with the code or you will deactivate your account. TELE20483 Table of Contents LAB 1: INTERACTING WITH THE CLOUD PROGRAMMATICALLYO 1. ASSIGNMENT OUTLINE3 2. ASSIGNMENT DETAILS AND EXPECTED OUTCOMES4 3. PROGRAMMATIC ACCESS TO THE CLOUD5 4. SUBMISSION REQUIREMENTS6 5. ASSIGNMENT GRADE BREAKDOWN7 6. SUGGESTED IMPLEMENTATION STEPS8 7. APPENDIX - ARTIFACTS TO BE INCLUDED INTO THE REPORT9 Winter 2024 TELE20483 1. Lab 1: Assignment Outline The objective of this assignment is to programmatically deploy EC2 resources using AWS python boto3. Afterwards, the resources deployed will be verified both programmatically and via the graphic console. The assignment is meant to reinforce the student's knowledge regarding the structure of the cloud, the ability to deploy resources in varied ways and to learn how to retrieve information off the cloud. Each completed task should be supported by the artifacts outlined in the Submission Requirements and Appendix. Winter 2024 TELE20483 2. Assignment Details and Expected Outcomes In this assignment, the student is to write a python script that perform the following sub-tasks: The script will retrieve the identifications (subnet IDs) of the six subnets in the default virtual private cloud (VPC). Then using subnet IDs, the same script will deploy one EC2 instance per each subnet. ● The deployment of the EC2 will include User Data to configure httpd websites. The website landing page should say Hi from (VM's hostname) and specify student's name. The example of the user data for the Ubuntu OS is below. More details are available in the “TELE20483 Labs 2023″ document and the provided TELE20483 textbook located on SLATE. • Finally, the script will list the identification of the EC2 (instance IDs), the subnet Id the instance is deployed to and instance's private IPv4 address. The following diagram shows the requested infrastructure. By the end of the script execution, there will be a total of six websites deployed across the six default subnets. VM1 VM2 AWS region us-east-1 Summary of EC2 instances: Instance Image Winter 2024 Default VPC Amazon Linux 2 Amazon Linux 2 T | Availability Zone 1 1 EC2 Availability Zone EC2 Subnet 172.31.0.0/20 Subnet 172.31.32.0/20 Availability Zone EC2 Subnet 172.16.64.0/20 website website I Availability Zone Phyton Running the python script results in six (6) websites. Phyton EC2 I Subnet 172.31.16.0/20 Availability Zone EC2 172.31.48.0/20 | Availability Zone I 1 Function Deployment Subnet (location) EC2 Subnet 172.31.80.0/20 172.31.0.0/20 172.31.16.0/20 Security Group Allow SSH, HTTP Allow SSH, HTTP