Quais são as melhores práticas ou armadilhas ao gerenciar a implantação de aplicativos da Web usando o gerenciamento de pacotes do SO (deb, rpm)?

1

Eu ouvi sobre isso em uma palestra no fim de semana e pareceu uma ótima ideia por algumas razões que eu posso pensar:

  • garante que as dependências sejam atendidas e não quebradas (por exemplo, o aplicativo da web requer uma versão específica do imagemagick)
  • ajuda a criar rapidamente novos servidores
  • consistência com pacotes do os e facilidade de implantação
  • (potencialmente) mantendo as configurações atualizadas com o código para que as alterações nas configurações do apache, php etc. sejam mantidas atualizadas com as dependências de código. Eu posso ver que esta é uma área cinza, já que está entrando no gerenciamento de configuração.
por er1234 03.05.2011 / 17:03

1 resposta

1

Não há nada de errado com isso. Certamente é melhor que o padrão. Muitas pessoas simplesmente fazem o check-out do controle de versão em cada servidor. No entanto, não é tão bom quanto os programas feitos para implantações na web. Pessoalmente, gosto de usar o chef com o recurso de implementação .

O recurso de deploy faz um checkout do svn ou git para um novo diretório, symlinks config files, e então muda o symlink que seu webserver usava para apontar para lá. Isso significa que, se você precisar, a reversão é tão simples quanto alterar uma receita. Então o chef apenas muda um symlink.

Realmente é tudo subjetivo. Chef tem uma curva de aprendizado, mas simplifica muitas tarefas administrativas. Ele também facilita a "ativação de servidores", o gerenciamento de dependências e a atualização dos arquivos de configuração. Ele permite combinar o gerenciamento de pacotes, o gerenciamento de configurações e o gerenciamento do sistema em um só lugar.

EDITAR: Adicionadas mais informações sobre o chef

    
por 03.05.2011 / 17:47