1 Migrazione dei processi: Mosix. 2 Cosa è Mosix/OpenMOSIX ? OpenMOSIX è un è una patch del kernel di Linux che aggiunge funzionalit à avanzate di clustering.

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

IlTrovatore S.p.a. IlTrovatore RemoteSearch IlTrovatore mette a disposizione di portali Internet, piccole e medie imprese, tutto il suo know-how nel settore.
Gestione della memoria
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
1 Processi e Thread Meccanismi di IPC, Inter Process Communication (1)
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Cluster openMosix Linux Day ’04 Caserta Ing. Diego Bovenzi.
Giuseppe Fabio Fortugno.
NESSUS.
Silberschatz, Galvin and Gagne Operating System ConceptsIntroduzione Che cosè un Sistema Operativo? Sistemi batch semplici Sistemi batch multiprogrammati.
INTRODUZIONE AI SISTEMI OPERATIVI
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
Gestione di Progetti Software 2 (A.A. 2004/2005) - Lezione 2 1 JAVA: obiettivi di progetto del linguaggio Nota storica: Il linguaggio JAVA (inizialmente.
Struttura dei sistemi operativi (panoramica)
File System NTFS 5.0 Disco: unità fisica di memorizzazione
Sistema Operativo Architettura degli elaboratori 1 - A. Memo La gestione dei processi stallo 9 soluzione corretta si utilizzano un semaforo per.
Sistemi Operativi Distribuiti: indice
FACOLTÁ DI INGEGNERIA CORSO DI LAUREA INGEGNERIA INFORMATICA Progetto e Sviluppo di un Algoritmo di Scheduling per il Sistema RTAI Candidato: Luca Marzario.
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri.
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Microsoft Windows Installazione, gestione ed utilizzo delle risorse Microsoft nella sezione INFN di BOLOGNA.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Benvenuti a Un incontro informativo di grande valore ed alto contenuto sulla Virtualizzazione e sistemi ad alta disponibiltà per le PMI.
Silberschatz and Galvin Operating System Concepts CAP. 1 - INTRODUZIONE.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
Il Sistema Operativo (1)
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Architettura di storage ad alta affidabilita e bilanciamento di carico per volumi centrali e di esperimento A.Brunengo, M.Corosu INFN Sezione di Genova.
© Sediin e Achab 2007 MDaemon in Cluster: il cluster in azione Milano, 5 luglio 2007 Emiliano Biocchetti - SEDIIN S.p.A. &
Lezione 1 Approccio al sistema operativo : la distribuzione Knoppix Live Cd Knoppix 3.6 Interfacce a caratteri e grafica: console e windows manager File.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
I processi.
1 Gestione del Processore (Scheduling). 2 Scheduling dei processi È l’attività mediante la quale il sistema operativo effettua delle scelte tra i processi,
Gestione del Processore (Scheduling)
10 azioni per lo scheduling su Grid Uno scheduler per Grid deve selezionare le risorse in un ambiente dove non ha il controllo diretto delle risorse locali,
Le “nuvole informatiche”
RHCS XEN Cluster Dael Maselli – Workshop CCR – Maggio 2009.
Gestione del processore (Scheduler)
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Introduzione Cos’è un sistema operativo ?. Hardware Sistema Operativo Applicazioni È il livello di SW con cui interagisce l’utente e comprende programmi.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Livello 3 Network (Rete)
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi.
1 Processi e Thread Scheduling (Schedulazione). 2 Scheduling Introduzione al problema dello Scheduling (1) Lo scheduler si occupa di decidere quale fra.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Progetto RE.VE.N.GE. MQ REliable and VErsatile News delivery support for aGEncies Sistema di Distribuzione Reti di Calcolatori LS – Prof. Antonio Corradi.
Internetworking V anno. Le soluzioni cloud per la progettazione di infrastrutture di rete.
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
Layered Grid Architecture. Application Fabric “Controlling elements locally”: Access to, & control of, resources Connectivity “Talking to Grid elements”:
Informatica Generale Marzia Buscemi
OpenMOSIX: High performance Linux farm Rosario Esposito INFN-Napoli.
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
Le basi di dati.
Licensed under Creative Commons Attribution 3.0 License / ShareGrid Idee per prospettive future
Scheduler e politiche di Marco Arcamone.
CNAF 6 Novembre Layout del testbed  wn a OS SL5.0 8 GB RAM kernel xen_3.1.0 SMP  wn a OS SL5.0 8 GB RAM kernel.
Roberto Covati – Roberto Alfieri INFN di Parma. Incontri di lavoro CCR dicembre Sommario VmWare Server (in produzione dal 2004) VmWare ESX.
CCR - Frascati 29 settembre 2008 Gruppo storage CCR Status Report Alessandro Brunengo.
Presentazione WS del 23/10/2013 al CNAF: 0&resId=0&materialId=slides&confId=6920
Alessandro Tirel - Sezione di Trieste Storage servers & TCP Tuning Proposta di studio delle problematiche connesse alla fornitura di servizi di storage.
1 Le macchine di questo pool fanno parte di una lan privata (la 125 illustrata a pag.2), di cui t2cmcondor è il gateway. Sono presenti 3 macchine su rete.
Transcript della presentazione:

1 Migrazione dei processi: Mosix

2 Cosa è Mosix/OpenMOSIX ? OpenMOSIX è un è una patch del kernel di Linux che aggiunge funzionalit à avanzate di clustering tra macchine di architettura x86. I processi in esecuzione vengono assegnati e riassegnati dinamicamente ai nodi del cluster in modo da ottenere in ogni momento il massimo vantaggio dalle risorse disponibili

3 Caratteristiche di OpenMOSIX Network transparency I nodi del cluster, che comunicano attraverso una LAN efficiente, si comportano come una singola macchina SMP.  Le applicazioni non devono essere modificate o linkate a una particolare libreria  L’utente ha l’impressione di interagire con un solo computer  La scalabilità è lineare rispetto al numero di nodi del cluster

4 Caratteristiche di OpenMOSIX (2/9) Preemptive process migration Ogni processo utente, in qualsiasi momento e in maniera trasparente può migrare verso un nodo disponibile. I processi sono costituiti da 2 parti: system context (deputy) che è legato al nodo in cui è stato creato e non può migrare user context (remote) che può migrare su qualsiasi nodo del cluster

5 Caratteristiche di OpenMOSIX (3/9) Preemptive process migration Home nodeRemote Node

6 Caratteristiche di OpenMOSIX (4/9) Preemptive process migration: limiti Alcuni processi non possono essere divisi in deputy e remote. La loro esecuzione è confinata al nodo in cui sono stati creati. In particolare NON possono migrare i processi che fanno uso di:  Writeable Shared Memory  Sockets  Real-Time scheduling

7 Caratteristiche di OpenMOSIX (5/9) Dynamic load balancing Viene realizzato con la migrazione dei processi verso i nodi più “scarichi” Tiene conto delle caratteristiche dei processi (CPU intensive, RAM intensive, I/O etc…) del numero di nodi disponibili e delle loro velocità La politica è asimmetrica e decentralizzata; Tutti i nodi usano lo stesso algoritmo di load-balancing e la riduzione del carico è effettuata indipendentemente da ogni coppia di nodi

8 Caratteristiche di OpenMOSIX (6/9) Memory ushering I processi vengono migrati verso i nodi che hanno una maggiore memoria disponibile per prevenire il trashing dovuto a continue operazioni di swap su disco. L’algoritmo di memory ushering ha priorità rispetto a quello di load-balancing L’assegnazione di un processo ad un nodo viene effettuata sulla base di un modello matematico che minimizza i costi associati all’ultilizzo delle risorse (memoria, cpu, network-bandwidth…)

9 Caratteristiche di OpenMOSIX (8/9) Algoritmi probabilistici di disseminazione delle informazioni Ad ogni intervallo di tempo (1 sec) ogni nodo colleziona e dissemina informazioni sul suo stato (CPU, memoria, n. di processi…) verso un subset di altri nodi scelti in modo casuale Ogni nodo ha un’elevata conoscenza delle risorse disponibili sugli altri nodi I nodi sono in grado di accorgersi di variazioni nella configurazione del cluster

10 Caratteristiche di OpenMOSIX (9/9) Controllo decentralizzato e autonomia dei nodi Ogni nodo è in grado di prendere autonomamente decisioni sul controllo dei processi Non esistono relazioni “master-slave” tra i nodi I nodi possono “entrare” o “uscire” dal cluster con la minima perdita di consistenza

11 MFS: MOSIX File System (1/4) OpenMOSIX è molto efficiente nell’eseguire in maniera distribuita processi CPU-bound Per gestire in maniera efficiente anche i casi di processi I/O-bound si possono utilizzare dei filesystem con supporto DFSA (Direct File System Access)

12 MFS: MOSIX File System (2/4) DFSA (Direct File System Access) Le operazioni di I/O vengono effettuate da un processo in locale, sul nodo in cui è in esecuzione e NON via rete, per evitare un overhead Il file system deve avere: –Uno stesso mount point su tutti i nodi –File consistency –Time-stamp consistency Attualmente pochissimi file system supportano DFSA

13 MFS: MOSIX File System (3/4) OpenMOSIX è dotato di un proprio filesystem: MFS (MOSIX File System), conforme alle specifiche DFSA L’algoritmo di load-balancing di OpenMOSIX consente ai processi di migrare verso i nodi su cui devono fare operazioni di I/O Con NFS i dati seguono le applicazioni mentre con MFS le applicazioni migrano verso i dati !

14 MFS: MOSIX File System (4/4) MFS è un file system simile a /proc Fornisce ad ogni nodo una visione completa di tutti i file system montati fisicamente su tutti i nodi Garantisce una consistenza della cache su uno stesso file acceduto da più nodi (la cache è mantenuta sul nodo in cui risiede fisicamente il file)

15 API di OpenMOSIX Nessuna nuova system-call Tutte le informazioni vengono gestite attraverso il file system /proc /proc/hpc /proc/hpc/admin Amministrazione /proc/hpc/info Informazioni sul cluster /proc/hpc/nodes/nnnn/ Informazioni per nodo /proc/hpc/remote/pppp/ Informazioni sui processi migrati

16 OpenMOSIX: Monitoring Il monitoring dei processi su un cluster OpenMOSIX è realizzato con delle utility che leggono le informazioni disponibili sotto /proc/hpc/info (utilizzo di cpu, memoria, velocità…)  mosmon fa parte degli “userland-tools”  mosixview con interfaccia grafica X, distribuita gratuitamente all’ indirizzo:

17 Riferimenti  Home page di OpenMOSIX