18

Click here to load reader

Deployment além do trivial com Release Management e Powershell DSC

Embed Size (px)

DESCRIPTION

Como ir além do trivial em deployments automatizados com Release Management e Powershell DSC

Citation preview

Page 1: Deployment além do trivial com Release Management e Powershell DSC

DEPLOYMENT ALÉM DO TRIVIAL COM RELEASE

MANAGEMENT E POWERSHELL DSC

Vinícius HanaLambda3Microsoft MVP – VS ALM

Page 2: Deployment além do trivial com Release Management e Powershell DSC

PALESTRANTE

Consultor de ALM, arquitetura e desenvolvimento de software na Lambda3

Microsoft MVP em Visual Studio ALM

Page 3: Deployment além do trivial com Release Management e Powershell DSC

O DEPLOYMENT DE HOJE EM DIA

Como é feito e quais seus problemas

Page 4: Deployment além do trivial com Release Management e Powershell DSC

MAJORITARIAMENTE MANUAL Mesmo se baseado em build automatizado

Propenso a erro humano

Não escala!

Page 5: Deployment além do trivial com Release Management e Powershell DSC

COMPLEXIDADE DE DEPENDÊNCIAS Dependências precisam de controles delicados e ferramental específico

Publicar aplicações em diversos servidores é trabalhoso

Necessário garantir que os servidores da aplicação estejam corretamente instalados e configurados

Page 6: Deployment além do trivial com Release Management e Powershell DSC

VISIBILIDADE LIMITADA DE PROCESSOS Validação e aprovação manual dos ambientes

Falta de visão consolidada de quais versões estão em quais ambientes

Políticas ad-hoc de promoção de ambientes

Page 7: Deployment além do trivial com Release Management e Powershell DSC

AUTOMAÇÃO DE DEPLOYMENT

O primeiro passo para melhoria

Page 8: Deployment além do trivial com Release Management e Powershell DSC

USANDO RELEASE MANAGEMENT Configuração de ambientes

Fluxos de validação e aprovação

Fluxos de deployment

Integração com TFS para usar builds como ponto de partida

Page 9: Deployment além do trivial com Release Management e Powershell DSC

CONFIGURAÇÃO COMO CÓDIGO

A chave para complementar a automação

Page 10: Deployment além do trivial com Release Management e Powershell DSC

ESCLARECENDO

Configuração como código não é automação de infraestrutura

Automação de infraestrutura: realizar ações iguais repetidas vezes, entre vários componentes

Configuração como código: usar ferramentas, técnicas e práticas de programação para executar e validar ações de infraestrutura

Page 11: Deployment além do trivial com Release Management e Powershell DSC

PRINCIPAIS FERRAMENTAS EM VISUAL STUDIO ALM Powershell DSC

Chef

Puppet

Page 12: Deployment além do trivial com Release Management e Powershell DSC

POWERSHELL DSC

DSC significa Desired State Configuration

Extensão do Powershell que permite a definição de padrões de configuração

Permite, dentre outras coisas: Instalar ou remover roles do Windows Server Manipular registro do Windows Gerenciar arquivos e diretórios Iniciar ou interromper processos e serviços Executar scripts Powershell

Page 13: Deployment além do trivial com Release Management e Powershell DSC

POWERSHELL DSC

Deve-se primeiramente definir uma configuração

Uma configuração deve possuir vários recursos

Cada recurso representa um pedaço da configuração que será definida

Existem diversos recursos prontos já entregues com DSC

Outros tantos estão disponíveis no GitHub

Recursos novos podem ser desenvolvidos com Powershell

Page 14: Deployment além do trivial com Release Management e Powershell DSC

INTEGRANDO RELEASE MANAGEMENT E POWERSHELL DSC TFS 2013 Update 3: scripts DSC como parte de deployment no Release Management

Infraestrutura como código junto com automação de infraestrutura

Integrando DSC, Release Management e TFS, a entrega de software é integrada de ponta a ponta

Page 15: Deployment além do trivial com Release Management e Powershell DSC

DEMONSTRAÇÃO Release Management e Powershell DSC no TFS

Page 16: Deployment além do trivial com Release Management e Powershell DSC

REFERÊNCIAS E LINKS

http://kief.com/infrastructure-as-code-versus-automation.html

http://blogs.technet.com/b/privatecloud/archive/2013/08/30/introducing-powershell-desired-state-configuration-dsc.aspx

http://blogs.msdn.com/b/visualstudioalm/archive/2014/07/22/deploying-using-powershell-desired-state-configuration-in-release-management.aspx

http://blogs.technet.com/b/privatecloud/archive/2013/08/30/introducing-powershell-desired-state-configuration-dsc.aspx

Page 17: Deployment além do trivial com Release Management e Powershell DSC

OBRIGADO!Vinicius HanaLambda3Microsoft MVP – VS ALM

Page 18: Deployment além do trivial com Release Management e Powershell DSC

ALM Summit Brasil 2014

29 e 30 de agosto

www.almsummitbrasil.com.br

Promocode: ALMBR14-DEVCHAMPS