Overview
Course Week 1 - Open Stack and CSCloud
Watch course intro below, read the Study Guide and make sure you are registered for the course in Ladok.
- Course Introduction Video Recording on LNU Play. You have to log in to access it.
- Course Intro slides.
- Week 1 slides: Interacting with Cloud.
- Cumulus guide slides and Appendix summarizing the commands.
Start working and getting acquainted with our cloud environment.
Goal for course week:
- Be acquinted with the Cloud environment
- Be able to create a machine (incl. network, router and security groups) in the University Cloud
- Install a web server on that machine that answeres on a port (80 or 8080 for example)
- Make sure that you can reach the web page from your browser
Even though you should never use http alone without also setting up certificates to be able to use https, in this week we stop on the milestone of having a webserver listening
Course Week 2 - Automated Provisioning and configuration
Stand up/Morning lecture:
Goals
Theory
- Understand the benefits of automating the deployment and management of computing infrastructure. Infrastructure as Code (IaC)
- What is “Infrastructure as Code” (IaC)
- Motivation. Benefits of using IaC.
- Languages for IaC.
- Properties of infrastructure code (e.g., idempotency)
Practice
- Get familiarity with a tool that automates and manages the creation of computing infrastructure. (manually created previous week)
- Install OpenTofu or Terraform (they offer the same functionality for our week purposes)
- Create a .tf-file used for creating the same infrastructure as course week 1 (helping material).
Course Week 3 - Automated configuration
This week we had a guest lecture on Google Cloud Platform and IaC with Jonas Ahnstedt from Imeto
- Slides from the guest lecture. Download the slides to access links!
Theory
If you have not yet completed last week's material, please ensure you review it, as it provides the foundational principles and benefits of IaC. Review reading material.
This week, we continue with Infrastructure as Code (IaC). The focus is on transitioning from manual to automated server configuration. Instead of running commands in the terminal, you will now learn to "program" your servers using Ansible. This method ensures a reliable and consistent configuration of your infrastructure, just like with your application code.
Practice
Get familiarity with a tool that automates and manages the software provisioning and configuration of the computing infrastructure.
- Install Ansible
- Install nginx or apache2, change the default listening prot and put our website on the Ubuntu machine created with Terraform/OpenTofu last week (helping material).
Course Week 4 - CI/CD Pipelines
TBA
Theory
- Understand the concept, principles, and benefits of Continuous Integration/Delivery/Deployment (CI/CD). Understand the concept of a Deployment Pipeline and its relation to the CI/CD
- CI/CD is now available earlier in your educational program, see materials in 1dv613: CI/CD intro
Practice
- Get familiar with a tool that supports CI/CD and create our first Deployment Pipeline, which will automatically execute every time that we do a change (push) to our software project.
- Create a CI/CD pipeline
- After every change in our application that is pushed to the repository, our CI/CD pipeline will automatically execute a series of operations.
- Taking advantage of our experience last week with Ansible, we will focus on automating the operations that deploy the newest version of our application in a staging environment (pre-production). helping material.
Course Week 5 - 6 - Assignment 1
Lectures
TBA
Practice
It is time to start working on Assignment 1. Read more about the assignment here.
Reading Material
