configuration as code e alm: a nova realidade da automação

23
ALM Summit Brasil 2014 ALM Summit Brasil 2014 Configuration as Code e ALM: a nova realidade da automação Vinicius Hana

Upload: vinicius-hana-scardazzi

Post on 21-Nov-2014

39 views

Category:

Technology


0 download

DESCRIPTION

Automação de infraestrutura, muito além de uma promessa, já é uma realidade a muito tempo no mercado. Veremos como automatizar trabalhos de infraestrutura, quais os ganhos obtidos e quais as práticas mais recomendadas para manter um ambiente saudável de código de infraestrutura.

TRANSCRIPT

Page 1: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

ALM Summit Brasil 2014

Configuration as Code e ALM: a nova realidade da

automação

Vinicius Hana

Page 2: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Vinicius Hana

Microsoft MVP – Visual Studio ALM

Visual Studio ALM Ranger

Consultor de ALM e arquitetura na Lambda3

Page 3: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Realidade atual da automação• Completamente incipiente• Poucas empresas investem

agressivamente em automação, mesmo com os ganhos evidentes• Falta no mercado perfis fortes de DevOps

Page 4: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Processos manuais

• Alto custo de posse• Lentidão de processos• Exigem documentação excessiva• Considerável propensão a erros

Page 5: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Trivia – Empresa X

• 1 semana para conseguir uma VM• Provisionamento errático com

configurações erradas, baixa confiabilidade• Empresa possui sistemas críticos,

escalabilidade horizontal impactada

Page 6: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Trivia – Empresa Y

• Equipe de 4 pessoas dedicadas para fazerem publicações manuais:• Cópia de arquivos• Configuração de IIS• Execução de scripts de SQL

• Janela de 24h para publicar uma versão em qualquer ambiente que seja• Ambiente custoso e improdutivo

Page 7: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Progredindo na automaçãoNíveis, práticas e ferramentas

Page 8: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Record & Replay

• Gravação de passos e interações para posterior reprodução• Normalmente não trabalham com código

ou geram código que realiza as tarefas• Exemplo: Coded UI

Page 9: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Record & Replay

• Exige execuções manuais constantemente para garantir que o processo funciona• Se gerar código, o mesmo tende a ser

complexo e especializado• Apresenta ganhos em relação ao manual,

mas é bem restrito no geral

Page 10: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Automação via código

• Usar programação para determinar tarefas de automação• Modelo imperativo, determina como as

coisas devem acontecer• Conhecimento de programação é

difundido, facilita adoção• Chef é uma ferramenta de exemplo

Page 11: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Automação via código

• Muitas estruturas precisam ser feitas do nada• Inflexibilidade de plataforma• Demanda grande esforço por precisar de:• Tratamento de erros• Fluxos alternativos• Ferramental específico

• Código resultante não é tão legível• Pode acabar reinventando a roda

Page 12: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Como automatizar de outra forma?Configuração como código

Page 13: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Configuração como código

• Usar programação para determinar o estado desejado de configuração• Modelo declarativo, determina o que

deve acontecer, não como• Código intuitivo, simples e legível

Page 14: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Configuração como código

Configuração

Estado desejado

Ferramenta

Estado inicial

Page 15: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Configuração como código

• Ferramentas mais comuns:• PowerShell DSC• Puppet

Page 16: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

PowerShell DSC

• DSC: Desired State Configuration• Extensão do PowerShell a partir do WMF

4• Já vem por padrão com:• 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

• Totalmente extensível

Page 17: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

DemonstraçãoPowerShell DSC

Page 18: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Consistência de ambientes

• Ambientes podem sofrer influências imprevistas• Scripts de configuração podem ficar

desatualizados• Pode haver conflito de versão de

configurações

Page 19: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Pull server de configurações• Um servidor que age como “ponto único

da verdade”• Armazena as configurações que estão

vigentes e assegura que os ambientes estejam de acordo com elas• Configurações passam por processo de

“deploy”• Configurações refletem a realidade na

prática• Atualizações facilitadas

Page 20: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

DSC para deploy

• Via configuração, é possível definir:• Requisitos de sistema operacional• Cópia de arquivos• Execução de binários

• Possui todas as vantagens mencionadas anteriormente

Page 21: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

Release Management

• TFS 2013 Update 3: scripts DSC como parte de deployment no Release Management• Integrando DSC, Release Management e

TFS, a entrega de software é integrada de ponta a ponta usando

Page 22: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

DemonstraçãoPowerShell DSC com Release Management

Page 23: Configuration as code e ALM: a nova realidade da automação

ALM Summit Brasil 2014

ALM Summit Brasil 2014

Obrigado!

Vinicius Hana

[email protected]

@viniciushana