Realizzare un laboratorio per la
didattica sulla piattaforma
applicativa Microsoft
Silvano Coriani
([email protected])
Academic Developer Evangelist
Developer & Platform Evangelism
Microsoft
Microsoft Certified
Microsoft Certified
Microsoft Certified
Microsoft Certified
Microsoft Certified
Trainer
Solution Developer
Application Developer
System Engineer + Internet
DataBase Administrator
Agenda
• Pianificare l’architettura della rete del
laboratorio
• Implementare i servizi di rete principali
• Automatizzare l’installazione del software sui
client
• Organizzare la sicurezza
• Sviluppare con VS.NET 2003 senza privilegi
amministrativi
• Utilizzare gli Academic Tools per Visual
Studio.NET 2003
Pianificare l’architettura
della rete del laboratorio
Analizzare requisiti e servizi del lab
• Il lab fa parte della rete della scuola oppure è
un’isola a se stante?
• Sicurezza
• Distribuzione e installazione del software
• Amministrazione centralizzata vs. locale
• Che tipo di servizi sono necessari?
• Accesso a internet dalle macchine del laboratorio?
• Necessità di preservare la stato dei PC e ripristino
rapido della configurazione iniziale?
Analizzare requisiti e servizi del lab
• Che tipo di applicativi e servizi per la
didattica devo installare?
• Pacchetti ormai datati?
• Compatibilità con OS recenti
• Utilizzo di componentistica hardware particolare?
• Schede di acquisizione dati, tavolette grafiche, ecc.
• Applicativi dell’ultima generazione?
• Visual Studio.NET 2003, SQL Server 2000 / MSDE,
ecc.
• A seconda delle diverse problematiche
potrebbe essere necessario orientarsi su
particolari OS
• Es. Windows 9x per l’accesso diretto all’hw
Scelta del sistema operativo di rete
• Windows 2000 Server e Windows Server 2003, nelle
varie edizioni, consentono di implementare le
funzionalità necessare alla creazione di un tipico
laboratorio
•
•
•
•
Servizi di rete
Sicurezza
Application Server
Evitare la Web Edition per problematiche di installazione di
diversi prodotti
• Grazie alla famiglia Windows Server System è
possibile coprire tutte le altre comuni esigenze
• Database server
• Mail server
• Condivisione delle informazioni / portale del laboratorio
Possibili scenari architetturali
• Workgroup indipendente dalla rete della scuola
• Server e macchine del laboratorio come “isole” da
amministrare localmente
• Posso beneficiare / utilizzare i comuni servizi di rete per
semplificare l’amministrazione
• DHCP e DNS integrati per la gestione degli indirizzi IP e la
risoluzione dei nomi
• Condividere una risorsa (share di rete, virtual directory,
servizi, ecc.) richiede una configurazione locale dei permessi
• Complessità di configurazione
• Per l’installazione automatica del sw posso basarmi
su applicativi di terze parti
• Es. Ghost e prodotti simili
Possibili scenari architetturali
• Creazione di un dominio, o di un
sottodominio della rete della scuola
• Struttura centralizzata di amministrazione delle
risorse della rete
• Basato su Active Directory
• Consente di creare delle politiche di gestione delle
risorse e di semplificare l’amministrazione
• Group Policy per la gestione della sicurezza, della
configurazione del client, dell’installazione del
software, ecc.
• Consente di gestire problematiche quali le deleghe
amministrative per un gruppo di risorse, ecc.
Active Directory
Forest
Domain
Domain
Tree
Domain
Domain
Domain
Domain
Tree
Domain
OU
Domain
Objects
OU
Domain
OU
Possibili scenari architetturali
• Consente di implementare i Remote
Installation Services (RIS) per gestire
l’installazione automatica del sistema
operativo e del software applicativo sulle
macchine degli studenti
• Necessità di Active Directory, DHCP e DNS per
funzionare
• Le schede di rete devo essere conformi alle
specifiche PXE (Intel)
• Servizi presenti in Windows 2000 Server e
Windows Server 2003
• Non installati di default, occorre selezionarli tra i
Windows Components
Remote Installation Services
BINL
2
2
DHCP RIS
Server Server
3
1
RIS
Client
Active
Directory
6
5
Client
Account
4
GPO
&
Image
Settings
Client Installation Wizard
Possibili scenari architetturali
• Utilizzo di Terminal Services
• Utilizzo dei singoli PC come “terminali” del server
remoto
• Il sw viene installato centralmente sul server
• Occorre dimensionare correttamente il server
centrale
• http://www.msdnaa.net/devsystem/default.aspx
• Inclusi in Windows 2000 Server e Windows
Server 2003
• In modalità “Application mode” per gestire le
normali attività degli studenti nel laboratorio
Terminal Services
RDP
TCP/IP
Client
My Documents
My Network
Places
My Computer
Recycle Bin
Terminal Server
Internet Explorer
Start
12:00 PM
Utilizzo di Microsoft Virtual PC 2004
• Possibilità di lavorare su macchine virtuali
“ospitate” dai singoli PC e dal server del
laboratorio
• Creazione di una “immagine” standard della
macchina base dello studente
• Copia del file sui PC del laboratorio
• Occorre Virtual PC installato sui PC
• Almeno 256Mb di RAM
• 128 per il sistema host, 128 per la Virtual Machine
• La macchina virtuale può mantenere le
modifiche oppure essere “resettata” alla
nuova accensione
• Soluzione adatta a laboratori condivisi tra
diverse materie o corsi
I principali servizi di rete
• In Windows Server 2000/2003 sono presenti
tutti i servizi di rete necessari al
funzionamento del laboratorio
• Risoluzione dei nomi
• DNS
• Assegnazione automatica degli indirizzi IP
• DHCP
• Creazione e gestione di subnet di rete,
condivisione di connessioni Internet, NAT
• RRAS (Routing e Remote Access)
DHCP
Non-DHCP Client:
static IP
configuration
DHCP Client:
IP configuration
from
DHCP server
IP Address1
DHCP Client:
IP configuration
from DHCP server
IP Address2
DHCP
Database
IP Address1
IP Address2
IP Address3
DHCP
Server
Installare il DHCP Service
Networking Services
To add or remove a component, click the check box. A shaded box means that only part
of the component will be installed. To see what’s included in a component, click Details.
Subcomponents of Networking Services:
COM Internet Services Proxy
0.0 MB
0.8 MB
0.0 MB
Domain Name System (DNS)
Dynamic Host Configuration Protocol (DHCP)
0.0 MB
Internet Authentication Service
0.0 MB
QoS Admission Control Service
0.0 MB
Simple TCP/IP Services
0.0 MB
Site Server LDAP Services
1.8 MB
Description:
Enables a network connected to the Internet to automatically assign a
temporary IP address to a host when the host connects to the network.
Total disk space required:
Space available on disk:
0.9 MB
Details...
912.4 MB
OK
Cancel
DNS
Forward Lookup
IP address for nwtraders.msft?
IP address = 192.168.1.50
DNS Server
Reverse Lookup
Name for 192.168.1.50?
Name = nwtraders.msft
DNS Server
DHCP e DNS
In Windows Server i due servizi sono
integrati
DHCP
Server
Computer1
1 Request for IP address
Assign IP address
of 192.168.120.133
Dynamic Update
2
Dynamic Update
Computer1
192.168.120.133
DNS Server
Zone Database
Network Address Translators (NATs)
192.168.0.10
Web Server
w2.x2.y2.z2
Web Browser
w1.x1.y1.z1
Internet
NAT
Internet Information Services 6.0
Process Mgr
metabase
WWW
Service
Config Mgr
INETINFO
Application
Pool 1
Application
Pool 2
Web Garden
W3WP.exe
W3WP.exe
W3WP.exe
ASP.NET ISAPI
ISAPI
Extensions
(ASP, etc.)
ASP.NET ISAPI
CLR Application
Domain
CLR Application
Domain
HTTP.sys
ISAPI Filters
CLR Application
Domain
CLR Application
Domain
Sviluppare con VS.NET 2003
senza privilegi amministrativi
Privilegi necessari all’utilizzo di VS.NET
2003
• L’installazione di VS.NET 2003 necessità di
privilegi amministrativi
• Per utilizzare successivamente il pacchetto
non è necessario possedere tali privilegi ma
occorre essere membri dei gruppi
• Debugger Users
• Indispensabile per poter eseguire il debugging passo
passo delle applicazioni
• VS Developers
• Necessario per l’interazione con il server Web nello
sviluppo di tali progetti
• E ovviamente avere i privilegi necessari sulle
risorse alle quali si accede
• Es. cartelle del file system, ecc.
Privilegi necessari all’utilizzo di VS.NET
2003
• Per il debug delle applicazioni Web esiste
un’altro requisito:
• L’identità del processo che ospita l’applicazione
web deve essere la stessa dell’utente che esegue
il debug
• In Windows Server 2003 si configura a livello di
Application Pool di Internet Information Services 6.0
• In Windows XP occorre agire sul file machine.config e
modificare il tag <processModel />
• In generale, è consigliabile eseguire il debug
di applicazioni web “locali”, piuttosto che su
un server centralizzato
• Necessita web server installato sulle macchine
degli studenti (Windows 2000 Pro, XP o 2003)
Privilegi necessari all’utilizzo di VS.NET
2003
• In tutti e due i casi l’operazione deve essere
eseguita utilizzando una identità
amministrativa
• Questa operazione potebbe essere eseguita
attraverso un logon script (eseguito con credenziali
amministrative) che richiede allo studente di
inserire la propria password e che modifica le
impostazioni della macchina locale
Utilizzare gli Academic Tools
per Visual Studio.NET 2003
Academic Tools
• Insieme di strumenti integrati con Visual
Studio.NET 2003
• Orientati alla didattica
• Creazione e pubblicazione di esercitazioni
• Raccolta e valutazione dei risultati
• Basati su una infrastruttura di rete
tradizionale
• Server Web centralizzato per le pubblicazioni
• Disponibili in modalità Shared Source
• È possibile personalizzarne lingua /
funzionamento secondo le proprie esigenze
• http://www.msdnaa.net/academicTools
Strumenti per il docente
• Assignment Publishing Tools
• Abilitano la pubblicazione di corsi ed esercitazioni per gli
studenti attraverso un server Web, una share di rete o un
sito FTP
• Assignment Manager
• Consente la gestione delle sottomissioni per le esercitazioni,
il tracking di queste ultime, la notifica dei risultati e di
messaggi
• Code Extraction
• Consente di creare uno scheletro di applicazione per gli
studenti, rimuovendo il codice selezionato creando così il
progetto dal quale partiranno gli studenti per la soluzione
del problema assegnato
• Documentazione
• Descrive le varie operazioni possibili con gli Academic Tools,
include tutorial ed esempi utili agli scopi didattici
Strumenti per lo studente
• Application Wizards
• Aiutano gli studenti nella creazione di un nuovo
progetto per una esercitazione
• C/C++ Console Application Wizard
• Come sopra, ma orientato ad applicazioni C/C++.
• Esempi
• Una serie di esempi che rappresentano i più
comuni problemi di programmazione, dalla
creazione di strutture dati, ordinamenti e
applicazioni tipo chat
• Documentazione
• Informazioni relative all’utilizzo degli Academic
Tools più una documentazione esaustiva sulle più
comuni problematiche legate allo sviluppo
Considerazioni finali
• Implementare e gestire un laboratorio per la
didattica richiede spesso le stesse tecniche
necessarie a gestire una rete aziendale
• Documentazione e linee guida possono essere riutilizzate
con successo
• Utilizzare i servizi di amministrazione che i vari
sistemi operativi mettono a disposizione consente
all’amministratore di automatizzare o comunque
ridurre le attività manuali necessarie
• Occorre comprendere bene le potenzialità di tali servizi
• Una corretta pianificazione della sicurezza è
necessaria e consente di prevenire danneggiamenti o
operazioni non lecite da parte degli studenti
sull’infrastruttura del laboratorio
Link utili
• Microsoft TechNet
• http://www.microsoft.com/technet/default.mspx
• MSDN AA – Installare un laboratorio .NET
(MSR)
• http://www.msdnaa.net/devsystem/default.aspx
• MSDN Studenti
• http://www.microsoft.com/italy/msdn/studenti
• MSDN Online
• http://msdn.microsoft.com
© 2003-2004 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.