De que tipo de plano de backup eu preciso para instalar módulos perl em produção?

1

Eu gerencio uma aplicação que tem sido montada e deixada molhada ao longo dos anos, mas ainda é esperado que continue a funcionar. O sistema operacional do servidor foi mantido, mas a instância do Perl não, porque não há ninguém atribuído à caixa que conhece o Perl. Preciso instalar um novo módulo para uma solicitação, mas minha administração está preocupada em saber como podemos fazer as alterações se houver um problema. Eu usei o CPAN para instalá-lo localmente na minha máquina, mas havia uma tonelada de dependências que também precisavam ser instaladas.

Infelizmente, não tenho um servidor de teste para começar, tenho que ir direto para a produção. (Eu não disse que esta era uma situação ideal)

O servidor é uma caixa do windows. É possível fazer uma cópia de backup do diretório Perl que eu possa sobrepor novamente se os novos módulos de atualização / instalação não forem bem?

Eu sei que isso é um pouco vago. Eu não sou um administrador de servidor, e sem um, estou desconfiado de instalar algo em uma caixa de produção sem um plano de backup.

    
por MitchelWB 01.10.2012 / 21:32

3 respostas

3

Primeira abordagem:

Use isso se o novo módulo e os novos forem usados em muitos scripts.

módulos Perl, afinal, apenas um monte de arquivos no diretório. Basta fazer o backup desse diretório (compactá-los e armazená-los fora da caixa) e, em seguida, instalar o módulo independentemente do método que você desejar.

Se algo der errado, restaure todo o diretório Perl.

Segundo:

Use isto se este novo módulo for usado apenas por um ou dois novos módulos.

Se este for um novo módulo e for usado por um novo aplicativo, você poderá instalá-lo e todas as suas dependências em um novo diretório, vamos chamá-lo de c: \ new_perl_module e o novo nome do módulo é fancy :: newthing;

O Perlbrew é a maneira moderna de instalar uma nova versão do perl e dos módulos em um diretório separado, mas o cpan também é capaz de fazer isso.

Em seguida, no script que precisa deste módulo, adicione essas linhas ao topo de seu script:

use lib 'c:\new_perl_module';
use fancy::newthing;

Desta forma, apenas este script irá usar este novo e os módulos atualizados. Se falhar, comente essas linhas e sua reversão está concluída. A versão instalada dos módulos não foi alterada.

    
por 02.10.2012 / 09:12
2

Faça um backup da sua árvore de diretórios Perl usando o que você quiser, até mesmo uma simples cópia de arquivo recursiva. Em seguida, instale o que você precisa. No caso extremamente improvável de acontecer que a forma Pera seja restaurada, restaure a árvore Perl do seu backup. Sério, simplesmente não fica mais fácil do que isso.

    
por 02.10.2012 / 11:57
0

Neste caso eu usaria Perlbrew para instalar um novo Perl no diretório home a partir do zero com todos os novos módulos do CPAN. Assim a instalação mais antiga não é tocada. E basicamente não é uma má ideia usar a versão mais recente de todos os módulos disponíveis. Se as coisas estragarem, também não há problema. É tudo salvo em casa e Perlbrew cuida da limpeza também.

Depois disso, eu teria uma conversa séria com a gerência. Se eles querem que você faça mágica, por que você não pede para eles fazerem o mesmo por você? Se uma falha é um grande problema, eles devem fazer um truque de mágica, para que você tenha um ambiente de teste.

    
por 02.10.2012 / 00:36