Devo manter minhas configurações de implantação em um repositório separado?

5

Estou aprendendo o Salt Stack para implantar meu aplicativo Python em vários estágios de produção na AWS. Agora eu tenho todo o meu código-fonte e estados de sal em um grande repositório.

Há alguma consideração prática ou de segurança para manter os arquivos do estado minion na minha fonte? Ou devo dividi-los e por quê?

Se eu mover meus Arquivos de Estado para um repositório de estados de sal separado, onde devo manter meus arquivos de configuração master e minion ou não pertencem ao controle de versão?

    
por Petrus Theron 02.08.2013 / 11:05

1 resposta

1

Pete,

Portanto, há algumas coisas para se ter com suas configurações e código juntos. Vamos dizer que você implanta usando git isso significa que todos os seus arquivos de código e configuração são enviados para cada servidor. Se o seu git não estiver configurado para readonly, alguém que entrar em uma de suas máquinas poderá editar as configurações com um pequeno exploit que os ajudará a acessar todas as suas máquinas.

Eu tenho conhecido pessoas que colocam lá chaves ssh lá implantar repo para que eles possam facilmente criar um novo servidor de sal ou fantoche ou o que eles usam. Novamente, o problema de implantar tanto o seu aplicativo quanto as configurações em cada servidor significaria que você deu as chaves ao reino novamente, isso depende do fato de você fazer isso em todos os seus servidores e a chave ssh também estar lá.

Eu tenho sistemas de implantação de instalação onde eu uso um usuário readonly git para implantar código e manter minhas configurações longe de todos os meus servidores, dando a cada servidor os arquivos de configuração que ele precisa. Cada servidor tem a chave privada para a conta readonly git. Eu também estive em uma configuração que em cada implantação eu automaticamente roated a chave pública de todos os meus servidores.

    
por 05.08.2013 / 12:01