Usando uma ferramenta de gerenciamento de configuração para configurar nós sem ssh

1

Gostaria de gerenciar a configuração de vários dispositivos que executam o Linux embarcado.

Existe um servidor web no meu ambiente que possui uma interface SOAP que eu posso usar para obter / configurar todos os parâmetros de cada um dos dispositivos que eu quero configurar. O servidor da web fala com os dispositivos Linux embarcados enviando mensagens SNMP, essa é a única opção que eu tenho para controlá-los.

Gostaria de usar uma ferramenta de gerenciamento de configuração para definir cada dispositivo incorporado e usar o servidor SOAP para confiá-los, mas não consigo encontrar nenhum exemplo com o Puppet / Ansible para o que quero fazer (mas talvez eu tenha pesquisado os termos errados).

O dispositivo Puppet soa como o que eu estou tentando fazer, parece ser usado para configurar alguns tipos de equipamentos de rede, mas ele ainda fala com os nós do dispositivo usando comandos ssh e runs em um shell no nó, em vez de usando um proxy intermediário para obter / definir parâmetros. Eu espero que eu tenha que escrever um provedor personalizado (ou o equivalente para uma ferramenta CM não-Puppet), existe uma maneira de implementar isso em qualquer ferramenta de gerenciamento de configuração? Tenho certeza que deve haver uma maneira razoável de fazer isso, mas estou lutando para encontrar exemplos desse tipo de cenário.

    
por greggyd4eva 26.07.2014 / 18:00

2 respostas

0

Meu primeiro pensamento seria esse ... Seu servidor Central, que permite definir todas as configurações, pode fazer com que as solicitações de saída de cada dispositivo gravem em um formato que seja facilmente descoberto por cada nó individual.

Eu uso CFEngine, é muito leve, rápido e funciona com praticamente qualquer coisa. Cada nó faz check-in com um servidor de política central, por padrão, a cada cinco minutos, mas é claro que você pode ajustar o cronograma como achar melhor. A política poderia ter algo para baixar nos dias que foram gerados pelo servidor central. (Aquele que costumava fazer chamadas SNMP) Se houver novos dados, o agente cfengine poderia processar esses dados e fazer os ajustes necessários.

    
por 27.07.2014 / 16:39
0

Ansible-Pull

Supondo que seus dispositivos que executam o Linux embarcado possam executar o Python e o Ansible, uma solução seria usar o Ansible-pull script para que eles verifiquem seu playbook Ansible a partir de um local central e façam com que os dispositivos executem ansiosamente-playbooks localmente contra ele. Desta forma você não precisa poder acessar os dispositivos via ssh.

Você pode chamar ansible-pull de um crontab e / ou executá-lo após a inicialização dos dispositivos.

Consulte a documentação da Ansible para obter mais informações.

    
por 27.08.2014 / 18:54