SOFTWARE FREEDOM DAY 2014 - GERÊNCIA DE CONFIGURAÇÃO COM PUPPET

Post on 18-Dec-2014

53 Views

Category:

Internet

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slides do minicurso que ministrei no Software Freedom Day 2014 em Teresina-PI

Transcript

GERÊNCIA DE CONFIGURAÇÃO COM PUPPET

#WHOAMI

● SYSADMIM● COORDENADOR DE PROJETOS● MEMBRO DA APISOL● EXPERIÊNCIAS

– ADMINISTRAÇÃO DE SERVIDORES LINUX;

– VIRTUALIZAÇÃO E CLOUD;– ADMINISTRAÇÃO DE BD;– TELEFONIA VOIP

ROTEIRO

● INFRAESTRUTURA ÁGIL● GERÊNCIA DE CONFIGURAÇÕES● PUPPET:

– SOBRE O PUPPET

– ARQUITETURA;

– EXEMPLOS

● ATIVIDADES PRÁTICAS● CONSIDERAÇÕES FINAIS

INFRAESTRUTURA ÁGIL

TENDÊNCIAS

VIRTUALIZAÇÃO

CLOUD COMPUTING

AGILIDADE

ADMINISTRAÇÃO MANUAL

ADMINISTRAÇÃO MANUAL

● TAREFAS REPETITIVAS;

● NÃO EXISTE PADRÕES;

● CADA SYSADMIN FAZ DO SEU JEITO;

A MEDIDA QUE O PARQUE DE MÁQUINAS AUMENTA FICA MAIS

DIFÍCIL DE ADMINISTRÁ-LO

MAIOR RISCOS DE FALHAS

CENÁRIO 1:Atualizar pacotes em 400 VMs:ssh servidor1.domíniossh servidor2.domíniossh servidor3.domíniossh servidor4.domínio

…ssh servidor400.domínio

CENÁRIO2: INSTALAR AGENTE DO ZABBIX 400 VMs

QUANTO TEMPO EU LEVARIA PARA CONCLUIR O CENÁRIO 1 E

2?

CONCLUIR O CENÁRIO 1 E 2?

● CENÁRIO1:– 1 min por servidor

– Total 400 min;

– 6,6 horas de trabalho;

● CENÁRIO2:– 10 min por servidor;

– Total 4000 min;

– 66,6 horas;

– Quase 3 dias para concluir;

CADA SISTEMA OPERACIONAL TEM SUAS PECULIARIDADES

PARA TRATAR RECURSOS;

O SYSADMIN VAI PERDER MUITO TEMPO FAZENDO SCRIPTS

MAIOR TEMPO PARA MUDANÇAS

FICA MAIS DIFÍCIL O PROCESSO DE DOCUMENTAÇÃO

PARA A EMPRESA

● AUMENTO DO CUSTO DE MANUTENÇÃO;● MAIOR DESGASTE DA EQUIPE:● MÁ PERCEPÇÃO DA EQUIPE DE DEV E DOS

DEMAIS COLABORADORES DA EMPRESA● QUALIDADE NO SERVIÇO DIMINUE;● PRODUTIVIDADE DA EQUIPE DIMINUE;

RETRABALHO

DESPERDÍCIO DE TEMPO

COMO RESOLVER ESSE TIPO DE PROBLEMA?

GERÊNCIA DE CONFIGURAÇÃO

GERÊNCIA DE CONFIGURAÇÕES

● PADRONIZAÇÃO● CONTROLE ● INTEGRIDADE● PRODUTIVIDADE ● AGILIDADE

COLOCANDO SUAS CONFIGURAÇÕES NOS TRILHOS

PUPPET

PUPPET

● DOCUMENTAÇÃO EXECUTÁVEL;● PERMITE DESENVOLVER NOSSA INFRA;● SINTAXE SIMPLES E NATURAL PARA O

SYSADMIN;● OFERECE SUPORTE A DIVERSOS

SISTEMAS OPERACIONAIS: WINDOWS, LINUX, BSD, OSX, ETC.

PUPPET

● OPEN SOURCE – APACHE LICENSE

● MANTIDA PELA PUPPET LABS;

● CRIADO PELO LUKE KAINES (CEO DA PUPPET LABS)

● DESENHADA PARA O USO DE DEVOPS

DEVOPS

VISÃO TÉCNICA

● ESCRITO EM RUBY● FUNCIONA EM MODO AUTÔNOMO● FUNCIONA EM MODO CLIENTE SERVIDOR● OFERECE COMUNICAÇÃO COM USO DE

CERTIFICADOS DIGITAIS● USA RESTFull API

QUEM UTILIZA PUPPET

NO BRASIL

ARQUITETURA DO PUPPET

COMO FUNCIONA O PUPPET?

● MODO MASTERLESS:– SEM SERVIDOR MASTER;

– NO PENDRIVE;

● CLIENTE SERVIDOR:– PUPPET MASTER;

– PUPPET AGENT;

TRATAMENTO DE INFORMAÇÕES

● TUDO NO PUPPET É UM DADO;

● TODAS AS CONFIGURAÇÕES SÃO CONVERTIDAS EM CATÁLOGOS XML;

FUNCIONAMENTO DO MODO CLIENTE SERVIDOR

ABSTRAÇÃO

RESOURCE ABSTRACTION LAYER - RAL

● CAMADA DE ABSTRAÇÃO DE RECURSOS

● VOCÊ DIZ O QUE É FEITO

● O PUPPET SABE COMO SERÁ FEITO

DOCUMENTAÇÃO EXECUTÁVEL

IDEMPOTÊNCIA

RECURSOS DO PUPPET

RECURSOS DO PUPPET

● RESOURCES TYPE● PARÂMETROS E META PARÂMETROS● TEMPLATES E DEFINIÇÕES● CLASSES MÓDULOS● FUNÇÕES E CONDICIONAIS

RESOURCE TYPES

● O PUPPET OFERECE 38 TIPOS DE RECURSOS NATIVOS:– FILE

– USER

– PACKAGE

– ALIAS

– SERVICE

EXEMPLOS

INSTALA, CONFIGURA E INICIA● INSTALAR O APACHE:

– NO DEBIAN:

apt-get install apache2

update-rc.d apache2 enable

invoke-rc.d apache2 start

– NO CENTOS:

yum install httpd

chkconfig httpd on

service httpd start

COMO SERIA NO PUPPET?

INSTALA, CONFIGURA E INICIA

● INSTALAR O APACHE:– NO PUPPET:

package {“apache2”:ensure => present,

}

service {“apache2”:ensure => running,enable => true,

}

NA PRÁTICA

INSTALAÇÃO DO PUPPET

● DEBIAN:– /etc/apt/sources.list:

● deb http://ftp.debian.org/debian squeeze main contrib non-free

● deb http://apt.puppetlabs.com squeeze main● deb http://security.debian.org/

squeeze/updates main contrib non-free– apt-get update– apt-get install puppet

INSTALAÇÃO DO PUPPET

● CENTOS:– yum install

http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

– yum install http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm

– yum update– yum install puppet

CONFIGURAÇÃO

● Mudar o hostname da máquina:– /etc/hosts/

● <seu ip> <seunome>.sfdteresina.org● <ipmaster> puppetmaster.sfdteresina.org

GERAR CERTIFICADOS

puppet agent -t ou puppet agent --test

DASHBOARD

MARIONETTE COLLECTIVE

● ORQUESTRAÇÃO DE SERVIDORES● TAREFAS PARALELAS● INVENTÁRIO DE NODES● INTERAÇÃO COM VÁRIOS NODES

PROVISIONAMENTO

PROVISIONAMENTO

● FOREMAN

● VAGRANT

● PUPPET ENTERPRISE

BENEFÍCIOS DO PUPPET

● AUMENTO DE PRODUTIVIDADE● MAIOR CONTROLE● DIMINUIÇÃO DE FALHAS● DIMINUIÇÃO DO TEMPO PARA

MUDANÇAS● DIMINUIÇÃO DO CUSTO DE

MANUTENÇÃO● MAIS TEMPO COM A FAMILIA

LINKS IMPORTANTES

● www.puppetlabs.com● www.puppetlabs.com/blog● puppet-br.org● www.github.com/puppet/labs● forge.puppetlabs.com● gutocarvalho.net● instruct.com.br

CONTATO

Adriel Lucasadriell.ads@gmail.comwww.adrielltech.com

slideshare.com/adriell.adsfacebook.com/adriell.ads

top related