É recomendado rodar as atualizações do Ubuntu Server em um servidor live?

6

Quando eu ssh em um servidor Ubuntu que está executando um site ao vivo, vejo as seguintes mensagens:

2 packages can be updated.
2 updates are security updates.

Nesse momento, posso atualizar e atualizar com o seguinte comando:

sudo apt-get update
sudo apt-get upgrade

É recomendado executar o acima em um servidor ativo com aplicativos de missão crítica?

    
por Thierry Lam 12.04.2011 / 23:34

6 respostas

5

Resposta curta é não.

É melhor escolher e testar cuidadosamente as atualizações antes de aplicá-las em seu ambiente de produção. Antes de executar e atualizar as máquinas de produção, elas primeiro são aplicadas em um ambiente de controle de qualidade e passam por um conjunto de testes para garantir que funcionem conforme o esperado.

    
por 12.04.2011 / 23:44
2

Se você executar apt-get --just-print upgrade e apt-get --just-print update , ele mostrará os pacotes.
Eu vejo que você está usando 10.04. Tudo o que eles colocam nesses repositórios é testado profundamente, então você deve estar seguro.

    
por 12.04.2011 / 23:47
1

Na minha experiência, nenhum dos meus serviços foi interrompido por um apt-get update / apt-get upgrade . No entanto, se for de missão crítica, você deve tomar precauções e avisar os usuários sobre manutenção iminente e agendá-la em um momento de menor interrupção. Nada pode dar errado, mas faça isso se você quiser estar seguro.

Além disso, ouça o sreimer abaixo (ou acima), se for realmente crítico para a missão, defintivamente teste-o em um sistema que não seja de produção primeiro.

    
por 12.04.2011 / 23:45
1

É por isso que temos um servidor de teste com o mesmo ambiente e os mesmos aplicativos, para que possamos ver o que acontece quando atualizamos e garantir que tudo continuará funcionando.

Sem isso, você precisará estar apto a lhe dizer quais pacotes deseja atualizar e ver se esses pacotes são usados por seus aplicativos de missão crítica. Se este for um servidor da web e ele desejar atualizar o apache, será necessário esperar no máximo um ou dois minutos de inatividade enquanto ele pára o servidor, atualiza os arquivos e os inicia novamente. Algumas bibliotecas requerem a reinicialização de alguns servidores, outras não.

    
por 12.04.2011 / 23:48
1

Em geral, é sempre bom ter um ambiente de teste. Mesmo com pequenos projetos, sempre que possível eu tento manter uma cópia do meu ambiente em algo como uma imagem do EC2, para que eu possa quebrar as coisas sem temer pela produção.

Ausente de um ambiente de teste: executando o apt-get - a atualização com apenas a impressão deve mostrar a lista. Atualize apenas os pacotes que você não espera tocar em seu aplicativo.

    
por 12.04.2011 / 23:48
0

Eu tive alguns problemas fazendo aptitude safe-upgrade em um servidor ativo (não crítico). Às vezes, quando pacotes são atualizados como postgesql ou mysql ou outros serviços, eles são reiniciados. Se os aplicativos que estão usando esses serviços não reagirem bem ao banco de dados desaparecerem, você poderá ter problemas.

Especificamente, descobri que meus aplicativos do rails 3 usando sequel como o ORM e postgresql como o DB travam quando o postgresql é reiniciado sem parar os trilhos primeiro. É um bug, mas acontece.

    
por 13.04.2011 / 08:06