Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Cubo 3d
Por leandro
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Instalação e Configuração do Puppet
Linux user
joserribeirojuni
31/12/2011
Puppet é um software para automação de Data Center, com ele você cria regras que poderão ser aplicadas a outros servidores de maneira
automatizada.
Por: Jose Ribeiro | Blog: http://tuxjr.wordpress.com
[ Hits: 3414 ]
Conceito: 10.0   2 voto(s)2 voto(s)2 voto(s)2 voto(s)2 voto(s) + quero dar nota ao artigo

Entendendo, preparando e configurando

Entendendo o Puppet

Em um parque de servidores, normalmente tem-se que realizar tarefas repetitivas, como instalar determinado software, criar regras de firewall, e editar arquivos de configurações.

O Puppet pode ajudar nestas tarefas, e quando se fala em segurança, ele é usado para centralizar arquivos de configurações para manter as máquinas organizadas e com uma estrutura de configuração fácil de manipular.

- A definição original:

"Puppet, an automated administrative engine for your *nix systems, performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification.

Puppet can let you focus more on how things should be done and less on doing them. Let computers do what they are good at, precisely perform patterns, so you can focus on creating solutions. The act of specifying the services will help you clarify the systems you actually need and once your services are modelled using Puppet, your ability to scale and recover from hardware failure could just be plugging in a new blade, setting the hostname and starting puppet.

If your systems aren't going to change or scale you probably don't need Puppet, but your competition might (...)"

Fonte:     
No link abaixo tem uma ótima documentação sobre a Puppet language, que é usada para escrever as ações que o servidor enviará para o fantoches:   
Nesse outro link possui um comparativo com software da mesma classe:   
Bom, vamos iniciar a instalação e configuração com exemplos para ficar mais claro como este software trabalha.

Preparação do ambiente e configuração

- Descrição de ambiente:

Primeira máquina:
  • CentOS 6.
  • 1024 MB de memória RAM.
  • 10 GB de disco.
  • Conexão com a internet.

Segunda máquina:
  • CentOS 6.
  • 1024 MB de memória RAM.
  • 10 GB de disco.
  • Conexão com a internet.

- Passos a serem realizados no servidor:

# wget http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
# rpm -ivh epel-release-6-5.noarch.rpm
# wget http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
# rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
# yum install puppet-server.x86_64


No arquivo "/etc/hosts":

192.168.x.x puppet2  → client
192.168.x.y puppet1 → server
192.168..x.y puppet  → server


No hosts, você precisa indicar que o server responde por Puppet e no caso já deixei mapeado o 'client' também.

No arquivo "/etc/puppet/puppetd.conf":

[puppet]
    vardir = /var/lib/puppet

    logdir = /var/log/puppet

    rundir = /var/run/puppet

    ssldir = $vardir/ssl

[puppetd]
    classfile = $vardir/classes.txt

    localconfig = $vardir/localconfig
[puppetmasterd]
    certname=puppet


Feito isso, dê um start no servidor:

# service puppetmaster start

A saída seria:
Starting puppetmaster:                                     [  OK  ]
[root@puppet1 ~]#

Se isto aconteceu, parabéns. A primeira etapa esta pronta, agora vamos à configuração do 'client'.

No 'client':

# wget http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
# rpm -ivh epel-release-6-5.noarch.rpm
# wget http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
# rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
# yum install puppet.x86_64


Coloque a mesma configuração do arquivos hosts do server.

Agora temos que gerar a chave.

No 'client':

# puppetd -test

No server:

# puppetca -list

Caso aparecer o 'client', vamos autorizar a chave.

# puppetca --sign puppet2

Agora no 'client':

# puppetd -test

A saída agora não deve retornar erro, neste status ele já está sincronizando com o servidor.
Próxima página >>




Páginas do artigo
   1. Entendendo, preparando e configurando
   2. Exemplo de configuração

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por rodrigom em 01/01/2012 - 10:51h:

Bom dia "joserribeirojuni";

Se entendi bem, tudo que fizer em um servidor, nos diretórios especificados na conf, serão replicados automaticamente no outro server, certo?
Essa replicação é feita instantaneamente ?


Muito obrigado, ótimo 2012...

[2] Comentário enviado por joserribeirojuni em 01/01/2012 - 21:41h:

Boa noite.

No exemplo acima usei

# puppetd -test

Para sincronizar.


[3] Comentário enviado por rodrigom em 02/01/2012 - 10:43h:

E essa sincronização manual tem que ser feita somente a primeira vez, e depois ele faz automaticamente ?

[4] Comentário enviado por Tacioandrade em 28/04/2012 - 22:32h:

Jose Ribeiro eu ouvi falar do Puppet e fiquei muito interessado em fazer uso dele, porem não para servidores e sim para gerenciamento das workstations da empresa onde trabalho.

Gostaria de saber se você ou alguem aqui já trabalhou com o Puppet no Windows e como é que se dá o gerenciamento do mesmo? Outra coisa você sabe dizer se existe algum gerenciador web ou gráfico para trabalhar com ele?


Att. Tácio Andrade.

[5] Comentário enviado por joserribeirojuni em 30/04/2012 - 16:06h:

Tácio,

Acredito que você preciso de algo como as GPOs do Windows, vocês usam AD ai ?

Att.


[6] Comentário enviado por Tacioandrade em 30/04/2012 - 18:15h:

Não, pois as maquinas que temos com Windows são o Home Basic (todos originais), consegui a muito custo eliminar os piratas aqui na empresa.

O que fiquei triste com o Puppet é que ele tem uma documentação até boa no site de utilização em Linux/Linux, porem não vi nada de Linux/Windows. =/


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.