OPS345 Weekly Schedule: Difference between revisions

From Littlesvr Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
(15 intermediate revisions by the same user not shown)
Line 6: Line 6:
<table cellspacing="0" cellpadding="5" width="100%" style="border-top: thin solid black;">
<table cellspacing="0" cellpadding="5" width="100%" style="border-top: thin solid black;">
  <tr valign="top>
  <tr valign="top>
   <td width="20%" style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Week</td>
   <td width="20%" style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Week</td>
   <td style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Objectives and Tasks</td>
   <td style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Objectives and Tasks</td>
   <td style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Labs</td>
   <td style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Videos</td>
  <td width="10%" style="border-bottom: thin solid black;font-weight:bold;background-color:#f0f0f5;">Labs</td>
  </tr>  
  </tr>  
  <tr valign="top">
  <tr valign="top">
   <td width="20%" style="border-bottom: thin solid black;">'''Week 1:'''<br>10 jan - 14 jan<br></td>
   <td width="20%" style="border-bottom: thin solid black;">'''Week 1:'''<br>9 - 13 jan<br></td>
   <td style="border-bottom: thin solid black;">'''Course introduction'''<ul>
   <td style="border-bottom: thin solid black;">'''Course introduction'''<ul>
     <li>About the course</li>
     <li>About the course</li>
     <li>Review of prerequisite skills from ULI101 and OPS245</li>
     <li>Review of prerequisite skills from ULI101 and OPS245</li>
Line 18: Line 19:
     <li>Your workstation setup</li>
     <li>Your workstation setup</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2001%20-%20Course%20introduction.mp4 Andrew's Course Introduction]<br />[http://ops345.ca/videos/2022-3/OPS345%2002%20-%20Prep%20for%20labs.mp4 Andrew's Prep for Labs]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Prep | Prep for Labs]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Prep | Prep for Labs]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td width="20%" style="border-bottom: thin solid black;">'''Week 2:'''<br>17 jan - 21 jan<br></td>
   <td width="20%" style="border-bottom: thin solid black;">'''Week 2:'''<br>16 - 20 jan<br></td>
   <td style="border-bottom: thin solid black;">'''First VM in the cloud'''<ul>
   <td style="border-bottom: thin solid black;">'''First VM in the cloud'''<ul>
     <li>AWS cost monitoring</li>
     <li>AWS cost monitoring</li>
     <li>Basic security on a public-facing server: users, passwords, login requirements, SSH keys, lock-out prevention</li>
     <li>Basic security on a public-facing server: users, passwords, login requirements, SSH keys, lock-out prevention</li>
Line 28: Line 30:
     <li>Deploying a pre-built VM on AWS</li>
     <li>Deploying a pre-built VM on AWS</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2003%20-%20Lab%201.mp4 Andrew's Lab 1]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_1 | Lab 1]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_1 | Lab 1]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 3:'''<br>24 jan - 28 jan<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 3:'''<br>23 - 27 jan<br></td>
   <td  style="border-bottom: thin solid black;">'''AWS networking, iptables'''<ul>
   <td  style="border-bottom: thin solid black;">'''AWS networking, iptables'''<ul>
     <li>The purpose of a firewall on a server on the internet</li>
     <li>The purpose of a firewall on a server on the internet</li>
Line 39: Line 42:
     <li>Port forwarding</li>
     <li>Port forwarding</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2004%20-%20Lab%202.mp4 Andrew's Lab 2]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_2 | Lab 2]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_2 | Lab 2]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 4:'''<br>31 jan - 4 feb<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 4:'''<br>30 jan - 3 feb<br></td>
   <td  style="border-bottom: thin solid black;">'''Web server'''<ul>
   <td  style="border-bottom: thin solid black;">'''Web server'''<ul>
     <li>Apache web server configuration</li>
     <li>Apache web server configuration</li>
Line 50: Line 54:
     <li>HTTP vs HTTPS</li>
     <li>HTTP vs HTTPS</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2005%20-%20Lab%203.mp4 Andrew's Lab 3]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_3 | Lab 3]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_3 | Lab 3]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 5:'''<br>7 feb - 11 feb<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 5:'''<br>6 - 10 feb<br></td>
   <td  style="border-bottom: thin solid black;">'''Databases'''<ul>
   <td  style="border-bottom: thin solid black;">'''Databases'''<ul>
     <li>RDBMS fundamentals</li>
     <li>RDBMS fundamentals</li>
Line 60: Line 65:
     <li>Web server + database example: NextCloud</li>
     <li>Web server + database example: NextCloud</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2006%20-%20Lab%204.mp4 Andrew's Lab 4]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_4 | Lab 4]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_4 | Lab 4]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 6:'''<br>14 feb - 18 feb<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 6:'''<br>13 - 17 feb<br></td>
   <td  style="border-bottom: thin solid black;">'''Assignment 1'''<ul>
   <td  style="border-bottom: thin solid black;">[[OPS345_Assignment 1 |'''Assignment 1''']]<ul>
     <li>Creating/using AMIs</li>
     <li>Creating/using AMIs</li>
     <li>Automatic synchronisation using rsync, ssh keys, & cron</li>
     <li>Automatic synchronisation using rsync, ssh keys, & cron</li>
Line 70: Line 76:
     <li>Really simple python scripting</li>
     <li>Really simple python scripting</li>
   </ul></td>
   </ul></td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Assignment 1 | Assignment 1]]</td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2007%20-%20Assignment%201.mp4 Andrew's Asg 1]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Assignment 1 |Assignment 1]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 7:'''<br>21 feb - 25 feb<br>(Monday is a holiday)<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 7:'''
21 - 24 feb
(monday is a holiday)</td>
   <td  style="border-bottom: thin solid black;">'''Evaluation'''<ul>
   <td  style="border-bottom: thin solid black;">'''Evaluation'''<ul>
     <li>Guided self-evaluation (online)</li>
     <li>Guided self-evaluation (online)</li>
     <li>Presentation (in-class)</li>
     <li>Presentation (in-class)</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;background-color:#f0f0f5;">'''Study Week:'''<br>28 feb - 4 mar</td>
   <td  width="20%" style="border-bottom: thin solid black;background-color:#f0f0f5;">'''Study Week:'''<br>27 feb - 3 mar</td>
   <td  colspan="3" style="border-bottom: thin solid black;background-color:#f0f0f5;">&nbsp;</td>
   <td  colspan="3" style="border-bottom: thin solid black;background-color:#f0f0f5;"></td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 8:'''<br>7 mar - 11 mar<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 8:'''<br>6 - 10 mar</td>
   <td  style="border-bottom: thin solid black;">'''DNS'''<ul>
   <td  style="border-bottom: thin solid black;">'''DNS'''<ul>
     <li>DNS overview</li>
     <li>DNS overview</li>
Line 93: Line 103:
     <li>Modify Apache to use HTTPS</li>
     <li>Modify Apache to use HTTPS</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2008%20-%20Lab%205%20part%201.mp4 Andrew's Lab 5 part 1]<br />[http://ops345.ca/videos/2022-3/OPS345%2009%20-%20Lab%205%20part%202.mp4 Andrew's Lab 5 part 2]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_5 | Lab 5]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_5 | Lab 5]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 9:'''<br>14 mar - 18 mar<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 9:'''<br>13 - 17 mar</td>
   <td  style="border-bottom: thin solid black;">'''Simple email server'''<ul>
   <td  style="border-bottom: thin solid black;">'''Simple email server'''<ul>
     <li>Email overview</li>
     <li>Email overview</li>
Line 105: Line 116:
     <li>Email server security: open relays, port access</li>
     <li>Email server security: open relays, port access</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2010%20-%20Lab%206.mp4 Andrew's Lab 6]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_6 | Lab 6]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_6 | Lab 6]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 10:'''<br>21 mar - 25 mar<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 10:'''<br>20 - 24 mar<br></td>
   <td  style="border-bottom: thin solid black;">'''IMAP server'''<ul>
   <td  style="border-bottom: thin solid black;">'''IMAP server'''<ul>
     <li>Set up Thunderbird for your domain</li>
     <li>Set up Thunderbird for your domain</li>
Line 115: Line 127:
     <li>Set up Thunderbird for myseneca</li>
     <li>Set up Thunderbird for myseneca</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">[http://ops345.ca/videos/2022-3/OPS345%2011%20-%20Lab%207.mp4 Andrew's Lab 7]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_7 | Lab 7]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_7 | Lab 7]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 11:'''<br>28 mar - 1 apr<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 11:'''<br>27 - 31 mar<br></td>
   <td  style="border-bottom: thin solid black;">'''Proper Cloud data storage'''<ul>
   <td  style="border-bottom: thin solid black;">'''Proper Cloud data storage'''<ul>
     <li>Storage overview on AWS</li>
     <li>Storage overview on AWS</li>
Line 126: Line 139:
     <li>S3</li>
     <li>S3</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_8 | Lab 8]]</td>
   <td style="border-bottom: thin solid black;font-weight:bold;">[[OPS345_Lab_8 | Lab 8]]</td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 12:'''<br>4 apr - 8 apr<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 12:'''3 - 6 apr
(friday is a holiday)
 
<br></td>
   <td  style="border-bottom: thin solid black;">'''Automatic Deployment and Configuration Management (no lab)'''<ul>
   <td  style="border-bottom: thin solid black;">'''Automatic Deployment and Configuration Management (no lab)'''<ul>
     <li>What we did wrong in this course</li>
     <li>What we did wrong in this course</li>
Line 136: Line 153:
     <li>Containers</li>
     <li>Containers</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
  </tr>
  </tr>
  <tr valign="top">
  <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 13:'''<br>11 apr - 15 apr<br>(Friday is a holiday)</td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 13:'''<br>10 - 14 apr</td>
   <td  style="border-bottom: thin solid black;">'''[[OPS345_Assignment 2 | Assignment 2]]'''<ul>
   <td  style="border-bottom: thin solid black;">
      <li>Roundcube Webmail</li>
  '''[[OPS345_Assignment_2 |Assignment 2]]'''<ul>
   </ul></td>   
    <li>Roundcube Webmail</li>
   </ul><ul>
    <li>Overview of skills gained</li>
  </ul>
  </td>   
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
  <td style="border-bottom: thin solid black;font-weight:bold;">'''[[OPS345_Assignment_2 |Assignment 2]]'''</td>
  </tr> <tr valign="top">
  </tr> <tr valign="top">
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 14:'''<br>18 apr - 22 apr<br></td>
   <td  width="20%" style="border-bottom: thin solid black;">'''Week 14:'''<br>17 - 21 apr<br></td>
   <td  style="border-bottom: thin solid black;">'''Evaluation'''<ul>
   <td  style="border-bottom: thin solid black;">'''Evaluation'''<ul>
     <li>Guided self-evaluation (online)</li>
     <li>Guided self-evaluation (online)</li>
     <li>Presentation (in-class)</li>
     <li>Presentation (in-class)</li>
   </ul></td>
   </ul></td>
  <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
   <td style="border-bottom: thin solid black;font-weight:bold;"></td>
  </tr>
  </tr>

Revision as of 14:56, 6 January 2023

Note: Each professor will indicate the due dates for labs, tests and assignments for their sections. This schedule is a general guideline for week-by-week content.
Week Objectives and Tasks Videos Labs
Week 1:
9 - 13 jan
Course introduction
  • About the course
  • Review of prerequisite skills from ULI101 and OPS245
  • AWS account requirements and account setup
  • Your workstation setup
Andrew's Course Introduction
Andrew's Prep for Labs
Prep for Labs
Week 2:
16 - 20 jan
First VM in the cloud
  • AWS cost monitoring
  • Basic security on a public-facing server: users, passwords, login requirements, SSH keys, lock-out prevention
  • AWS networking, static IPs
  • Deploying a pre-built VM on AWS
Andrew's Lab 1 Lab 1
Week 3:
23 - 27 jan
AWS networking, iptables
  • The purpose of a firewall on a server on the internet
  • AWS Security Groups and iptables
  • iptables fundamentals
  • iptables setup & troubleshooting
  • Port forwarding
Andrew's Lab 2 Lab 2
Week 4:
30 jan - 3 feb
Web server
  • Apache web server configuration
  • Web server storage, configuration, LVM
  • Simple PHP websites
  • Public server without public ip
  • HTTP vs HTTPS
Andrew's Lab 3 Lab 3
Week 5:
6 - 10 feb
Databases
  • RDBMS fundamentals
  • MariaDB on AWS
  • Practice with MariaDB
  • Web server + database example: NextCloud
Andrew's Lab 4 Lab 4
Week 6:
13 - 17 feb
Assignment 1
  • Creating/using AMIs
  • Automatic synchronisation using rsync, ssh keys, & cron
  • Simple load balancing using iptables
  • Really simple python scripting
Andrew's Asg 1 Assignment 1
Week 7:

21 - 24 feb

(monday is a holiday)
Evaluation
  • Guided self-evaluation (online)
  • Presentation (in-class)
Study Week:
27 feb - 3 mar
Week 8:
6 - 10 mar
DNS
  • DNS overview
  • Register a domain name
  • Set up A, CNAME, TXT records
  • Set up Let's Encrypt
  • Modify Apache to use HTTPS
Andrew's Lab 5 part 1
Andrew's Lab 5 part 2
Lab 5
Week 9:
13 - 17 mar
Simple email server
  • Email overview
  • MX records
  • Third AWS VM: email
  • Basic Postfix setup
  • Delivery using dovecot-lda to Maildir
  • Email server security: open relays, port access
Andrew's Lab 6 Lab 6
Week 10:
20 - 24 mar
IMAP server
  • Set up Thunderbird for your domain
  • Add encryption and authentication support to Postfix
  • Set up Dovecot with SSL
  • Set up Thunderbird for myseneca
Andrew's Lab 7 Lab 7
Week 11:
27 - 31 mar
Proper Cloud data storage
  • Storage overview on AWS
  • EBS
  • RDS
  • EFS
  • S3
Lab 8
Week 12:3 - 6 apr

(friday is a holiday)


Automatic Deployment and Configuration Management (no lab)
  • What we did wrong in this course
  • Automatic, demand-based deployment of VMs
  • Automatically configuring new VMs
  • Containers
Week 13:
10 - 14 apr
Assignment 2
  • Roundcube Webmail
  • Overview of skills gained
Assignment 2
Week 14:
17 - 21 apr
Evaluation
  • Guided self-evaluation (online)
  • Presentation (in-class)