Como administrador, quais ferramentas você usa para registrar o que faz em suas caixas? [fechadas]

7

Eu sou mais um desenvolvedor de aplicativos do Linux do que um administrador. Com o tempo, desenvolvi servidores e os mantive, às vezes para oferecer serviços, principalmente para desenvolver os aplicativos nos quais trabalho.

No passado, quando eu criava um arquivo na minha conta para manter anotações sobre o que eu fazia em cada máquina, para que eu pudesse replicá-lo quando migrasse para outras máquinas.

Hoje em dia, instalo uma instalação trac privada, instalo o plug-in do blog e, em seguida, uso-a para fazer anotações de tudo o que eu instalo e da maioria dos comandos que executo, além da saída. Isso me fornece uma combinação de wiki e blog que eu acho muito útil como "log de capitão". Eu faço isso principalmente para que, quando eu migrar para uma nova máquina limpa, tenha muito mais facilidade em criá-la.

E, no entanto, sempre fico surpreso quando vejo outras pessoas instalando isso, excluindo-as, executando isso, configurando essa configuração ... sem parecer usar nenhuma maneira de realmente observar o que estão fazendo.

O que você faz e quais ferramentas estão disponíveis?

Estou especialmente interessado na transição entre a manutenção de algumas máquinas para poucas pessoas e a manutenção de várias dezenas de máquinas que fornecem um serviço real.

Quais são as melhores práticas e onde posso encontrar bons recursos?

Obrigado!

    
por Jerry Asher 13.03.2011 / 03:57

2 respostas

6

A resposta para isso é definitivamente o gerenciamento de configuração formal. Os três grandes concorrentes nesse espaço atualmente são Chef, Puppet e Cfengine. Basicamente, você precisa aplicar a abordagem de desenvolvimento à administração do sistema: escreva um 'programa' que defina o estado da máquina e aplique-o (obviamente, isso é uma simplificação grosseira).

A verdade é que muitos de nós, do tipo neckbeard crocante, os administradores de Linux 'magicamente' configuram as máquinas porque internalizamos completamente o conhecimento ao longo de muitos anos de repetição. Eu sei aproximadamente a lista de arquivos de configuração que eu preciso tocar em qualquer máquina, e eu posso editar manualmente aqueles da memória. Essa é realmente uma maneira terrível de fazer as coisas, especialmente se você tiver mais de um servidor ou mais de um administrador de sistema. Editar manualmente um arquivo de configuração é sempre uma marca de mau planejamento e mau gerenciamento.

Sou um grande fã de usar o Clonezilla mais o arranque PXE para abrir automaticamente um sistema e colocar detalhes suficientes numa configuração do Kickstart para que a máquina esteja na rede e executando a ferramenta CM de sua escolha. Tudo além da lógica mais básica de 'trazer o sistema para cima, colocá-lo na rede' deve ir na sua ferramenta CM, não na sua imagem inicial do sistema ou no Kickstart.

Como ponto de referência, eu atualmente administro cerca de 10.000 servidores unix.

    
por 13.03.2011 / 04:52
6

Você está se aproximando da perspectiva da máquina. Não se trata de gravar seus comandos. Para isso, o comando script deve receber o que você está pedindo. Mas a solução real para o dimensionamento é poder reproduzir rapidamente as configurações e gerenciar as alterações dentro dessas configurações. Ferramentas como Puppet e Chef vai deixar você fazer isso. As receitas são normalmente mantidas em um sistema de controle de revisão para que você tenha visibilidade total de cada alteração feita na configuração e possa retornar às configurações anteriores, se necessário.

Quando essas ferramentas são combinadas com inicialização PXE e preseed ou kickstart, você pode provisionar máquinas rapidamente para várias funções.

Não é uma má ideia usar esses tipos de ferramentas, mesmo quando você gerencia apenas algumas máquinas para o gerenciamento de alterações e o rastreamento que fornece.

    
por 13.03.2011 / 04:42