Top Banner
Windows Azure introduzione Fabrizio Accatino [email protected] Twitter: @fhtino Sito web: http ://www.fhtino.it 16 Maggio 2013 Gianni Rosa Gallina [email protected] Twitter: @giannirg Blog: http://giannishub.cloudapp.net/it/
36

Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Aug 26, 2018

Download

Documents

duongnhi
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Windows Azureintroduzione

Fabrizio [email protected]

Twitter: @fhtino

Sito web: http://www.fhtino.it

16 Maggio 2013

Gianni Rosa [email protected]

Twitter: @giannirg

Blog: http://giannishub.cloudapp.net/it/

Page 2: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 3: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Cos’è il Cloud?

Con Cloud Computing si indica un insieme di tecnologie che permettono di usufruire di servizidistribuiti 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

Page 4: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Modelli di Cloud-computing

4/32

Page 5: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Modelli di Cloud-computing

5/32

Page 6: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Piattaforma Windows Azure

6/32

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%)

Page 7: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Data-center nel mondo

Page 8: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Servizi

8/32

Page 9: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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 traffico9/32

Page 10: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 11: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Cloud Services

11/32

Page 12: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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-Premises12/32

Page 13: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Android13/32

Page 14: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Media Services

Insieme di servizi che offrono funzionalità di encoding

e streaming, basate sulla piattaforma Microsoft Media.

14/32

Page 15: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 16: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Servizi applicativi di base

Database

Storage

Service Bus

Caching

Identity

16/32

Page 17: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 18: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Queues18/32

Page 19: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Blob

File system ad alta disponibilità, sicurezza, scalabilità

Utilizzabile per dati testuali o binari

Geo-replication automatica tra data-center

19/32

Page 20: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 21: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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 load-

balancing su può nodi dell’infrastruttura

21/32

Page 22: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Tables

22/32

Page 23: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 24: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Service Bus

24/32

Page 25: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 26: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Identity

Gestione autorizzazione/autenticazione

Permette il Single Sign-on nelle proprie applicazioni

Integrabile con Active Directory

Graph REST API

26/32

Page 27: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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 di calcolo intensivo

Web API

Social Games 27/32

Page 28: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

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

Page 29: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Costi e considerazioni

29/32

Banda

Ingresso/inter-datacenter

Uscita

CDN

Database

Dimensioni? Quanti?

Supporto Microsoft

Storage

Spazio occupato

Geo-replication (abilitata o no?)

Transazioni

Page 30: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Costi e considerazioni

30/32

Media Services

Banda dati elaborati

Unità di elaborazione

Service Bus

Messaggi

Ore di relay

Page 31: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Istanze Cloud Services

31/32

Strumento utile per fare un po’ di stime:

http://www.windowsazure.com/en-us/pricing/calculator/

Page 32: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Come iniziare

32/32

Page 33: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

demo

Page 34: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

Q&A

Page 35: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

grazie!

Fabrizio [email protected]

Twitter: @fhtino

Sito web: http://www.fhtino.it

Gianni Rosa [email protected]

Twitter: @giannirg

Blog: http://giannishub.cloudapp.net/it/

Page 36: Windows Azure - Torino Technologies Grouptorinotechnologiesgroup.it/Download/TTG_20130516_WindowsAzure.pdf · Node.js PHP Python ... Web Roles (applicazioni web –siti, web API,

http://windowsazure.com