Offerta Didattica
INFORMATICA
LABORATORIO DI AMMINISTRAZIONE DEI SISTEMI
Classe di corso: L-31 - Scienze e tecnologie informatiche
AA: 2022/2023
Sedi: MESSINA
SSD | TAF | tipologia | frequenza | moduli |
---|---|---|---|---|
INF/01 | Caratterizzante | Libera | Libera | No |
CFU | CFU LEZ | CFU LAB | CFU ESE | ORE | ORE LEZ | ORE LAB | ORE ESE |
---|---|---|---|---|---|---|---|
6 | 2 | 4 | 0 | 60 | 12 | 48 | 0 |
LegendaCFU: n. crediti dell’insegnamento CFU LEZ: n. cfu di lezione in aula CFU LAB: n. cfu di laboratorio CFU ESE: n. cfu di esercitazione FREQUENZA:Libera/Obbligatoria MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli ORE: n. ore programmate ORE LEZ: n. ore programmate di lezione in aula ORE LAB: n. ore programmate di laboratorio ORE ESE: n. ore programmate di esercitazione SSD:sigla del settore scientifico disciplinare dell’insegnamento TAF:sigla della tipologia di attività formativa TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio
Obiettivi Formativi
L'obiettivo principale del corso è l'acquisizione di competenze pratiche nell'ambito dell'amministrazione di sistemi informatici complessi, con particolare attenzione all'utilizzo di soluzioni Open Source e alla gestione di componenti fisiche e virtuali.Learning Goals
The main objective of the course is the acquisition of practical skills for the administration of complex IT systems, with particular attention to the adoption of Open Source solutions and the management of physical and virtual components.Metodi didattici
Teaching Methods
Prerequisiti
Conoscenze di programmazione C, e di algoritmi e strutture dati, Sistemi Operativi.Prerequisites
Knowledge of C programming, algorithms and data structures, Operating systems.Verifiche dell'apprendimento
Assessment
Programma del Corso
Richiami di sistemi operativi. Richiami di gestione dei sistemi Unix. Richiami di linea di comando e Bash. Richiami delle tecniche di virtualizzazione e container. Introduzione alla metodologia agile di sviluppo del software. Development vs Operations. L’importanza del DevOps. L’utilizzo del Continuous Deployment. L’utilizzo della Continuous Integration (CI). L’utilizzo del Continuous Delivery (CD). Quando è necessario usarli e perché. Gestione dei repository. Git. Stato dei repository. Git commit. Git commit logs. Git staging. Rolling back git commit. Stash. Branch. Migliori pratiche di creazione e gestione dei brach. Pull request. Merge e la gestione dei conflitti. Git clone. Git fetch. Markdow e README file. Git rebase. Uso del file .gitignore. GitHub e GitLab. Costruzione di una pipeline. Introduzione alla Jenkins UI. Creazione di un job Jenkins. Eseguire Bash da Jenkins. Gestione di script parametrizzati da Jenkins. Jenkins Plugin ed SSH. Integrare Docker container con Jenkins. Gestione della sicurezza con Jenkins. Variabili globali in Jenkins. Jenkins cron. Ansible. Inventario di Ansible. YAML and JSON. Playbooks di Ansible. Moduli di Ansible. Variabili con Ansible. Costrutti condizionali e ciclici con Ansible. Building tools. Maven/Gradle. Python bdist. Jenkins Maven Plugin. Jenkins GIT Plugin. Fare il testing del codice. Archiviare gli artefatti di Jekins. Inviare notifiche di completamento della pipeline.Course Syllabus
Recap of operating systems. Recap of management of Unix systems. Recap of Command line and Bash. Review of virtualization and container techniques. Introduction to agile software development methodology. Development vs Operations. The importance of DevOps. The use of Continuous Deployment. The use of Continuous Integration (CI). The use of Continuous Delivery (CD). When you need to use them and why. Repository management. Git. Status of the repositories. Git commit. Git commit logs. Git staging. Rolling back git commit. Stash. Branch. Branch creation and management best practices. Pull request. Merge and conflict management. Git clone. Git fetch. Markdow and README files. Git rebase. Using .gitignore file. GitHub and GitLab. Building of a pipeline. Introduction to the Jenkins UI. Creating a Jenkins Job. Run Bash from Jenkins. Jenkins parameterized script management. Jenkins Plugin and SSH. Integrate Docker container with Jenkins. Security Management with Jenkins. Global variables in Jenkins. Jenkins cron. Ansible. Ansible inventory. YAML and JSON. Ansible Playbooks. Ansible modules. Variables with Ansible. Conditional and loop constructs with Ansible. Building tools. Maven / Gradle. Python bdist. Jenkins Maven Plugin. Jenkins GIT Plugin. Testing the code. Archive Jenkins Artifacts. Send pipeline completion notifications.Testi di riferimento: Pipeline As Code: Continuous Delivery with Jenkins, Kubernetes, and Terraform. Mohamed Labouardy. Manning Pubns Co
Esami: Elenco degli appelli
Elenco delle unità didattiche costituenti l'insegnamento
Docente: MARIA TERESA REGGIO
Orario di Ricevimento - MARIA TERESA REGGIO
Dato non disponibile