SlideShare ist ein Scribd-Unternehmen logo
1 von 116
Downloaden Sie, um offline zu lesen
Brasília/DF
2013-04-27
Ferramentas para infraestrutura ágil
Guto Carvalho
sexta-feira, 16 de agosto de 13
Ferramentas para infraestrutura ágil
Guto Carvalho
gutocarvalho@gmail.com
sexta-feira, 16 de agosto de 13
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
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
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
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
Administração de sistemas e serviços
sexta-feira, 16 de agosto de 13
Virtualização
sexta-feira, 16 de agosto de 13
Cloud Computing
sexta-feira, 16 de agosto de 13
Administração Manual
sexta-feira, 16 de agosto de 13
Administração Manual
Tarefas repetitivas
Não existem padrões
Não existem procedimentos
sexta-feira, 16 de agosto de 13
Cada sysadmin faz do seu jeito
sexta-feira, 16 de agosto de 13
Tarefas Repetitivas	
Criaçã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
A medida que o parque aumenta
administrá-lo fica mais complicado
sexta-feira, 16 de agosto de 13
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
Maior risco de falhas
sexta-feira, 16 de agosto de 13
Maior tempo gasto para
executar mudanças
sexta-feira, 16 de agosto de 13
Criação de
usuário
450 máquinas
3 minutos por máquina
1350 minutos ou 22,5 horas
450 trocas de senhas
sexta-feira, 16 de agosto de 13
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
Instalação de
agente de
monitoramento
450 máquinas
10 minutos por máquina
4500 minutos ou 75 horas
9 dias trabalhando 8 h.p.d
sexta-feira, 16 de agosto de 13
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
Documentação inexistente
sexta-feira, 16 de agosto de 13
Não há rastreamento de mudanças
sexta-feira, 16 de agosto de 13
Você começa a ter a sensação de estar sendo
engolido por seu ambiente?
sexta-feira, 16 de agosto de 13
Como resolver
estes problemas?
Como obtenho controle e
padronização em meu
ambiente ?
sexta-feira, 16 de agosto de 13
Gerência de Configurações
sexta-feira, 16 de agosto de 13
Padronização
sexta-feira, 16 de agosto de 13
Automatização
sexta-feira, 16 de agosto de 13
Controle
sexta-feira, 16 de agosto de 13
Integridade
sexta-feira, 16 de agosto de 13
Agilidade nas mudanças
sexta-feira, 16 de agosto de 13
Puppet
Ferramenta de nova geração
que implementa gerência de
configurações para seu
ambiente.
sexta-feira, 16 de agosto de 13
Puppet em poucas palavras
sexta-feira, 16 de agosto de 13
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
Sobre a ferramenta
sexta-feira, 16 de agosto de 13
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
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
Feito por um SysAdmin para SysAdmins
sexta-feira, 16 de agosto de 13
Desenhada para uso DevOps
sexta-feira, 16 de agosto de 13
Visão DevOps
sexta-feira, 16 de agosto de 13
Tech Specs
sexta-feira, 16 de agosto de 13
Tech Specs
Escrito 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
Cases Puppet Enterprise
sexta-feira, 16 de agosto de 13
Arquitetura
Como funciona o Puppet?
sexta-feira, 16 de agosto de 13
Resource Abstraction Layer
(RAL)
sexta-feira, 16 de agosto de 13
Resource Abstraction Layer
sexta-feira, 16 de agosto de 13
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
Instale Pacote X
sexta-feira, 16 de agosto de 13
Remova usuário Z
sexta-feira, 16 de agosto de 13
(Re)inicie serviço Y
sexta-feira, 16 de agosto de 13
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
Tratamento de informações
sexta-feira, 16 de agosto de 13
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
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
Processamento
do Catálogo
1) Agente Requisita Catálogo
1.1) Agente envia Fatos para Master
2) Master Processa Fatos e Compara
2.1) Master Produz e envia Catálogo
3) Node Recebe, Compara e Aplica
4) Node informa estado atual ao Master
5) Sistema reflete catálogo
sexta-feira, 16 de agosto de 13
Processamento
do Catálogo
1) Agente Requisita Catálogo
1.1) Agente envia Fatos para Master
2) Master Processa Fatos e Compara
2.1) Master Produz e envia Catálogo
3) Node Recebe, Compara e Aplica
4) Node informa estado atual ao Master
5) Sistema reflete catálogo
sexta-feira, 16 de agosto de 13
Idempotência
sexta-feira, 16 de agosto de 13
Configurações
Voláteis e Dados
Puppet
Master
Mó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
Você pode fazer deploy de sua APP
Você pode controlar a versão de sua APP
sexta-feira, 16 de agosto de 13
Como funciona o modo cliente/servidor?
sexta-feira, 16 de agosto de 13
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
Puppet Visão em Rede
Puppet Master
Puppet Client
8140 TCP
Client
puppetd -t
8139 TCP
Server
puppetrun
SSL
sexta-feira, 16 de agosto de 13
Fluxo Cliente/Servidor
Instalação do
node
sexta-feira, 16 de agosto de 13
Fluxo Cliente/Servidor
Instalação do
node
Inicialização
do puppet
sexta-feira, 16 de agosto de 13
Fluxo Cliente/Servidor
Instalação do
node
Geração de
Certificado
Inicialização
do puppet
sexta-feira, 16 de agosto de 13
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
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
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
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 Certificado
Assinatura pode ser manual
Assinatura pode ser automática por domínio
Assinatura pode ser automática em qualquer requisição
sexta-feira, 16 de agosto de 13
O agente se comunica com o
master a cada N minutos
sexta-feira, 16 de agosto de 13
Quais recursos estão disponíveis?
sexta-feira, 16 de agosto de 13
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
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
Resource Type: Packages
Suporte 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
Resource Type: Services
Suporta 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
Resource Type: File
Especifique 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
Exemplos
sexta-feira, 16 de agosto de 13
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
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
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 type
parameter
title
value
sexta-feira, 16 de agosto de 13
Base Class
class 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
Declarando um node
node “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
Variáveis e Fatos
Fatos (facter)
vimpackage => vim-puppet,
apacheservice => apache2,
ntpconfrhel => ntp.conf.rhel,
Variáveisdomain
fqdn
hostname
interfaces
ipaddress_eth0
ipaddress_eth1
ipaddress_lo
lsbdistid
lsbdistrelease
=> 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
Condicionais
case $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
Definições
proxy::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',
=> 'monitora@4linux.com.br',
=> '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
Templates
myorigin = <%= hostname %>
mydestination = $myhostname, ..., localhost, <%= fqdn %>
Trecho do template postfix/main.cf
myorigin = servidor.dominio
mydestination = $myhostname, ..., localhost, servidor.dominio
Substituição de variáveis por fatos
sexta-feira, 16 de agosto de 13
Como acompanho mudanças?
sexta-feira, 16 de agosto de 13
Puppet Dashboard
sexta-feira, 16 de agosto de 13
sexta-feira, 16 de agosto de 13
Posso fazer mudanças em
tempo real? (orquestração)
sexta-feira, 16 de agosto de 13
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
Posso provisionar VMs/Instâncias?
sexta-feira, 16 de agosto de 13
Ferramentas de Provisionamento
Puppet/Chef/Ansible
Foreman
Vagrant
Razor
Sprinkle
sexta-feira, 16 de agosto de 13
Qual o resultado concreto?
sexta-feira, 16 de agosto de 13
Documentação Instantânea
sexta-feira, 16 de agosto de 13
Processos bem definidos
sexta-feira, 16 de agosto de 13
Ambiente Padronizado
sexta-feira, 16 de agosto de 13
Restore e backup de mudanças
sexta-feira, 16 de agosto de 13
Tarefas Automatizadas
sexta-feira, 16 de agosto de 13
Benefícios Reais
Maior 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
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
Tecnologia trabalhando para você
sexta-feira, 16 de agosto de 13
Boas Práticas
sexta-feira, 16 de agosto de 13
Insira o puppet nos templates
de seu hypervisor
sexta-feira, 16 de agosto de 13
Use o puppet para executar e
controlar mudanças em seu parque
sexta-feira, 16 de agosto de 13
Para de administrar e comece a
desenvolver a sua infraestrutura
sexta-feira, 16 de agosto de 13
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
Versione as configurações (git)
criadas no Puppet.
sexta-feira, 16 de agosto de 13
Reaproveite código, escreva seus módulos
da forma mais flexível possível.
sexta-feira, 16 de agosto de 13
Não precisa começar do zero, use
módulo prontos do GitHub e
PuppetForge.
sexta-feira, 16 de agosto de 13
Pesquise, há muita informação
sobre puppet na rede!
sexta-feira, 16 de agosto de 13
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 PM
sexta-feira, 16 de agosto de 13
Puppet Labs
sexta-feira, 16 de agosto de 13
Site/Blog
http://www.puppetlabs.com
http://www.puppetlabs.com/blog/
http://puppet-br.org/
Twitter
@puppetlabs
GitHub
http://www.github.com/puppelabs
Puppet na rede
Google Groups
Puppet-camp,
puppet-users,
puppet-users-br,
puppet-dev
IRC
irc.freenode.org
#puppet
#puppet-br
sexta-feira, 16 de agosto de 13
Perguntas?
sexta-feira, 16 de agosto de 13
Obrigado!
Linkedin: http://br.linkedin.com/in/gutocarv
E-mail: gutocarvalho@gmail.com
Contato
Slides: slideshare.net/gutocarvalho
Blog: gutocarvalho.net
Twitter: @gutocarvalho
sexta-feira, 16 de agosto de 13

Weitere ähnliche Inhalte

Was ist angesagt?

Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppetDaniel Sobral
 
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...Samuel Sampaio
 
Gerenciamento de configuração com puppet
Gerenciamento de configuração com puppetGerenciamento de configuração com puppet
Gerenciamento de configuração com puppetElton Simões
 
Puppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGilPuppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGiljefesrodrigues
 
Async/Await Pattern in C#
Async/Await Pattern in C#Async/Await Pattern in C#
Async/Await Pattern in C#Leandro Silva
 
Uma breve introdução ao Terraform
Uma breve introdução ao TerraformUma breve introdução ao Terraform
Uma breve introdução ao TerraformLeandro Silva
 
Lidando com operações assíncronas no redux com redux saga
Lidando com operações assíncronas no redux com redux sagaLidando com operações assíncronas no redux com redux saga
Lidando com operações assíncronas no redux com redux sagaHugo Bessa
 
Sim, existe vida além do FTP!
Sim, existe vida além do FTP!Sim, existe vida além do FTP!
Sim, existe vida além do FTP!Gustavo Pereira
 
Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produçãothomasdacosta
 
Automação de Ambientes com Puppet
Automação de Ambientes com Puppet Automação de Ambientes com Puppet
Automação de Ambientes com Puppet 4LinuxCursos
 
Gerenciamento de Configurações - Puppet
Gerenciamento de Configurações - PuppetGerenciamento de Configurações - Puppet
Gerenciamento de Configurações - PuppetRoberto Scudeller
 
Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php Michael Douglas
 
Trabalhando de forma profissional com silex
Trabalhando de forma profissional com silexTrabalhando de forma profissional com silex
Trabalhando de forma profissional com silexMichael Douglas
 
Construindo uma API, Client e Documentação usando Silex, Angular e Swagger
Construindo uma API, Client e Documentação usando Silex, Angular e SwaggerConstruindo uma API, Client e Documentação usando Silex, Angular e Swagger
Construindo uma API, Client e Documentação usando Silex, Angular e SwaggerDelermando Santos Miranda
 
Programando php com mais segurança
Programando php com mais segurançaProgramando php com mais segurança
Programando php com mais segurançaMichael Douglas
 
Monitoramento de Serviços de Bancos de Dados - Nagios
Monitoramento de Serviços de Bancos de Dados - NagiosMonitoramento de Serviços de Bancos de Dados - Nagios
Monitoramento de Serviços de Bancos de Dados - NagiosEduardo Legatti
 

Was ist angesagt? (20)

Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppet
 
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
 
Consegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + PuppetConsegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + Puppet
 
Gerenciamento de configuração com puppet
Gerenciamento de configuração com puppetGerenciamento de configuração com puppet
Gerenciamento de configuração com puppet
 
Puppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGilPuppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGil
 
Async/Await Pattern in C#
Async/Await Pattern in C#Async/Await Pattern in C#
Async/Await Pattern in C#
 
Uma breve introdução ao Terraform
Uma breve introdução ao TerraformUma breve introdução ao Terraform
Uma breve introdução ao Terraform
 
Lidando com operações assíncronas no redux com redux saga
Lidando com operações assíncronas no redux com redux sagaLidando com operações assíncronas no redux com redux saga
Lidando com operações assíncronas no redux com redux saga
 
Sim, existe vida além do FTP!
Sim, existe vida além do FTP!Sim, existe vida além do FTP!
Sim, existe vida além do FTP!
 
Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produção
 
Automação de Ambientes com Puppet
Automação de Ambientes com Puppet Automação de Ambientes com Puppet
Automação de Ambientes com Puppet
 
Gerenciamento de Configurações - Puppet
Gerenciamento de Configurações - PuppetGerenciamento de Configurações - Puppet
Gerenciamento de Configurações - Puppet
 
Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php
 
Trabalhando de forma profissional com silex
Trabalhando de forma profissional com silexTrabalhando de forma profissional com silex
Trabalhando de forma profissional com silex
 
React Hooks e como adotar
React Hooks e como adotarReact Hooks e como adotar
React Hooks e como adotar
 
Construindo uma API, Client e Documentação usando Silex, Angular e Swagger
Construindo uma API, Client e Documentação usando Silex, Angular e SwaggerConstruindo uma API, Client e Documentação usando Silex, Angular e Swagger
Construindo uma API, Client e Documentação usando Silex, Angular e Swagger
 
Open
OpenOpen
Open
 
Programando php com mais segurança
Programando php com mais segurançaProgramando php com mais segurança
Programando php com mais segurança
 
My first app django
My first app djangoMy first app django
My first app django
 
Monitoramento de Serviços de Bancos de Dados - Nagios
Monitoramento de Serviços de Bancos de Dados - NagiosMonitoramento de Serviços de Bancos de Dados - Nagios
Monitoramento de Serviços de Bancos de Dados - Nagios
 

Andere mochten auch

Infraestrutura Ágil
Infraestrutura ÁgilInfraestrutura Ágil
Infraestrutura Ágilinstructbr
 
Ansible - Automacao de Infraestrutura de TI
Ansible - Automacao de Infraestrutura de TI Ansible - Automacao de Infraestrutura de TI
Ansible - Automacao de Infraestrutura de TI Marcos Vieira
 
Mini-curso de Linux - SECCOMP 2009
Mini-curso de Linux - SECCOMP 2009Mini-curso de Linux - SECCOMP 2009
Mini-curso de Linux - SECCOMP 2009CI&T
 
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2
Dev ninja  -> vagrant + virtualbox + chef-solo + git + ec2Dev ninja  -> vagrant + virtualbox + chef-solo + git + ec2
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2Yros
 
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...
 IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando... IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...Diego Santos
 
PHP - Programação para seres humanos
PHP - Programação para seres humanosPHP - Programação para seres humanos
PHP - Programação para seres humanosCaike Souza
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...Leandro Nunes
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linuxRogério Cardoso
 
Agile Transformation in Telco Guide
Agile Transformation in Telco GuideAgile Transformation in Telco Guide
Agile Transformation in Telco GuideACM
 
TDC2016POA | Trilha Infraestrutura - Infraestrutura Agil no Sicredi
TDC2016POA | Trilha Infraestrutura -  Infraestrutura Agil no SicrediTDC2016POA | Trilha Infraestrutura -  Infraestrutura Agil no Sicredi
TDC2016POA | Trilha Infraestrutura - Infraestrutura Agil no Sicreditdc-globalcode
 
Php e mysql aplicacao completa a partir do zero
Php e mysql   aplicacao completa a partir do zeroPhp e mysql   aplicacao completa a partir do zero
Php e mysql aplicacao completa a partir do zeroFred Ramos
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at FlickrJohn Allspaw
 

Andere mochten auch (15)

Infraestrutura Ágil
Infraestrutura ÁgilInfraestrutura Ágil
Infraestrutura Ágil
 
Ansible - Automacao de Infraestrutura de TI
Ansible - Automacao de Infraestrutura de TI Ansible - Automacao de Infraestrutura de TI
Ansible - Automacao de Infraestrutura de TI
 
Mini-curso de Linux - SECCOMP 2009
Mini-curso de Linux - SECCOMP 2009Mini-curso de Linux - SECCOMP 2009
Mini-curso de Linux - SECCOMP 2009
 
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2
Dev ninja  -> vagrant + virtualbox + chef-solo + git + ec2Dev ninja  -> vagrant + virtualbox + chef-solo + git + ec2
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2
 
Git Básico
Git BásicoGit Básico
Git Básico
 
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...
 IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando... IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...
 
PHP - Programação para seres humanos
PHP - Programação para seres humanosPHP - Programação para seres humanos
PHP - Programação para seres humanos
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
 
GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Firewall linux virtual para windows
Firewall linux virtual para windowsFirewall linux virtual para windows
Firewall linux virtual para windows
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linux
 
Agile Transformation in Telco Guide
Agile Transformation in Telco GuideAgile Transformation in Telco Guide
Agile Transformation in Telco Guide
 
TDC2016POA | Trilha Infraestrutura - Infraestrutura Agil no Sicredi
TDC2016POA | Trilha Infraestrutura -  Infraestrutura Agil no SicrediTDC2016POA | Trilha Infraestrutura -  Infraestrutura Agil no Sicredi
TDC2016POA | Trilha Infraestrutura - Infraestrutura Agil no Sicredi
 
Php e mysql aplicacao completa a partir do zero
Php e mysql   aplicacao completa a partir do zeroPhp e mysql   aplicacao completa a partir do zero
Php e mysql aplicacao completa a partir do zero
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
 

Ähnlich wie Ferramentas para infraestrutura ágil com Puppet

Ao infinito e além com PHP memcached e Gearman
Ao infinito e além com PHP memcached e GearmanAo infinito e além com PHP memcached e Gearman
Ao infinito e além com PHP memcached e GearmanElton Minetto
 
Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Fabrízio Mello
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develJose Augusto Carvalho
 
Gerência de Configurações com o Puppet
Gerência de Configurações com o PuppetGerência de Configurações com o Puppet
Gerência de Configurações com o Puppetpericles_junior
 
Deploy completo de uma aplicação Django
Deploy completo de uma aplicação DjangoDeploy completo de uma aplicação Django
Deploy completo de uma aplicação DjangoAllisson Azevedo
 
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14Getup Cloud
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cactiIsraelCunha
 
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...tdc-globalcode
 
Aula PIT 3 - Ambientes
Aula PIT 3 - AmbientesAula PIT 3 - Ambientes
Aula PIT 3 - AmbientesDirceu Belém
 
PaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma públicaPaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma públicaGetup Cloud
 

Ähnlich wie Ferramentas para infraestrutura ágil com Puppet (20)

Puppet Cloud IaaS
Puppet Cloud IaaSPuppet Cloud IaaS
Puppet Cloud IaaS
 
Php do Jeito Certo
Php do Jeito CertoPhp do Jeito Certo
Php do Jeito Certo
 
Puppet overview
Puppet overviewPuppet overview
Puppet overview
 
Fabric
FabricFabric
Fabric
 
Bt4 H2HC6th
Bt4 H2HC6thBt4 H2HC6th
Bt4 H2HC6th
 
Ao infinito e além com PHP memcached e Gearman
Ao infinito e além com PHP memcached e GearmanAo infinito e além com PHP memcached e Gearman
Ao infinito e além com PHP memcached e Gearman
 
WordPress na Amazon AWS - Cloud36
WordPress na Amazon AWS - Cloud36WordPress na Amazon AWS - Cloud36
WordPress na Amazon AWS - Cloud36
 
Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e devel
 
Gerência de Configurações com o Puppet
Gerência de Configurações com o PuppetGerência de Configurações com o Puppet
Gerência de Configurações com o Puppet
 
Seu site voando
Seu site voandoSeu site voando
Seu site voando
 
Deploy completo de uma aplicação Django
Deploy completo de uma aplicação DjangoDeploy completo de uma aplicação Django
Deploy completo de uma aplicação Django
 
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14
PT-BR - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FISL14
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cacti
 
Python 08
Python 08Python 08
Python 08
 
Igor Oliveira - Puppet
Igor Oliveira - PuppetIgor Oliveira - Puppet
Igor Oliveira - Puppet
 
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...
TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had ...
 
Raspberry Pi: o hardware para Python
Raspberry Pi: o hardware para PythonRaspberry Pi: o hardware para Python
Raspberry Pi: o hardware para Python
 
Aula PIT 3 - Ambientes
Aula PIT 3 - AmbientesAula PIT 3 - Ambientes
Aula PIT 3 - Ambientes
 
PaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma públicaPaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma pública
 

Mehr von Jose Augusto Carvalho

Mehr von Jose Augusto Carvalho (7)

Cultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e develCultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e devel
 
Conhecendo o Wordpress
Conhecendo o WordpressConhecendo o Wordpress
Conhecendo o Wordpress
 
Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2
 
O que é DevOps afinal?
O que é DevOps afinal?O que é DevOps afinal?
O que é DevOps afinal?
 
Palestra Puppet Hora Livre
Palestra Puppet Hora LivrePalestra Puppet Hora Livre
Palestra Puppet Hora Livre
 
Oficina Puppet latinoware
Oficina Puppet latinowareOficina Puppet latinoware
Oficina Puppet latinoware
 
Documentando de forma Ágil (usando dokuwiki)
Documentando de forma Ágil (usando dokuwiki)Documentando de forma Ágil (usando dokuwiki)
Documentando de forma Ágil (usando dokuwiki)
 

Ferramentas para infraestrutura ágil com Puppet