lista de pacotes standart

1

Estou aprendendo o sistema de marionetes e agora preciso fazer a próxima tarefa. Temos alguns servidores com o mesmo sistema operacional (Altlinux p6, t6) - agentes de marionetes e temos um mestre de marionetes.

Nos agentes existem alguns pacotes instalados, por exemplo. 200 pacotes no primeiro, 300 no segundo .... Mas precisamos apenas de 180 instalados. Nós sabemos os nomes dos pacotes necessários, mas não sabemos os nomes dos outros (pacotes desnecessários).

Minha pergunta é: Como posso verificar ou instalar (se não instalado ainda) os pacotes necessários e excluir outros pacotes (não sabemos os nomes dos outros pacotes instalados)?

Ajuda por favor

WBR Valentin

    
por Valintinr 07.06.2012 / 14:44

3 respostas

1

Eu olhei para isso e cheguei à conclusão de que, embora seja possível fazê-lo, definindo módulos de fantoches com um Pacote {ensure = > ausente} para os pacotes que você quer puxar, não há uma maneira pronta para

Tanto quanto sei, não há um método nativo para remover pacotes em massa. Eu pensei sobre o script de algo usando um loop foreach para puxar os pacotes indesejados depois de ler uma lista delimitada por linha de um arquivo de configuração.

No final, porém, encontrei a solução mais limpa para criar novos servidores e usar o Puppet para todo o gerenciamento desde o início. Seus resultados podem variar.

    
por 07.06.2012 / 15:02
1

Isso deve funcionar:

resources { 'package':
    purge => true,
}

Primeiro, eu faria isso:

resources { 'package':
    purge => true,
    noop  => true,
}

E, em seguida, verifique os registros para ver o que teria feito. Somente quando fiquei satisfeito por estar funcionando bem, eu removerei o noop .

De qualquer forma, o que ele faz é dizer ao Puppet para remover todos os recursos do tipo package (como indicado pelo nome - resource { 'user': purge => true } removeria usuários, por exemplo) que não estão sendo gerenciados por marionete. Ou seja, se você tiver uma linha package { 'x': } , esse pacote não será removido se instalado. Qualquer pacote sem essa declaração será removido.

    
por 08.06.2012 / 06:11
0

O Puppet só pode fazer o que você diz para não fazer mais do que uma pessoa poderia fazer por você sem gerar uma lista de alguma forma. Você precisa dizer ao Puppet quais pacotes não pertencem à máquina.

A solução mais simples sugerida por Tim é recriar imagens e construir as máquinas corretamente usando o Puppet.

    
por 10.06.2012 / 20:50

Tags