Se você fizer rsync de /var/discourse entre droplets no mesmo data center, seu tempo de inatividade pode ser mínimo e seu fallback é apenas uma reversão de DNS.
O novo VPS só precisa de docker e potencialmente swap.
Se você fizer rsync de /var/discourse entre droplets no mesmo data center, seu tempo de inatividade pode ser mínimo e seu fallback é apenas uma reversão de DNS.
O novo VPS só precisa de docker e potencialmente swap.
Olá,
Eu também recebo este erro ao executar o Red Hat Enterprise Linux 7, executando o kernel 3.10.0. O RHEL8 não executa muito mais novo.
O mesmo aqui, 3.1.0.beta1 rodando bem no CentOS7 (3.10.0-1160.76.1.el7.x86_64)
Obviamente os kernels da distro recebem muitos backports. Verificar a versão do kernel vanilla dessa forma tem causado problemas em outros projetos também. Existe uma maneira de contornar essa verificação pela linha de comando?
—ATUALIZAÇÃO—
Editei o script do launcher para contornar a verificação - várias instalações do CentOS7 foram atualizadas sem problemas.
Esta questão vai ter mais atenção? Os requisitos do sistema não exigem nenhuma versão de kernel e o Centos 7/RHEL 7 ainda não está em EOL (fim de vida). O Docker também não requer um kernel mais recente. Não acho que contornar manualmente a verificação seja a solução adequada a longo prazo.
Eu estava prestes a atualizar um fórum antigo e recebi o mesmo erro. O Centos7 ainda não atingiu o EOL, você poderia encontrar uma solução alternativa para o Ubuntu 14.04?
Se você acredita que está executando o kernel mais atualizado do seu fornecedor de sistema operacional (com correções retroportadas), talvez queira tentar ignorar a verificação. Eu o faria! Esta é a issue onde a verificação foi adicionada. Acredito que você possa simplesmente remover ou comentar o comando exit no seu script ./launcher, neste parágrafo:
# Pelo menos versão mínima
if compare_version "${kernel_min_version}" "${test}"; then
echo "ERRO: Versão do kernel ${test} não suportada, por favor, atualize para pelo menos ${kernel_min_version}"
exit 1
fi
Se, como resultado, a atualização ainda falhar, você precisará encontrar uma maneira de executar seu Discourse em um kernel mais recente.
(É bem possível que este conselho seja considerado fora do tópico, mas acho que o que aconteceu é que temos uma verificação para um número de versão em vez de uma verificação para uma facilidade (urandom), e essa abordagem pode gerar falsos positivos.)
Estou enfrentando esse problema agora e nosso fórum está fora do ar por causa disso. Como posso editar o script do launcher e comentar a verificação do kernel (pelo menos até que o Centos7 receba esta atualização ou tentemos migrar o fórum para outro servidor)?
ATUALIZAÇÃO:
Consegui (por tentativa e erro) atualizar o Launcher e, em vez de comentar o kernel, apenas defini uma versão inferior como requisito. Funcionou bem.
Talvez esta não seja uma boa solução a longo prazo, mas nossa empresa de hospedagem já nos informou que o Centos7 não receberá a versão 4.4 do kernel… alguém pode explicar o que isso significa em termos práticos?
Parece que o Centos 7 receberá atualizações até meados de 2024.
Em algum momento - possivelmente antes do fim da vida útil (EOL) - o Discourse, que está sempre avançando, precisará de algo que o Centos 7 não tem, e você precisará atualizar seu sistema operacional (ou migrar para uma nova instância com uma versão de sistema operacional adequada). Parece que esse ponto ainda não foi alcançado.
Como sempre, antes de tentar atualizar o Discourse, agora ou no futuro, faça um backup dos seus fóruns e guarde uma cópia segura desse backup, bem como uma cópia segura do seu arquivo app.yml.
Qual kernel você está executando que está funcionando com a reconstrução que você acabou de fazer?
Se for algo inferior a 4.4 e estiver funcionando, parece que o @falco pode precisar reduzir a versão exigida novamente.
(Como as distribuições terão backports de recursos e correções de kernels posteriores, a verificação da versão do kernel é um instrumento muito rudimentar. Entendo a ideia de reduzir a carga de suporte, mas também há um efeito oposto quando a verificação de segurança tem um falso positivo. E à medida que o Discourse se torna mais popular, esse problema aumenta. É muito melhor verificar um recurso do que uma versão.)
Nosso sistema está executando o seguinte:
Atualizando isto:\nEmbora nosso fórum esteja funcionando agora, vemos este erro cada vez com mais frequência:\n\u003e # Oops\n\u003e \n\u003e O software que alimenta este fórum de discussão encontrou um problema inesperado. Pedimos desculpas pelo inconveniente.\n\u003e \n\u003e Informações detalhadas sobre o erro foram registradas e uma notificação automática gerada. Daremos uma olhada nisso.\n\u003e \n\u003e Nenhuma ação adicional é necessária. No entanto, se a condição de erro persistir, você pode fornecer detalhes adicionais, incluindo etapas para reproduzir o erro, postando um tópico de discussão na categoria de feedback do site.\n\nIsso pode estar relacionado de alguma forma ao problema com os requisitos mínimos do kernel? Essa "instabilidade" (vamos chamá-la assim) tem sido mais perceptível nos últimos dias/semanas. Parece ir e vir, às vezes o fórum está ok e às vezes não.\n\nEDIT: Deixe para lá, acho que isso estava relacionado a um problema de postgresql (ter muitos processos em andamento associados a imagens sem um contêiner, algo que uma limpeza do launcher resolveu).
Muito melhor verificar um recurso do que uma versão
Eu tenderia a concordar com isso. Você acha que esta é uma boa ideia, @Falco?
Sim, PR bem-vindo para detectar corretamente.
Olá Falco,
Encontrei este problema ao tentar atualizar o Discourse de 3.1.0.beta2 para 3.1.0.beta4.
Isso parecia uma atualização menor, mas por causa da verificação do kernel, a atualização foi bem mais complexa no CentOS7. Talvez da próxima vez um número de versão diferente possa refletir melhor o impacto relativamente alto das mudanças.
Lendo a discussão, não consigo realmente dizer qual verificação de recurso é realmente necessária, talvez se você puder elaborar sobre isso, alguém seja capaz de enviar um PR.