ferramentas para infraestrutura ágil
DESCRIPTION
Palestra que aborda ferramentas para gerência de configuração (puppet), orquestração (mcollective) e provisionamento para dar início a adoção de métodos ágeis e automatização em infraestrutura.TRANSCRIPT
![Page 1: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/1.jpg)
Brasília/DF 2013-04-27
Ferramentas para infraestrutura ágilGuto Carvalho
sexta-feira, 16 de agosto de 13
![Page 2: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/2.jpg)
Ferramentas para infraestrutura ágilGuto Carvalho
sexta-feira, 16 de agosto de 13
![Page 3: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/3.jpg)
José Augusto (Guto) Carvalho
Consultor/SysAdmin/DevOp (LPIC-3 e PCP-201);
14 anos de experiência com TI e FOSS;
Blogueiro TI/FOSS há 10 anos no site gutocarvalho.net;
Atuação em vários projetos de Governo no MDA, MINC, EBC/RADIOBRÁS, MPS/DATAPREV, ITI/PR, CAIXA, MD/SIPAM, DETRAN/DF;
Entusiasta DevOps (sysadmin em recuperação) desde 2010.
whoami
FOSS => Free and Open Source Software
sexta-feira, 16 de agosto de 13
![Page 4: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/4.jpg)
Plano de Trabalho
40 minutos de demonstração
10 minutos para perguntas
Faça perguntas quando quiser
Slidedeck disponível em slideshare.com/gutocarvalho
sexta-feira, 16 de agosto de 13
![Page 5: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/5.jpg)
Agenda
Gerência de configurações
Infraestrutura como código
Puppet como solução de gerência de configurações
Puppet arquitetura, funcionamento e recursos
Mcollective
Perguntas
sexta-feira, 16 de agosto de 13
![Page 6: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/6.jpg)
Infraestrutura Ágil
Orquestração (mcollective)
Gerência de Configurações / Automático (puppet)
Provisionamento (vagrant/razor/foreman/puppet)
sexta-feira, 16 de agosto de 13
![Page 7: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/7.jpg)
Administração de sistemas e serviços
sexta-feira, 16 de agosto de 13
![Page 8: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/8.jpg)
Virtualização
sexta-feira, 16 de agosto de 13
![Page 9: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/9.jpg)
Cloud Computing
sexta-feira, 16 de agosto de 13
![Page 10: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/10.jpg)
Administração Manual
sexta-feira, 16 de agosto de 13
![Page 11: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/11.jpg)
Administração Manual
Tarefas repetitivas
Não existem padrões
Não existem procedimentos
sexta-feira, 16 de agosto de 13
![Page 12: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/12.jpg)
Cada sysadmin faz do seu jeito
sexta-feira, 16 de agosto de 13
![Page 13: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/13.jpg)
Tarefas RepetitivasCriação de usuários
Elaboração de scripts
Configuração de serviços
Configurações de monitoramento
Criação de imagens de ambientes
Configuração do sistema operacional
Instalação, atualização e remoção de pacotes
sexta-feira, 16 de agosto de 13
![Page 14: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/14.jpg)
A medida que o parque aumenta administrá-lo fica mais complicado
sexta-feira, 16 de agosto de 13
![Page 15: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/15.jpg)
Você vai percerber que...Fica mais difícil identificar e corrigir problemas
Fica mais difícil manter ambientes complexos funcionando
Fica mais difícil manter seu parque padronizado
Sua produtividade diminui a media que o ambiente cresce
Sua capacidade de entrega não é mais a mesma
Você nunca chega em casa no mesmo horário
Você trabalha muitos finais de semana e madrugadas
sexta-feira, 16 de agosto de 13
![Page 16: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/16.jpg)
Maior risco de falhas
sexta-feira, 16 de agosto de 13
![Page 17: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/17.jpg)
Maior tempo gasto para executar mudanças
sexta-feira, 16 de agosto de 13
![Page 18: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/18.jpg)
Criação de usuário
450 máquinas 3 minutos por máquina
1350 minutos ou 22,5 horas450 trocas de senhas
sexta-feira, 16 de agosto de 13
![Page 19: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/19.jpg)
Procedimento para criar usuário
Acessar o servidor por ssh
Se tornar root
Criar usuário
Especificar senha temporária
Especificar permissões no sudoers
sexta-feira, 16 de agosto de 13
![Page 20: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/20.jpg)
Instalação de agente de
monitoramento450 máquinas
10 minutos por máquina4500 minutos ou 75 horas9 dias trabalhando 8 h.p.d
sexta-feira, 16 de agosto de 13
![Page 21: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/21.jpg)
Procedimento para instalar zabbix
Acessar servidor via ssh
Adicionar repositório APT
Atualizar índices
Instalar pacote
Ajustar arquivo zabbix_agentd.conf
Reiniciar agente zabbix
Remover agente antigo (nagios).
sexta-feira, 16 de agosto de 13
![Page 22: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/22.jpg)
Documentação inexistente
sexta-feira, 16 de agosto de 13
![Page 23: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/23.jpg)
Não há rastreamento de mudanças
sexta-feira, 16 de agosto de 13
![Page 24: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/24.jpg)
Você começa a ter a sensação de estar sendo engolido por seu ambiente?
sexta-feira, 16 de agosto de 13
![Page 25: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/25.jpg)
Como resolver estes problemas?Como obtenho controle e padronização em meu ambiente ?
sexta-feira, 16 de agosto de 13
![Page 26: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/26.jpg)
Gerência de Configurações
sexta-feira, 16 de agosto de 13
![Page 27: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/27.jpg)
Padronização
sexta-feira, 16 de agosto de 13
![Page 28: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/28.jpg)
Automatização
sexta-feira, 16 de agosto de 13
![Page 29: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/29.jpg)
Controle
sexta-feira, 16 de agosto de 13
![Page 30: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/30.jpg)
Integridade
sexta-feira, 16 de agosto de 13
![Page 31: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/31.jpg)
Agilidade nas mudanças
sexta-feira, 16 de agosto de 13
![Page 32: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/32.jpg)
PuppetFerramenta de nova geração que implementa gerência de
configurações para seu ambiente.
sexta-feira, 16 de agosto de 13
![Page 33: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/33.jpg)
Puppet em poucas palavras
sexta-feira, 16 de agosto de 13
![Page 34: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/34.jpg)
Puppet em poucas palavras
Nos permite parar de administrar e começar a desenvolver nossa infra
Nos permite reaproveitar código para construir configurações
Oferece linguagem declarativa para criar configurações
Sintaxe simples, prática e natural para sysadmins
Oferece suporte a Linux, BDBs, OSX e Windows
sexta-feira, 16 de agosto de 13
![Page 35: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/35.jpg)
Sobre a ferramenta
sexta-feira, 16 de agosto de 13
![Page 36: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/36.jpg)
Sobre a ferramenta
Ferramenta Open Source - Apache License
Ferramenta mantida pela empresa Puppetlabs
Empresa oferece suporte e versão enterprise
Criado por Luke Kaines (CEO e Fundador Puppetlabs)
Cases de uso com gandes players (HP, CISCO, VMWARE...)
Recebeu pesados investimentos
sexta-feira, 16 de agosto de 13
![Page 37: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/37.jpg)
Sobre a ferramenta
Ferramenta Open Source - Apache License
Ferramenta mantida pela empresa Puppetlabs
Empresa oferece suporte e versão enterprise
Criado por Luke Kaines (CEO e Fundador Puppetlabs)
Cases de uso com gandes players (HP, CISCO, VMWARE...)
Recebeu pesados investimentos
sexta-feira, 16 de agosto de 13
![Page 38: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/38.jpg)
Feito por um SysAdmin para SysAdmins
sexta-feira, 16 de agosto de 13
![Page 39: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/39.jpg)
Desenhada para uso DevOps
sexta-feira, 16 de agosto de 13
![Page 40: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/40.jpg)
Visão DevOpssexta-feira, 16 de agosto de 13
![Page 41: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/41.jpg)
Tech Specs
sexta-feira, 16 de agosto de 13
![Page 42: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/42.jpg)
Tech SpecsEscrito em Ruby
Extensível usando código Ruby
Funciona em modo autônomo (serverless)
Funciona em modo cliente.servidor
Usa RESTful API
Oferece comunicação segura com uso de certificados digitais
sexta-feira, 16 de agosto de 13
![Page 43: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/43.jpg)
Cases Puppet Enterprise
sexta-feira, 16 de agosto de 13
![Page 44: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/44.jpg)
ArquiteturaComo funciona o Puppet?
sexta-feira, 16 de agosto de 13
![Page 45: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/45.jpg)
Resource Abstraction Layer(RAL)
sexta-feira, 16 de agosto de 13
![Page 46: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/46.jpg)
Resource Abstraction Layer
sexta-feira, 16 de agosto de 13
![Page 47: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/47.jpg)
Resource Abstraction Layer
Camada de Abstração de Recursos
Fale o que você quer que seja feito
Não se preocupe em como será feito
O Puppet sabe como fazer
sexta-feira, 16 de agosto de 13
![Page 48: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/48.jpg)
Instale Pacote X
sexta-feira, 16 de agosto de 13
![Page 49: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/49.jpg)
Remova usuário Z
sexta-feira, 16 de agosto de 13
![Page 50: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/50.jpg)
(Re)inicie serviço Y
sexta-feira, 16 de agosto de 13
![Page 51: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/51.jpg)
Tratamento de Informações
O grande diferencial do Puppet é a forma como ele trata as informações de seus nodes
sexta-feira, 16 de agosto de 13
![Page 52: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/52.jpg)
Tratamento de informações
sexta-feira, 16 de agosto de 13
![Page 53: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/53.jpg)
Tratamento de informações
No Puppet tudo é modelado e tratado como ‘dados’
O estado atual de um node (servidor) é um dado
Um pacote instalado em um node é um dado
Um usuário em um servidor é um dado
sexta-feira, 16 de agosto de 13
![Page 54: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/54.jpg)
Os dados são inseridos em catálogos pelo master
O catálogo é processado pelo node e as modificações são aplicadas de acordo com o que foi declarado.
sexta-feira, 16 de agosto de 13
![Page 55: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/55.jpg)
Processamento do Catálogo
1) Agente Requisita Catálogo1.1) Agente envia Fatos para Master2) Master Processa Fatos e Compara2.1) Master Produz e envia Catálogo3) Node Recebe, Compara e Aplica4) Node informa estado atual ao Master5) Sistema reflete catálogo
sexta-feira, 16 de agosto de 13
![Page 56: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/56.jpg)
Processamento do Catálogo
1) Agente Requisita Catálogo1.1) Agente envia Fatos para Master2) Master Processa Fatos e Compara2.1) Master Produz e envia Catálogo3) Node Recebe, Compara e Aplica4) Node informa estado atual ao Master5) Sistema reflete catálogo
sexta-feira, 16 de agosto de 13
![Page 57: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/57.jpg)
Idempotência
sexta-feira, 16 de agosto de 13
![Page 58: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/58.jpg)
ConfiguraçõesVoláteis e Dados
Puppet MasterMódulos Estáticos
Visão ampla do Puppet
LDAP DNS MONIT SYSLOG
JBOSS APACHE MYSQL PGSQL
Puppet Agents
Camada de Aplicação
Camada de Serviços Estruturantes
sexta-feira, 16 de agosto de 13
![Page 59: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/59.jpg)
Você pode fazer deploy de sua APPVocê pode controlar a versão de sua APP
sexta-feira, 16 de agosto de 13
![Page 60: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/60.jpg)
Como funciona o modo cliente/servidor?
sexta-feira, 16 de agosto de 13
![Page 61: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/61.jpg)
Modo Cliente/Servidor
O agente gera um certificado digital
O master precisa autorizar o certificado
Sem autorização o agente não pode se comunicar
Toda a comunicação entre agente e master é segura
sexta-feira, 16 de agosto de 13
![Page 62: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/62.jpg)
Puppet Visão em Rede
Puppet Master
Puppet Client
8140 TCPClient
puppetd -t
8139 TCPServer
puppetrunSSL
sexta-feira, 16 de agosto de 13
![Page 63: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/63.jpg)
Fluxo Cliente/Servidor
Instalação do node
sexta-feira, 16 de agosto de 13
![Page 64: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/64.jpg)
Fluxo Cliente/Servidor
Instalação do node
Inicialização do puppet
sexta-feira, 16 de agosto de 13
![Page 65: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/65.jpg)
Fluxo Cliente/Servidor
Instalação do node
Geração de Certificado
Inicialização do puppet
sexta-feira, 16 de agosto de 13
![Page 66: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/66.jpg)
Fluxo Cliente/Servidor
Instalação do node
Geração de Certificado
Envio de Certificado
Inicialização do puppet
sexta-feira, 16 de agosto de 13
![Page 67: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/67.jpg)
Fluxo Cliente/Servidor
Instalação do node
Geração de Certificado
Master Assina Certificado
Envio de Certificado
Inicialização do puppet
sexta-feira, 16 de agosto de 13
![Page 68: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/68.jpg)
Fluxo Cliente/Servidor
Instalação do node
Geração de Certificado
Agente Sincroniza
Master Assina Certificado
Envio de Certificado
Inicialização do puppet
sexta-feira, 16 de agosto de 13
![Page 69: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/69.jpg)
Fluxo Cliente/Servidor
Instalação do node
Geração de Certificado
Agente Sincroniza
Master Assina Certificado
Envio de Certificado
Inicialização do puppet
Modalidades de Assinatura de CertificadoAssinatura pode ser manualAssinatura pode ser automática por domínioAssinatura pode ser automática em qualquer requisição
sexta-feira, 16 de agosto de 13
![Page 70: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/70.jpg)
O agente se comunica com o master a cada N minutos
sexta-feira, 16 de agosto de 13
![Page 71: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/71.jpg)
Quais recursos estão disponíveis?
sexta-feira, 16 de agosto de 13
![Page 72: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/72.jpg)
Recursos do Puppet
Resource Types
Parâmetros e Meta-parâmetros
Templates e Definições
Classes e Módulos
Funções e Condicionais
sexta-feira, 16 de agosto de 13
![Page 73: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/73.jpg)
Puppet Resource Types
Arquivos e Diretórios
Usuários
Alias
Pacotes
Serviços
Yum Repos
Augeas
Hosts
SSH
Cron
O puppet oferece 38 tipos de recursos nativos, e você pode estendê-lo.
sexta-feira, 16 de agosto de 13
![Page 74: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/74.jpg)
Resource Type: PackagesSuporte a 23 tipos de provedores de pacotes
Faz a abstração do OS
Declare se o pacote deve estar presente ou ausente
Declare se o pacote deve sempre estar em sua última versão
sexta-feira, 16 de agosto de 13
![Page 75: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/75.jpg)
Resource Type: ServicesSuporta 11 tipos de sistemas INIT para inicializar serviços
Declare se um serviço deve estar sempre rodando
Declare se um serviço deve ser carregado no boot
Declare se um serviço depende de um pacote ou arquivo
sexta-feira, 16 de agosto de 13
![Page 76: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/76.jpg)
Resource Type: FileEspecifique permissões e owners
Declare arquivos, diretórios e links
Controle de mudanças usando até 15 tipos de checksums
sexta-feira, 16 de agosto de 13
![Page 77: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/77.jpg)
Exemplossexta-feira, 16 de agosto de 13
![Page 78: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/78.jpg)
Instala, Configura e Inicia
# aptitude install apache2
# update-rc.d -f apache2 defaults
# cp ~/httpd.conf /etc/apache2/
# invoke-rc.d apache2 start
debian-way
sexta-feira, 16 de agosto de 13
![Page 79: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/79.jpg)
package { 'apache2':ensure => present,}
service { 'apache2':
ensure => running,enable => true,}
file { 'httpd.conf':path => “/etc/apache2/httpd.conf”,source => “/etc/puppet/files/httpd.conf”,}
Instala, Configura e Inicia
sexta-feira, 16 de agosto de 13
![Page 80: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/80.jpg)
package { 'apache2':ensure => present,}
service { 'apache2':
ensure => running,enable => true,}
file { 'httpd.conf':path => “/etc/apache2/httpd.conf”,source => “/etc/puppet/files/httpd.conf”,}
Instala, Configura e Inicia
resource typeparameter
titlevalue
sexta-feira, 16 de agosto de 13
![Page 81: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/81.jpg)
Base Classclass linux-server { include sysadmin-utils include zabbix-agent include ntpconf include locales include hosts include users include localmta include vimrc include backup-agent include apt-repos}
sexta-feira, 16 de agosto de 13
![Page 82: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/82.jpg)
Declarando um nodenode “servidor.dominio” { include linux-server include module}
node “balancer.dominio” { include linux-server include cyrus::backend include postfix::hub include haproxy::mailproxy}
sexta-feira, 16 de agosto de 13
![Page 83: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/83.jpg)
Variáveis e FatosFatos (facter)
vimpackage => vim-puppet,
apacheservice => apache2,
ntpconfrhel => ntp.conf.rhel,
Variáveisdomainfqdnhostnameinterfacesipaddress_eth0ipaddress_eth1ipaddress_lolsbdistidlsbdistrelease
=> hacklab,=> puppetmaster.hacklab,=> puppetmaster,=> eth0,eth1,lo,=> 10.0.2.15,=> 192.168.56.150,=> 127.0.0.1,=> debian,=> 6.0.5,
sexta-feira, 16 de agosto de 13
![Page 84: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/84.jpg)
Condicionaiscase $operatingsystem { CentOS,RedHat: { $package_name = 'ntp', $service_name = 'ntpd', $conf_file = 'ntp.conf.el', } Debian,Ubuntu: { $package_name = 'ntp', $service_name = 'ntp', $conf_file = 'ntp.conf.debian', }}....
sexta-feira, 16 de agosto de 13
![Page 85: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/85.jpg)
Definiçõesproxy::squid { 'ProxyFilial' : http_port squid_mode squid_hostname cache_mem maximum_object_size_in_memory maximum_object_size memory_replacement_policy cache_replacement_policy cache_dir cache_mgr cache_effective_user cache_effective_group dns_nameservers ips_squid }
=> '3128',=> 'transparent',=> 'proxy.4linux',=> '2 GB',=> '6 MB',=> '128 MB',=> 'heap GDSF',=> 'heap LFUDA',=> 'aufs /var/spool/squid 1024 16 256',=> '[email protected]',=> 'proxy',=> 'proxy',=> '127.0.0.1 10.61.12.2 172.16.1.1',=> '127.0.0.1 192.168.12.3',
sexta-feira, 16 de agosto de 13
![Page 86: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/86.jpg)
Templates
myorigin = <%= hostname %>mydestination = $myhostname, ..., localhost, <%= fqdn %>
Trecho do template postfix/main.cf
myorigin = servidor.dominiomydestination = $myhostname, ..., localhost, servidor.dominio
Substituição de variáveis por fatos
sexta-feira, 16 de agosto de 13
![Page 87: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/87.jpg)
Como acompanho mudanças?
sexta-feira, 16 de agosto de 13
![Page 88: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/88.jpg)
Puppet Dashboard
sexta-feira, 16 de agosto de 13
![Page 89: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/89.jpg)
sexta-feira, 16 de agosto de 13
![Page 90: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/90.jpg)
Posso fazer mudanças em tempo real? (orquestração)
sexta-feira, 16 de agosto de 13
![Page 91: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/91.jpg)
Marionette Collective
Orquestrador de nodes
Execução de Tarefas Paralelas
Interação com centenas de nodes
Inventário descentralizado
Leitura de meta-dados do Puppet
Similar a Fabric e Capistrano
sexta-feira, 16 de agosto de 13
![Page 92: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/92.jpg)
Posso provisionar VMs/Instâncias?
sexta-feira, 16 de agosto de 13
![Page 93: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/93.jpg)
Ferramentas de Provisionamento
Puppet/Chef/Ansible
Foreman
Vagrant
Razor
Sprinkle
sexta-feira, 16 de agosto de 13
![Page 94: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/94.jpg)
Qual o resultado concreto?
sexta-feira, 16 de agosto de 13
![Page 95: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/95.jpg)
Documentação Instantânea
sexta-feira, 16 de agosto de 13
![Page 96: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/96.jpg)
Processos bem definidos
sexta-feira, 16 de agosto de 13
![Page 97: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/97.jpg)
Ambiente Padronizado
sexta-feira, 16 de agosto de 13
![Page 98: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/98.jpg)
Restore e backup de mudanças
sexta-feira, 16 de agosto de 13
![Page 99: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/99.jpg)
Tarefas Automatizadas
sexta-feira, 16 de agosto de 13
![Page 100: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/100.jpg)
Benefícios ReaisMaior produtividade em menor tempo
Poucos sysadmins para muitos nodes
Diminuição de falhas humanas
Maior controle de todo o seu parque
Diminuição do tempo gasto em mudanças
Diminuição do custo de manutenção
Você chegará cedo em casa e suas madrugas e finais de semana serão seus
sexta-feira, 16 de agosto de 13
![Page 101: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/101.jpg)
Comparando
Ambiente com 450 nodesAmbiente com 450 nodesAmbiente com 450 nodes
modo manual puppet
instalando zabbix 75 horas 10 minutos
criando usuário 22 horas 10 minutos
sexta-feira, 16 de agosto de 13
![Page 102: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/102.jpg)
Tecnologia trabalhando para você
sexta-feira, 16 de agosto de 13
![Page 103: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/103.jpg)
Boas Práticassexta-feira, 16 de agosto de 13
![Page 104: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/104.jpg)
Insira o puppet nos templates de seu hypervisor
sexta-feira, 16 de agosto de 13
![Page 105: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/105.jpg)
Use o puppet para executar e controlar mudanças em seu parque
sexta-feira, 16 de agosto de 13
![Page 106: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/106.jpg)
Para de administrar e comece a desenvolver a sua infraestrutura
sexta-feira, 16 de agosto de 13
![Page 107: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/107.jpg)
Nova demanda? Já execute utilizando o Puppet, escreva classes e módulos para que você só tenha que fazer isto 1 vez e reaproveitar o código depois.
sexta-feira, 16 de agosto de 13
![Page 108: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/108.jpg)
Versione as configurações (git) criadas no Puppet.
sexta-feira, 16 de agosto de 13
![Page 109: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/109.jpg)
Reaproveite código, escreva seus módulos da forma mais flexível possível.
sexta-feira, 16 de agosto de 13
![Page 110: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/110.jpg)
Não precisa começar do zero, use módulo prontos do GitHub e
PuppetForge.
sexta-feira, 16 de agosto de 13
![Page 111: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/111.jpg)
Pesquise, há muita informação sobre puppet na rede!
sexta-feira, 16 de agosto de 13
![Page 112: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/112.jpg)
Puppet em números
727 pessoas online no canal #puppet da irc.freenode.net
8.500 repositórios no GitHub
450 módulos no PuppetForge
4457 usuários ativos na lista puppet-users com 7795 tópicos de discussão
Dados coletados em 2012-08-06 às 10:34 PMsexta-feira, 16 de agosto de 13
![Page 113: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/113.jpg)
Puppet Labssexta-feira, 16 de agosto de 13
![Page 114: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/114.jpg)
Site/Bloghttp://www.puppetlabs.comhttp://www.puppetlabs.com/blog/http://puppet-br.org/
Twitter@puppetlabs
GitHubhttp://www.github.com/puppelabs
Puppet na rede
Google GroupsPuppet-camp,puppet-users,puppet-users-br,puppet-dev
IRCirc.freenode.org#puppet#puppet-br
sexta-feira, 16 de agosto de 13
![Page 115: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/115.jpg)
Perguntas?
sexta-feira, 16 de agosto de 13
![Page 116: Ferramentas para infraestrutura ágil](https://reader035.vdocuments.pub/reader035/viewer/2022070316/5560f9fbd8b42a91388b4d8c/html5/thumbnails/116.jpg)
Obrigado!
Linkedin: http://br.linkedin.com/in/gutocarv
E-mail: [email protected]
Contato
Slides: slideshare.net/gutocarvalhoBlog: gutocarvalho.net
Twitter: @gutocarvalho
sexta-feira, 16 de agosto de 13