Distribuição e monitoração de aplicações dentro do Windows Azure Luciano CondéArquiteto de SoluçõesMicrosofttwitter.com/lucondeblogs.msdn.com/conde
Ciclo de vida de um serviço
Windows Azure Service LifecycleManter a saúdeProvisiona-mentoDeploymentCodificar e modelarAjustar a configuraçãodesejada
Novosserviços e atualizações
Mapear e distribuirpara o hardware
Configuração de rede
Monitorar
ReagiraoseventosDeveloper/DeployerAutomatizadoAutomatizadoDeveloper
Três perguntas
PerguntasComo instrumentar os meus serviços?Como gerenciarosmeusserviços?Como enviaratualizações dos meusserviços?
<1>
Outubro 2008
?
Windows Azure Service Management APINovidade
Funcionalidadesimportantes do portal
REST + XML
Tudosobre HTTPS
POST https://management.core.windows.net/<subscription-id>/services/hostedservices/<service-name>/deploymentslots/<slot-name>
POST https://management.core.windows.net/<subscription-id>/services/hostedservices/<service-name>/deploymentslots/<slot-name><?xml version="1.0" encoding="utf-8"?><Deployment xmlns=”http://schemas.microsoft.com/windowsazure”>	<Name>deployment-name</Name>	<PackageUrl>package-url-in-blob-storage</PackageUrl>	<Configuration>base64-encoded-configuration-file</Configuration>	<Label>base64-encoded-deployment-label</Label></Deployment>
X509 certs
QualquercertificadoválidoMúltiploscertificadosAdicionar/revogar a qualquerhora
Operações suportadas
C/R/U/D deploymentsRole statusChange config (no. of VMs, settings, etc)UpgradeStorage keysMuitomais…
Como podemosusar?
csmanage.exe
Client library / WCF bindings
Use REST+XML paramontar o seu
Service Management APIdemo
Preço?
O quevocêfazer?
http://www.flickr.com/photos/ejpphoto/2314610838/
http://www.flickr.com/photos/balakov/3082423010/
Integrar com ferramentas e dashboardsBuildsSistemas de monitoramento
</1>
 4 de dezembro, 1996
Oh Oh!
<2>
Atualizar, àsvezes, é muitodíficil
3
+
2
Stage DeploymentProduction Deployment
Stage DeploymentProduction Deployment
1
'In-place' upgradeNovidade
Production Deployment
Production Deployment(new bits)
Upgrade Domain
Production Deployment
WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
upgradeDomainCount=“2”WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
Automatic vs Manual
upgradeDomainCount=“2”WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
upgradeDomainCount=“3”WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
upgradeDomainCount=“1”WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
Atualizaçãoemcimade uma role específica
WebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
Exemplo
Atualizando o protocolo Passo 1: Atualize as roles paraqueentenda ambos protocolosPasso 2: Dispare o uso da nova versãoWeb RoleWeb RoleWeb RoleCódigoVersão 1Web RoleWeb RoleWeb RoleWeb RoleWeb RoleWeb RoleVersão 1.5Versão 2Cache RoleCache RoleCache RoleProtocoloUD0UD1UD2UD0UD1UD2Cache RoleCache RoleCache RoleCache RoleVersão 1Cache RoleCache RoleVersão 2
In-place upgradedemo
</2>
Hoje, comovocêinstrumentaa suaaplicaçãoemprodução?
AmbienteestáticoInstânciasbemconhecidasTransaçõessãorastreáveisTenhoacessofísicoaoservidoresTerminal servicesDados e ferramentasjuntosAlterações in-place
<3>
Faço da mesma maneira na nuvem?
NÃO
Porque?
Múltiplas instânciasWebWebWebWebWebWebWorkerWorkerWorkerWorkerWorkerWorker
Não tenho acesso as máquinas
Virtualmente distribuído
Entãocomoeufaço?
Windows Azure Diagnostics APINovidade
Usa o próprio Azure (APIs Standard)SDKCloud-FriendlyEscalávelDeveloper no controle
ConfigurationRole InstanceRoleData collection(traces, logs, crash dumps)Quota enforcement Diagnostic MonitorLocal directory storageWindows Data SourcesIIS Logs & Failed Request LogsPerf CountersWindows Event Logs
Request uploadRole InstanceWindows Azure StorageRoleDiagnostic MonitorLocal directory storageWindows Data SourcesScheduled or on-demand upload
Quaisos dados quepossopegar?
Windows Azure diagnostics APIdemo
</3>
<4>
Auto scaling

Monitoring e Logging no Windows Azure - S+S Day 09