WindowsAzure Slide (Gianni Rosa Gallina)

16 Maggio 2013
Windows Azure
introduzione
Gianni Rosa Gallina
[email protected]
Twitter: @giannirg
Blog: http://giannishub.cloudapp.net/it/
Fabrizio Accatino
[email protected]
Twitter: @fhtino
Sito web: http://www.fhtino.it
Agenda

Cos’è il Cloud?

Modelli di Cloud-computing

Piattaforma Windows Azure

Web sites

Cloud Services

Virtual Machines

Mobile Services

Servizi applicativi di base

Costi

Come iniziare?

Demo
2/32
Cos’è il Cloud?

Con Cloud Computing si indica un insieme di
tecnologie che permettono di usufruire di servizi
distribuiti e virtualizzati in Internet, con modalità
scalabili dinamicamente a seconda delle esigenze
e degli scenari applicativi.

I servizi sono forniti da provider che mantengono,
gestiscono e garantiscono la disponibilità
dell’infrastruttura hardware/software.

l clienti possono utilizzare (e pagare) i servizi
disponibili in base al consumo/utilizzo effettivo.
3/32
Modelli di Cloud-computing
4/32
Modelli di Cloud-computing
5/32
Piattaforma Windows Azure

Piattaforma Microsoft di Cloud-computing

Progettata per permettere ai clienti di focalizzarsi sulle proprie applicazioni
ed esigenze, senza preoccuparsi anche dell’infrastruttura

Flessibile


Servizi IaaS, PaaS, SaaS combinabili
Aperta

Standard-based (es. MemCachD, AMQP, VHD, …)

API REST per accedere ai servizi e alle funzionalità

Linguaggi di sviluppo molteplici


.NET

Node.js

PHP

Python

Java

Ruby
Open-source (Licenza Apache 2.0)


http://github.com/windowsazure
Solida

Differenti Data-center sparsi per il mondo, ridondati, SLA garantita (99.95%)
6/32
Data-center nel mondo
Servizi
8/32
Web Sites

Servizio che permette la pubblicazione di siti web e web API

Si possono sviluppare con:



ASP.NET

Node.js

PHP

Python
Deploy in pochi secondi

FTP

Git

TFS
Altissima scalabilità

Si può partire con un servizio gratuito (in VM condivise)

Si può dinamicamente scalare a seconda del traffico
9/32
Cloud Services

Permettono di sviluppare applicazioni e servizi scalabili
pressoché all’infinito
Web Roles (applicazioni web – siti, web API, servizi WCF)
 Worker Roles (servizi in esecuzione continua)


Supportano architetture multi-tier complesse a piacere







Front-end
Back-end
Virtual Machines
Database
Storage
…
Gestione dei servizi in maniera automatizzata

Deploy, scaling, aggiornamenti, recovery
10/32
Cloud Services
11/32
Virtual Machines
Simili ad un servizio di hosting tradizionale
 Macchine virtuali accessibili da remoto

Linux (SSH)
 Windows (RDP)


Gestione delle macchine a carico del cliente
Si possono installare tutti i software/servizi di cui si ha bisogno
 Manutenzione/aggiornamenti di sistema manuali
 Supporto per PowerShell


Storage persistente, affidabile e ad alte prestazioni

Geo-replication
VPN
 Portabilità


VHD condivisibili tra ambiente Cloud e On-Premises
12/32
Mobile Services


Insieme di servizi che permettono di realizzare rapidamente e
facilmente back-end per applicazioni mobili
Funzionalità principali built-in:

Storage dati

Gestione utenti

provider di identità multipli (Microsoft, Twitter, Facebook, Google)

Push notifications

Script lato-server


Javascript

Pianificabili
SDK nativi

Windows 8 Store Apps

Windows Phone apps

iOS

Android
13/32
Media Services

Insieme di servizi che offrono funzionalità di encoding
e streaming, basate sulla piattaforma Microsoft Media.
14/32
Servizi applicativi di base

Gestiti da Microsoft, utilizzabili a consumo per
lo sviluppo delle proprie soluzioni

Sono utilizzabili indifferentemente da


Virtual Machines

Web sites

Cloud Services

On-Premises
Se qualcosa manca, è sempre possibile
utilizzare le Virtual Machines e
installare/configurare quello che serve per le
proprie necessità
15/32
Servizi applicativi di base

Database

Storage

Service Bus

Caching

Identity
16/32
Database (SQL Azure)

Motore di SQL Server nel Cloud

Database relazionale tradizionale

Configurazione in clustering per alta disponibilità,
affidabilità e prestazioni

Completamente gestito da Microsoft

non servono sistemisti o figure professionali dedicate per
l’amministrazione

Manutenzione/aggiornamenti

Supporto per SQL Reporting e SQL Data Sync

Strumenti noti per gestione e query

Visual Studio

SQL Server Management Studio
17/32
Storage

Pagamento a consumo

Accesso tramite HTTP(S) RESTful Services

Sono disponibili SDK per semplificarne l’utilizzo

100 TB per account (max 5 account/subscription)

CDN (24 nodi)

Differenti tipologie disponibili, in base all’uso

Blob

Drives

Tables

Queues
18/32
Blob

File system ad alta disponibilità, sicurezza, scalabilità

Utilizzabile per dati testuali o binari

Geo-replication automatica tra data-center
19/32
Drives

Volumi NTFS per istanze Azure

Non-volatili

Max. 1 TB per drive

Utilizzabili per muovere facilmente applicazioni
esistenti nel Cloud

I volumi sono gestisti come Blob, ma in maniera
trasparente all’utilizzatore
20/32
Tables

NON SONO UN DB Relazionale

Tipologia molto prossima a DB NoSQL

I dati sono memorizzati come entità strutturate,
non-relazionali, accessibili per chiave univoca

In una Table possono essere inserite entità con
schema differente

Le Tables sono partizionate, per supportare loadbalancing su può nodi dell’infrastruttura
21/32
Tables
22/32
Service Bus

Insieme di funzionalità che permettono di creare
soluzioni e componenti altamente disaccoppiate


Messaggistica asincrona

Publish/Subscribe pattern

Queues / Topics

Notifiche (1-1, 1-N, N-N)
Connettività

Servizi e funzionalità di gestione (Endpoints/Discovery/ecc.)

Integrazione con Access Control e Identity Federation

Service Relay

Comunicazioni Cloud/On-Premises (NAT/Firewall traversal)
23/32
Service Bus
24/32
Caching

Cache In-memory, a bassa latenza e distribuita

Alta affidabilità e prestazioni

E’ possibile dinamicamente aumentate/ridurre la
quantità di cache disponibile

Supporto del protocollo Memcached

Utilizzabile da tutti i servizi cloud
25/32
Identity

Gestione autorizzazione/autenticazione

Permette il Single Sign-on nelle proprie applicazioni

Integrabile con Active Directory

Graph REST API
26/32
Costi e considerazioni

Il Cloud permette la gestione efficace ed
economicamente vantaggiosa di applicazioni che
necessitano di


Rapida scalabilità

Alta disponibilità

Fault-tolerance
Esempi tipici:
 Siti
web
 Applicazioni
 Web
di calcolo intensivo
API
 Social
Games
27/32
Costi e considerazioni

Tipo di deploy



Web Sites / Mobile Services

Istanze condivise (gratuite fino a 10)

Istanze dedicate (quante?)
Istanze Cloud Services

Dimensioni? Quante?

Minimo 2 per ruolo per poter avere SLA 99.95%
Virtual Machines

Linux/Windows

Dimensione? Quante?
28/32
Costi e considerazioni


Banda

Ingresso/inter-datacenter

Uscita

CDN
Database

Dimensioni? Quanti?

Supporto Microsoft

Storage

Spazio occupato

Geo-replication (abilitata o no?)

Transazioni
29/32
Costi e considerazioni


Media Services

Banda dati elaborati

Unità di elaborazione
Service Bus

Messaggi

Ore di relay
30/32
Istanze Cloud Services

Strumento utile per fare un po’ di stime:
http://www.windowsazure.com/en-us/pricing/calculator/
31/32
Come iniziare
32/32
demo
Q&A
grazie!
Gianni Rosa Gallina
[email protected]
Twitter: @giannirg
Blog: http://giannishub.cloudapp.net/it/
Fabrizio Accatino
[email protected]
Twitter: @fhtino
Sito web: http://www.fhtino.it
http://windowsazure.com