Skip to content

ans452/ica0002-2022

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

IT Infrastructure Services 2022 Course

Course rules: link.

Video lectures: link.

Discord channel invite: link.

Virtual machines: link.

The following info is for both Monday and Tuesday groups.

Class times:

  • Monday 16:00 -- room 217 -- lecture -- video is recorded
  • Monday 17:45 -- room 410 -- lab -- video is recorded
  • Tuesday 16:00 -- room 221 -- lab
  • Tuesday 17:45 -- room 317 -- lab

DO NOT COME TO CLASS IF YOU FEEL SICK! STAY AT HOME!

This week lecture video is recorded on Mondays at 16:00. You can watch it live, or later any time that is convenient for you.

Lab task is presented on Mondays at 17:45. You can watch it live, or later any time that is convenient for you.

There are 3 lab times available. You can choose any lab time you want, but it's not required to come to class at all -- you can complete the tasks at home.

On a lab class we answer questions about previous 2 labs only. If you have any questions about older labs (say, question about lab 1 on the week 4) please use email or GitHub issues. We won't handle these in class.

Course agenda

Week 1: Intro

  • Lecture: Introduction to the course; IaaC; Ansible
  • Lab: Setup

Week 2: SSH, Web servers

  • Lecture: SSH basics; Web server basics; Nginx
  • Lab: Ansible file structure; set up Nginx as simple web server

Week 3: Web applications

  • Lecture: Dynamic web resources; web app deployment; Ansible handlers
  • Lab: Deploy a simple web application

Week 4: Troubleshooting

  • Lecture: Troubleshooting; Ansible variables; Ansible Vault
  • Lab: MySQL server as a backend for web application

Week 5: DNS

  • Lecture: DNS server; Jinja2 templates
  • Lab: Bind9 as a DNS server

Week 6: Prometheus

  • Lecture: Node exporter; Prometheus; HTTP reverse proxy
  • Lab: Setup node monitoring with Prometheus

Week 7: Grafana

  • Lecture: Mysql exporter; Bind exporter; Nginx exporter; Grafana
  • Lab: Install Grafana and exporters for running services

Week 8: Logging

  • Lecture: InfluxDB; Telegraf; Rsyslog
  • Lab: Install InfluxDB and Telegraf; configure Rsyslog

Week 9: Backups

  • Lecture: Backup theory
  • Lab: Prepare backup infra

Week 10: Backups

  • Lecture: Backup demo
  • Lab: Set up automatic backups

Week 11: High availability

  • Lecture: Intro to high availability; MySQL replication; MySQL clustering
  • Lab: Set up MySQL replication

Week 12: Virtualization

  • Lecture: Intro to virtualization; Containerization
  • Demo: Docker basics
  • Lab: Redeploy some of the previous apps as Docker containers

Week 13: HAProxy

  • Lecture: Load balancers; HAProxy; Keepalived
  • Lab: HAProxy; Keepalived

Week 14: DNS slave

  • Lecture: DNS HA setups
  • Lab: Bind9 slave

Week 15: Final lab

  • Lecture: Final lab task
  • Lab: Final lab

Week 16: Exam

  • First exam attempt (optional)

Exam times

TODO

You can choose any 2 times to take the exam in addition to week 16 exam attempt, 3 attempts in total.

Teacher contacts

Email: [email protected]

For public discussions/questions please use GitHub issues.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published