Windows Azure Overview

Transcripción

Windows Azure Overview
Computación en la
nube
Angel Acha ([email protected])
www.ciin.es
@MICCantabria
geeks.ms/blogs/ciin
Interés común en el desarrollo del
uso de la Tecnología y del sector
TIC regional
Gobierno Cantabria
• Mejora sectores empresariales tradicionales
• Apoyo a la microempresa con las TIC
• Difusión y generalización de la Sociedad de la Información en la ciudadanía
Microsoft
• Apoyo en el desarrollo de la Sociedad de la Información en Cantabria
• Trasladar al territorio el trabajo, actividad, conocimiento y ayudas de
Microsoft
• Apoyo en el desarrollo de negocio de Microsoft en el área de
especialización
Acciones
‘06
‘07
‘08
‘09
‘10
‘11
Personas
SAT
www.dotnetclubs.com
Proyectos Final de Carrera
Becas
Participación en proyectos I+D+i
Apoyo a Emprendedores
Apoyo a Estudiantes
(MTA, ImagineCup, …)
www.dreamspark.com
Ejem: Uso del eDni en entornos Web con tecnologías Microsoft
Donde encontrarnos
http://www.ciin.es
http://geeks.ms/blogs/ciin
[email protected]
http://twitter.com/MICCantabria
http://www.nist.gov/itl/cloud/upload/cloud-def-v15.pdf
Definición (en español)
La computación en la nube es un modelo de computación que
permite de manera conveniente, el acceso bajo demanda a través de
la red, a un conjunto compartido de recursos configurables (p.e.
redes, servidores, recursos de almacenamiento, aplicaciones y
servicios), que pueden ser rapidamente aprovisionados y liberados,
sin apenas esfuerzo de gestión e interacción con el proveedor del
servicio
http://www.nist.gov/itl/cloud/upload/cloud-def-v15.pdf
Características esenciales
Auto-servicio bajo demanda
Amplio acceso a través de la red
“Pooling” de recursos
Rápida elasticidad
Servicios medidos
Modelos de servicio
Software como Servicio (SaaS)
Plataforma como Servicio (PaaS)
Infraestr. como Servicio (IaaS)
Modelos de Despliegue
Privado
Público
Hibrido
Comunidad
recursos que son compartidos entre varios clientes
los proveedores de serv. en la nube
que están dedicados a tu organización
tu organizacion
recursos
Utilización de la Infraestructura
85
por ciento de la capacidad
de un centro de datos esta
sin utilizar en promedio
Complejidad de la Infraestructura
70
por ciento de los
presupuestos de IT se gasta
en mantener las operativa
del centro de datos
IT ( comp.)
CAPACIDAD
Ba rre ra p a ra la s
in n o va c io n e s
Ca p a c id a d e s IT
a s ig n a d a s
Ca rg a
p ro n o s tic a d a
Ca p a c id a d e s p o r
d e b a jo d e la
demanda
De rro c h e d e
c a p a c id a d e s
Co s te fijo d e la s
c a p a c id a d e s d e IT
Carga actual
TIEMPO
CAPACIDAD IT
Capacidades IT
asignadas
Re d u c c ió n d e
la s in ve rs io n e s
in ic ia le s
Ca rg a
p ro n o s tic a d a
No in fra -o fe rta
Re d u c c ió n d e la
s o b re o fe rta
P o s ib le re d u c c ió n d e
c a p a c id a d e s IT e n e l
c a s o d e c a rg a re d u c id a
Carga actual
Tiempo
Computación en la nube
¡¡¡Que sitio tan bueno!!!!
Servidor saturado
Timeout
Consecuencias: esta solución: ¡¡¡requirió mucho trabajo y dinero !!!
Que pasa si mi aplicación
¡¡¡Deja de tener éxito!!!
Para solucionar el problema de escalabilidad, se requirió mucho
trabajo y dinero,
Y ahora, mucha de esta infraestructura esta infrautilizada
¡¡¡ Que sitio tan bueno!!!
Petición
Respuesta
Servidor saturado
<?xml version="1.0"?>
<ServiceConfiguration serviceName="WebDeploy" xmlns="http://schemas.microsoft.com/serviceHosting/2008/10ServiceConfiguration">
<Role name="Webux">
<Instances count="1"/>
<ConfigurationSettings>
<Setting name="DiagnosticsConnectionString" value="UseDevelopmentStorage=true/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.Enabled" value="True"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountUsername" value="dunnry"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountEncryptedPassword" value="MIIBrAYJKoZIhvcNAQcDoIIB"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountExpiration" value="2010-12-23T23:59:59.0000000-07"/>
<Setting name="Microsoft.Windows Azure.Plugins.RemoteForwarder.Enabled" value="True"/>
<ConfigurationSettings>
<Certificate>
<Certificates name="Microsoft.WindowsAzure.Plugins.remoteAccess.PasswordEncryption" thumbprint="D6BE55AC439FAC6CBEBAF"/>
</Certificate>
</Role>
</ServiceConfiguration>
Req
Req
Req
Req
Funcionalidad
Computación
Amazon Web Services
Windows Azure
VM
Elastic Compute Cloud
Roles Instances
HPC
Cluster Compute Instances
HPC Scheduler
MapReduce
Elastic Map Reduce
Hadoop on Azure
Dynamic Scaling
Auto Scaling
Auto Scaling Application Block
Simple Storage Service
Azure Blob
Flexible Entities
SimpleDB
Azure Tables
Block Level Storage
Elastic Block Store
Azure Drive
RDBMS
Relational Database Service
SQL Azure
NoSQL
DynamoDB
Azure Tables
CDN
CloudFront
Azure CDN
In-Memory
ElastiCache
AppFabric Caching
Almacenamiento Unstructured
Storage
Base de datos
Servicios
Funcionalidad
Redes
Mensajería
Amazon Web Services
Windows Azure
Load Balancer
Elastic Load Balancer
Fabric Controller/Traffic Manager
Hybrid Connectivity
Virtual Private Cloud
Azure Connect
Peering
Direct Connect
DNS
Route 53
Async Messaging
Simple Queue Service
Azure Queues
Push Notifications
Simple Notification Service
AppFabric Service Bus
Bulk Email
Simple Email Service
Monitorización Resource Monitoring
CloudWatch
System Center
Seguridad
Federated Identity
Identity Access Management
AppFabric Access Control
Despliegue3
Resource Creation
CloudFormation
Web Application
Container
Elastic Beanstalk
Web Role
Lenguajes de programación de propósito general
Plataforma de Windows Azure
Computación
Storage
Management
CDN
AppFabric
Marketplace
Datos
relacionales
Management
Aplicaciones
Aplicaciones
Applications
Aplicaciones
Aplicaciones
Datos
Datos
Datos
Datos
Datos
Softw. Personal.
Softw. Personal.
Startup Tasks
Auth
Código nativo
Código nativo
Código nativo
Notificaciones
Cortafuegos
Regl. Cortafuegos
Regl. Cortafuegos
Red
Virtual Network
Virtual Network
S.O.
S.O.
Virtualización
Hardware
VM with persistent drive
VM with persistent drive
VM with persistent drive
> 500 miles
Server Rack 1
Server Rack 2
2
6
92
Escalabilidad
92
Escalabilidad
10
Escalabilidad
99.95%
Portal de
desarrollo
(Silverlight o
HTML 5)
Mgmt Tool
(MMC)
Aplicaciones
de terceros,
comerciales o
no
REST
API
Win Azure
Powershell
Cmdlets
Aplicaciones
de línea de
comandos
Nuestra
propia
aplicación
atacando a
REST API
Csmanage.exe
Your
Service
Service
Service
Model
D
N
S
LB
Web Portal
(API)
config
DNS
Fabric
Controller
LB
Your
Service
Service
D
N
S
Service
Service
Service
LB
Service
Service
Service
Service
Web Portal
(API)
Model
Fabric
Controller
LB
<?xml version="1.0"?>
<ServiceConfiguration serviceName="WebDeploy" xmlns="http://schemas.microsoft.com/serviceHosting/2008/10ServiceConfiguration">
<Role name="Webux">
<Instances count="1"/>
<ConfigurationSettings>
<Setting name="DiagnosticsConnectionString" value="UseDevelopmentStorage=true/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.Enabled" value="True"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountUsername" value="dunnry"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountEncryptedPassword" value="MIIBrAYJKoZIhvcNAQcDoIIB"/>
<Setting name="Microsoft.WindowsAzure.plugins.RemoteAccess.AccountExpiration" value="2010-12-23T23:59:59.0000000-07"/>
<Setting name="Microsoft.Windows Azure.Plugins.RemoteForwarder.Enabled" value="True"/>
<ConfigurationSettings>
<Certificate>
<Certificates name="Microsoft.WindowsAzure.Plugins.remoteAccess.PasswordEncryption" thumbprint="D6BE55AC439FAC6CBEBAF"/>
</Certificate>
</Role>
</ServiceConfiguration>
Storage
Service
X número de Web roles
external
endpoint 1
(port80)
external
endpoint 2
(port X)
webrole 1
Instance 1
Instance 2
blobs
tables
Instance 3
queues
webrole 2
Instance 1
internal endpoint
Instance 1
SQL Azure DB
internal endpoint
Instance 2
internal endpoint
Instance 3
workerrole1
Performance Metrics
Application Log Files
X número de Worker roles
certificate
Event Logs
IIS Logs
Crashdumps
Service configuration, mantenible despues de despliegue
Service definition, definido en el despliegue
Azure Diagnostics
Your
Service
D
N
S
Service
Service
LB
Service
Service
Web Portal
(API)
Model
Fabric
Controller
LB
!
Replica 1
DB
Replica 2
Replica 3
Replica 4

Documentos relacionados