Amazon Linux vs. Ubuntu para Amazon EC2 [fechado]

56

Estou configurando meu primeiro site no Amazon EC2 e tentando decidir qual distribuição usar. Eu usei o Redhat e o CentOS no passado, mas não tenho preconceito em relação a nenhum sistema, só quero usar o que é melhor (também tive servidores parcialmente gerenciados no passado, por isso não fiz muito servidor) administração até recentemente). O site é apenas um aplicativo da Web escrito em PHP e MongoDB.

Eu gosto da ideia de ter um sistema operacional leve que é descrito para o Amazon Linux, mas me preocupo que ele possa sofrer compatibilidade / atualizações em comparação com o Ubuntu ou outras opções que têm equipes focadas exclusivamente em um sistema operacional de servidor. Algum conselho?

James Simpson
fonte

Respostas:

22

Eu estava em uma situação similar; servidor dedicado totalmente gerenciado, LAMP, CentOS. Então decidimos mudar para o EC2. Além disso, eu tinha muito pouca experiência em administração de sistemas ou linux. Eu tenho quase zero de experiência com o Ubuntu, então não posso falar com qual é o chamado SO melhor.

Tentei várias AMI pré-construídas com instalações mínimas de SO da Rightscale, Alestic, Scalr e Amazon. Acabei criando todas as minhas próprias AMIs sobre o Amazon Linux, primeiro usando a versão 2010.11.01, agora migrei todas as minhas AMIs personalizadas para o Amazon Linux versão 2011.03.01.

A decisão de ir com uma Amazon Linux AMI contra os outros provedores da AMI não foi fácil. Eu brinquei com e testei diferentes configurações por quase um mês antes de tomar minha decisão final. No final, como eu queria usar o CentOS, ele basicamente se resumia a uma coisa. Imaginei quem melhor sabia quais dependências relacionadas ao hardware precisavam ser incluídas no sistema operacional do que as pessoas que projetaram, criaram e mantêm o EC2. Nada contra Rightscale, Scalr ou Alestic.

Seis meses depois, embora eu tenha batido alguns solavancos na estrada, o Linux da Amazon tem sido bastante estável. No entanto, decidi compilar alguns dos softwares que usamos a partir da fonte (por exemplo, php 5.3, MySQL 5.5, etc) porque tive problemas com os pacotes pré-criados que a Amazon mantinha em seu repositório de pacotes.

AlanZ
fonte
44

O Amazon Linux é uma distribuição contínua, como o Fedora ou o Debian Testing (mais ou menos). Na minha opinião, não é adequado para qualquer produto de produção. Estou surpreso que mais pessoas não percebem isso. Isso significa que, se você lançou sua instância do Amazon Linux, digamos, 450 dias atrás e atualizou hoje, estará recebendo atualizações de uma versão totalmente diferente. Depois que uma nova versão é feita, você não tem tempo de buffer, começa imediatamente a receber atualizações da nova versão. Como você pode imaginar, isso pode gerar uma cascata de dependências e tem uma tendência a quebrar as coisas. Por esse motivo, é inerentemente incontrolável. Você não pode trabalhar algo assim em uma política de atualização sem que seja uma bagunça absoluta. Não use o Amazon Linux para nada sério.

O Ubuntu LTS é uma ótima opção, assim como o Debian Stable ou CentOS. Todos eles oferecem muitos anos de atualizações para o mesmo lançamento.

O Amazon Linux também não possui um sistema de rastreamento de bugs , os usuários devem postar perguntas nos Fóruns de desenvolvedores da AWS para registrar um bug em um pacote! Também não há como procurar bugs. Este deve ser um problema marcante para quase todos.

O Amazon Linux torna muito difícil recuperar pacotes de origem desnecessariamente.

figtrap
fonte
2
Isso é apenas um problema se você não tiver um ambiente de teste para fazer a atualização primeiro.
ceejayoz
3
Bem, você votou negativamente na única resposta correta aqui. Você não está pensando nisso. Primeiro, ele não oferece nenhum benefício em relação a outras distros; portanto, é inútil e contraproducente passar por um problema extra. Por que fazer um trabalho desnecessário para si mesmo? Em segundo lugar, você está demonstradamente errado aqui. Atualizar o 2013.9 com pacotes a partir de 2015.3 é absolutamente louco. Você quase não tem como testar todas as coisas que podem quebrar aqui. A maioria das pessoas se dá bem com isso (como nós), mas é impossível criar e manter uma política de segurança com uma distribuição contínua.
figtrap 12/02
2
Não sei por que o Amazon Linux é tão popular, aposto que a maioria não percebe que é uma distribuição de testes. Se você recomendasse o Fedora para um produto de produção, os administradores o ririam da sala. É exatamente isso que você está fazendo com o AMZN Linux. Não é uma questão de "se" essa decisão o morder no futuro, é uma questão de quando.
figtrap 12/02
3
Nenhum benefício? É divulgado pelo fornecedor da infraestrutura em que está sendo executado. Qualquer problema relacionado à AWS provavelmente será corrigido primeiro no Amazon Linux. Fiquei muito feliz com o Amazon Linux, assim como muitos outros, e não tivemos problemas com isso nas análises de segurança do cliente (incluindo instituições financeiras muito, muito, muito exigentes).
ceejayoz
39

Desde que essa pergunta foi escrita, a Amazon foi completamente renovada para o Amazon Linux AMI 2011.09 , com todo o bootstrap do CloudFormation e das ferramentas da Amazon.

Além disso, inclui Nginx e PHP-FPM nos yumrepositórios, se você estiver procurando rápido e leve.

Acompanhe os últimos lançamentos aqui: http://aws.amazon.com/amazon-linux-ami/latest-release-notes/

Também fique de olho nas atualizações de segurança : http://aws.amazon.com/amazon-linux-ami/security-bulletins/

Você geralmente terá menos com o que se preocupar, pois a AMI base é um servidor básico, com apenas as ferramentas necessárias para inicializar os serviços que você realmente precisa.

Terretta
fonte
4

Se você já tem alguma familiaridade com o RHEL / CentOS, eu ficaria com isso. Não existe a melhor distribuição para um servidor de aplicativos da web. Tudo se resume a quais ferramentas e convenções você está mais familiarizado.

dmourati
fonte
Bem, o ponto é que eu não estou vinculado a ninguém agora e não estou muito familiarizado com nenhum (mas gostaria de me familiarizar).
James Simpson
11
Em seguida, tente configurar um de cada e veja o que você mais gosta.
dmourati
5
O Amazon Linux é baseado no CentOS ( forums.aws.amazon.com/thread.jspa?messageID=245351 ). Então você tem uma corrida de cinco vias entre três tipos diferentes de RHEL (CentOS, Amazon e RHEL) e dois tipos diferentes de Ubuntu (11.04 e 10.04 LTS). Qualquer pessoa que tente lhe dizer que existe apenas uma boa opção nessa lista está tentando vender alguma coisa. Dito isto, para a grande maioria dos usos de servidor, eu consideraria seriamente apenas o CentOS, Amazon e Ubuntu Server 10.04 LTS, nessa ordem.
BMDan
4

Embora o Ubuntu tenha um desempenho melhor nesses benchmarks , os próprios testes contribuem para a vitória do Ubuntu, e as diferenças não parecem grandes de qualquer maneira.

Recentemente, escolhi o Amazon Linux em grande parte por causa das atualizações automáticas e também por causa do bug da Ubuntu AMI relatado por Steven e Ethan na versão Quora desta pergunta .

Daniel
fonte
Para discussão dos parâmetros de referência acima mencionados: phoronix.com/forums/…
Daniel
0

Se você quer se familiarizar rapidamente, e gosta de instalar coisas sem muito esforço, eu usaria o Ubuntu. Geralmente, em um servidor da Web ao vivo, você não deseja fazer esse tipo de coisa! As pessoas também argumentam que a escolha é entre RedHat, CentOS e Debian. Os técnicos do núcleo duro insistem que o ubuntu não é adequado para ambientes de servidores ativos porque nem tudo é totalmente seguro e testado.

Minha escolha seria no ubuntu, pois é muito menos doloroso, usei algumas distribuições diferentes para servidores da web, mas alterar as regras e coisas do firewall pode ser muito mais fácil no ubuntu.

A única outra coisa é que o ubuntu é um pouco mais pesado no uso de recursos, então o CentOS pode economizar alguns dólares por mês com base no método de precificação da amazon!

Abe Petrillo
fonte
0

No seu caso, a familiaridade com o CentOS / RHEL provavelmente supera qualquer outra consideração.

Os sistemas com os quais trabalho estão em grande parte no limite - novos softwares usando novas tecnologias e novas versões. Para esse uso, o Ubuntu é uma escolha melhor; Evito compilar pacotes a partir do código-fonte, e os pacotes do Ubuntu são bem mantidos (de maneira alguma perfeitos, é claro) e os repositórios padrão tendem a ter o que precisamos e, se não, existem repositórios prontamente disponíveis. Costumo manter uma revisão da mais recente, pois os problemas tendem a ser resolvidos após alguns meses.

Tom Harrison Jr
fonte