balanceada (atualidade vs. estabilidade) distribuição do servidor linux

5

Eu sou um usuário de longa data do Gentoo, tanto no desktop quanto no servidor. Como engenheiro de software, Eu amo sua flexibilidade e personalização (bem como o fato de que é uma versão inovadora). Mas para o meu novo servidor, quero ir com uma distribuição diferente. Principalmente porque a compilação de tudo seria um obstáculo em um servidor virtual, mas também devido ao fato de que o Gentoo é muito sangrento, onde às vezes uma atualização chega e deveria ter sido (mais) devidamente testada e atrasada.

(Nota: Eu implantei / mantive várias caixas do Gentoo com sucesso ao longo dos anos e, na maioria das vezes, as coisas foram muito fáceis e as caixas ficaram ótimas.)

Por isso, gostaria de pedir conselhos à comunidade com base na experiência (e não em opiniões) sobre quais distribuições se encaixariam melhor nos seguintes critérios:

Geral

  1. rolling release ou um caminho de atualização local (confiável) muito bom
  2. nem totalmente desatualizados nem absolutamente repositórios de pacotes de ponta
    • Python 2.7 / 3.3 (o sistema irá implementar principalmente aplicativos python / django)
    • um gcc recente (> = 4,7)
  3. bem mantida, boa comunidade
  4. flexível e personalizável
    • deve ser possível instalar diferentes versões gcc ou python lado a lado

Segurança

  1. repositórios de pacotes assinados (ou de outra forma protegidos)
  2. sinalizadores de compilador sane / secure (personalizados para segurança em vez de desempenho)
  3. atualizações de segurança oportunas e equipe de segurança dedicada / lista de anúncios

O que vem à mente imediatamente é CentOS e Debian , mas ambos estão desatualizados quando se trata de pacotes, infelizmente.

Estou de olho no Ubuntu , mas o software que eles suportam oficialmente (repositório principal / restrito) é bem pequeno em comparação ao universo ou a outras distribuições. Eu também não estou tão certo sobre o quão bem (com relação a correções de segurança) eles mantêm os pacotes oficiais e eu realmente não gosto de sua mentalidade corporativa (= fechada) quando se trata de tomar decisões que afetam seus usuários. Em uma nota lateral: Eu instalei recentemente 12.10 desktop para um amigo e não fiquei realmente impressionado.

O

ArchLinux chega perto do Gentoo , menos a compilação do pacote, imho. Eu não tentei por mim mesmo, mas o que imediatamente se destaca (negativamente) é a pequena equipe central e a equipe de segurança que está faltando. Parece não haver nenhuma lista de segurança dedicada e eles só recentemente fizeram a assinatura de pacotes integrada (e não tenho idéia se isso é obrigatório). Também existe um grande número de pacotes que são suportados apenas através do AUR ou de diferentes meios. Não há muito mais que eu possa dizer sobre isso.

OpenSuSE também é algo que estou de olho, mas a última vez que tentei o SuSE foi no kernel 1.x dias, honestamente (eu era um geek muito jovem então: P). Então, eu não sei quase nada sobre o estado atual disso.

O Fedora é honestamente também algo em que eu pensei. Geralmente é muito bem mantido e (se não estiver atrasado por vários meses) tem um bom calendário de lançamentos. Por outro lado, li muitas coisas ruins sobre o Fedora 18, especialmente sobre o caminho de atualização. Também é definitivamente muito sangramento.

Não há muito que eu possa adicionar a este post bastante extenso, exceto por um agradecimento por você ler isso e aproveitar o tempo. : -)

UPDATE @ 2024UTC

Eu sinto que preciso atualizar minha pergunta. Mesmo que eu concorde absolutamente com as respostas dadas, elas não são realmente o que eu estava procurando. Então, aqui estão alguns pontos para esclarecer minha situação:

  • Mantive servidores por mais de 10 anos, então (pelo menos por enquanto) não estou pensando em contratar alguém para me ajudar ou aliviar a carga.

  • Eu conheço meu caminho pelo Linux. Foi o meu sistema principal por mais de 15 anos. E como engenheiro de software e nerd, eu não trocaria isso pelo mundo. :)

  • Eu estava procurando conselhos baseados na experiência com as diferentes distribuições que mencionei. Eu sei que posso instalar todos aqueles em uma máquina virtual (e eu vou para aqueles na lista curta, eventualmente), mas mesmo que eu acho que a distribuição xy é ótima, ela não diz absolutamente nada sobre quão bem mantida ela é, por exemplo. Ou quão acidentado o caminho é uma vez que há um novo lançamento. Isso só o tempo pode dizer. E coisas assim, eu estava procurando. Experiência que um teste simples por uma semana não pode mostrar. Conselhos baseados em experiências que só acompanham o uso a longo prazo de uma distribuição.

Eu também tenho que salientar que a minha lista no post original acima, resume muito bem o que é importante para mim.

    
por khaos 12.02.2013 / 14:15

2 respostas

4

Falha do servidor não pode escolher um sistema operacional para você - você precisa fazer essa escolha por si mesmo.
Entre as muitas coisas que você deve considerar, mais ou menos em ordem, estão:

  1. Suporte para fornecedores de aplicativos
    O software que você precisa executar na distribuição em questão

  2. Base de conhecimentos interna (ou disponível regionalmente)
    Você tem sysadmins familiarizados com a distribuição em questão?
    Se não, você pode contratá-los localmente a um custo razoável?

  3. Suporte para fornecedores de sistema operacional
    A distribuição é bem suportada pelo seu fornecedor?
    Você consegue contratos de suporte adequados (a um custo razoável)?
    Existem canais de comunicação apropriados (segurança @, etc.)?

  4. Recursos de gerenciamento
    Como você pode manter um número de sistemas "em sincronia" com os mesmos pacotes?
    Como você pode gerenciar / atualizar vários sistemas sem tocar cada um manualmente?

Tenha em mente que "atual" e "estável" geralmente são requisitos mutuamente exclusivos:
Uma distribuição que mantenha seus pacotes no limite ou perto do limite terá, por necessidade, atualizações mais freqüentes, uma chance maior de enviar uma atualização que interrompa seu ambiente e o potencial de surgirem problemas de segurança.

Ao avaliar um fornecedor de sistemas operacionais, você deve procurar por versões de software "razoavelmente atuais" (ou seja, qualquer remessa do Apache 1.x deve estar pronta, assim como qualquer um que enviar o software com falhas de segurança conhecidas, a menos que seja aplicação de patches locais), mas, a menos que você tenha uma necessidade específica para a versão mais recente e melhor de algum pacote, você deverá se contentar com o que o seu fornecedor de SO enviar, desde que atenda às suas necessidades. Pergunte a si mesmo honestamente: "Isso afetará minhas operações do dia a dia se eu tiver Perl 5.12 em vez de 5.14?" E a menos que a resposta seja "Sim, eu preciso de 5.14 por causa de X ". não se preocupe com isso.

Lembre-se também de que você não é para usar a versão do sistema de qualquer programa - você sempre pode instalar e manter sua própria versão desde que esteja disposto a assumir essa responsabilidade. É aqui que as ferramentas de gerenciamento, como o Puppet, começam a ser úteis.

Se você não está familiarizado com as várias distribuições e seus conjuntos de recursos atuais, deve a si mesmo passar algumas horas com uma cópia do VirtualBox ou um software de virtualização de desktop semelhante e avaliar cada um depois de ter estreitado o campo. br> Determine qual distribuição você está mais confortável em manter, porque você pode administrá-la por vários anos.

    
por 12.02.2013 / 18:19
2

Já tive Gentoo, SuSE e Fedora em ambientes de produção ... Minha preferência geral pelo trabalho de produção é RHEL ou CentOS , mas cada uma das distribuições acima mencionadas foram necessárias em capacidade limitada para muito recursos específicos.

O Gentoo é difícil de escalar ... pode ser feito, mas não é uma distribuição "apenas funciona" . Você reconheceu isso.

O SuSE não tem o mindhare na minha região, então isso poderia ser um impedimento potencial para contratar e encontrar experiência.

O Fedora é bastante familiar para os engenheiros da Red Hat e do CentOS para ainda ser útil (com um grupo maior de talentos que pode administrá-lo). O problema lá é o caminho de atualização entre as versões ... Isso afeta o Fedora assim como RHEL / CentOS .

No entanto, se você estiver fazendo isso corretamente (o caminho DevOps ), você não estará executando atualizações completas no local. A implantação de sistemas e aplicativos deve ser automatizada e reproduzível até o ponto em que você é reimplantado em servidores reconstruídos, em vez de tentar atualizar o SO.

    
por 12.02.2013 / 15:11