Sobre ir ao vivo: servidor virtual dedicado ou nuvem?

1

Estou prestes a lançar a minha empresa de startups e iremos ao ar daqui a algumas semanas. Temos restrições orçamentárias muito restritas, uma vez que estamos inicializando - e preferimos não levantar capital externo.

Eu não posso usar hospedagem compartilhada porque eu preciso de mais controle da máquina servidor (por razões técnicas - por exemplo, usando extensões proprietárias para PHP, Apache e também na camada de banco de dados) - mas quero controlar custos e não quero ir completamente rota do servidor privado, até que tenhamos determinado o tamanho do mercado, etc. Assim, as únicas alternativas reais do AFAIK são entre o servidor virtual e a nuvem.

No momento, os serviços na nuvem parecem um pouco "vagos" para mim. Meu entendimento é que eles permitem que uma entidade terceirize sua infraestrutura de TI, que na minha opinião (pelo menos) é indistinguível do que um provedor de hospedagem fornece (pelo menos do ponto de vista funcional) - gostaria de buscar algum esclarecimento sobre exatamente qual é a diferença entre os dois.

Voltando à minha pergunta original, meus requisitos são:

  1. Infraestrutura de TI que pode escalar com o crescimento
  2. Capacidade de controlar a máquina (por exemplo, para instalar nossas bibliotecas desenvolvidas internamente, etc.)
  3. Software de backup flexível e abrangente o suficiente (mas simples de usar), que permite que uma estratégia de backup (protegida) seja implementada. Nesta questão, sempre me perguntei onde os dados de backup reais foram armazenados (uma vez que as máquinas físicas são remotas, e uma não pode ter acesso a nenhuma fita real, etc.). Eu também gostaria de alguns conselhos e recomendações nesta área. Em relação ao tamanho dos dados, espero que o conjunto de dados esteja aumentando em alguns megabytes de dados (originalmente, digamos 10Mb, em um período de aproximadamente um ano, possivelmente 50Mb) todos os dias.

Como um aparte, eu decidi implantar em um servidor Debian (a maioria das minhas bibliotecas adicionais, etc, foram compiladas e construídas em uma máquina Debian).

Ciente de todos os itens acima, eu gostaria de alguns conselhos (e raciocínio) sobre qual caminho seguir. Também gostaria de alguns conselhos sobre qual software de backup usar, de pessoas que percorrem um caminho semelhante.

    
por user35402 07.05.2010 / 09:15

4 respostas

6

Os serviços "na nuvem" são um pouco como a web 2.0 - você pega uma ideia que não é bem compreendida, mas também não é nova, e você dá um nome atraente e, de repente, todo mundo está falando sobre isso.

Os serviços em nuvem são baseados na ideia de "data center virtualizado" que nos foi vendida há 10 anos.

A hospedagem na nuvem (normalmente) é simplesmente um ambiente de servidor virtual privado, exceto com o entendimento de que você pode querer provisionar rapidamente hardware adicional a qualquer momento. O Amazon EC2, por exemplo, simplesmente fornece uma fatia de um servidor usando Xen (embora, às vezes, seja uma fatia bem pesada se você estiver disposto a pagar por isso ) que você carrega com uma imagem de VM armazenada no S3.

A configuração inicial pode ser um pouco assustadora na primeira vez, mas, quando estiver pronto, você pode iniciar qualquer número de instâncias idênticas em minutos a partir do seu navegador. Outro clique e o servidor desaparece. Custa o mesmo para executar 5 instância por 1 hora ou executar 1 instância por 5 horas. Isso é o que eles querem dizer com "elástico". Você pode ver como isso tem algumas implicações significativas na área de dimensionamento. Você paga apenas pelo hardware que você usa e somente quando você o usa. Se você quiser, por exemplo, pode executar 5 servidores durante o horário comercial e apenas 1 à noite, e eles não lhe causarão nenhum pesar por constantemente adicionar e remover hardware.

Lembre-se de que os serviços em nuvem não são necessários para escalar.

Você dimensiona um serviço de nuvem adicionando novo hardware. Você dimensiona um serviço dedicado adicionando novo hardware. O mecanismo envolvido, os passos que você toma, o planejamento que você tem que fazer antes do tempo para paralelizar seu fluxo de trabalho - é tudo a mesma coisa. Os serviços em nuvem permitem escalar e, em seguida, reduzir a escala, de forma muito rápida e barata, colocando hardware adicional onde você precisar. Se você administra um negócio do tamanho da Amazon, esse tipo de coisa é realmente o único caminho a percorrer. Eles estão executando uma rede na nuvem muito antes de começarem a vendê-la como serviço.

O desempenho em servidores virtuais privados pode ser incoerente se você não controlar a caixa inteira.

Se você compartilhar o hardware, compartilhará os recursos. Se você compartilhar com você mesmo, isso não é grande coisa. Se você compartilha com alguém que está tentando executar seu próprio mecanismo de pesquisa, talvez você sinta que está recebendo menos do que pagou.

Alguns provedores de nuvem "simplificam" o processo, oferecendo menos controle.

O dimensionamento adequado com a demanda não é, na verdade, um problema simples. Quero dizer, é simples se você sabe como fazer, mas se você nunca fez isso, provavelmente não sabe como. Alguns dos lugares menores tentam se diferenciar assumindo parte dessa complexidade. Você pode não querer isso, ou pode ser muito útil.

A confiabilidade é importante

Todos os servidores virtuais são executados no hardware normal do servidor. Se o computador subjacente pegar fogo, os servidores virtuais morrem com a mesma rapidez. No entanto, a maioria dos provedores de nuvem também fornece uma SAN para seu armazenamento permanente. Vale a pena ressaltar que, se gerenciado adequadamente, uma SAN é consideravelmente mais confiável do que a unidade de disco rígido de servidor único e pode ser rapidamente atribuída a um servidor diferente caso você tenha problemas com sua máquina atual. Também é muito mais caro por byte.

E assim ...

Dedicado é o mais simples e definitivamente dá a você mais recursos para o dinheiro. É também o menos flexível. Os VPS tradicionais oferecem menos, mas devem custar menos.

E para backup: não há nada de errado com o rsync - é a base para a maioria das ferramentas de backup. Adicione links para snapshots e você terá uma solução real.

    
por 07.05.2010 / 11:50
1

Suponho que você esteja se referindo aos serviços de nuvem da Amazon (EC2, S3, EBS etc.) ou semelhante, pois a nuvem é um termo muito vago que pode ser praticamente qualquer serviço na Internet.

Em relação à Amazon em relação a um padrão VPS, as grandes diferenças são:

Preços modulares
Com a Amazon seu preço é muito sobre o uso, o grande é a cobrança por hora de ter a máquina ligada, mas também divide o armazenamento alocado, a transferência de dados, IPs estáticos, etc. A maioria dos VPS é vendida como um preço mensal. Eles especificam que tipo de máquina você recebe, quantidade de armazenamento, largura de banda incluída, etc. por um preço mensal estático. Isso é ótimo para antecipar custos, mas tem o potencial de pagar por mais do que você realmente faz uso.

Um benefício colateral da maneira como eles separaram o preço, é a flexibilidade de configuração também. Alguns aplicativos precisam de toneladas de armazenamento de dados, mas muito pouco poder de processamento, outros são exatamente o oposto. Você não tem que ir para um pacote maior para cobrir o requisito e pagar por um monte de extras que você não precisa.

Hardware on the fly
A Amazon criou uma API e ferramentas para controlar os vários serviços que eles possuem, para que você possa controlá-lo de forma programática. Se você projetar seu aplicativo adequadamente para dimensionamento horizontal (gerenciamento de sessão compartilhada, balanceadores de carga, etc), poderá executar na caixa mínima como padrão, com base na hora do dia, carga do sistema, usuários simultâneos, etc.

Esta é uma ótima maneira de economizar custos de hospedagem, dependendo dos padrões de uso do seu público. Por exemplo, digamos que sua carga é de 10h-16h, M-F, 6 horas por dia durante a semana e o restante do tempo é um acesso muito aleatório.

Se você precisa de uma caixa grande para lidar com essas 6 horas e está funcionando 24 horas por dia, 7 dias por semana, gastaria US $ 0,34 / hora * 24 horas * 30 dias = cerca de US $ 245 / mês (com alguns custos adicionais de armazenamento, largura de banda, etc, mas o horário é a maior parte do custo).

Em vez disso, se você administrasse uma pequena caixa 24 horas por dia, 7 dias por semana e tivesse uma grande para ajudar durante essas 6 horas, estaria falando $ 0,085 / hora pequena * 24 horas * 30 = $ 60 mais $ 0,34 / hora grande * 6 horas * 20 = US $ 40 por um total de US $ 100, menos da metade da execução da caixa grande 24/7.

Meio ambiente
Eles são todos VPS (a Amazon usa o Xen como seu hipervisor). A Amazon acaba de criar essa interface para controlar os serviços, executar coisas dinamicamente, serviços modulares, etc., mas as máquinas ainda são apenas máquinas virtuais. Não há diferença para você quanto à configuração do apache, manutenção de patches, etc. Seja VPS, Amazon, nuvem da Rackspace, etc, você ainda estará SSH na caixa e estará em um ambiente linux completo.

    
por 07.05.2010 / 11:10
0

1: precisa de nuvem.

2: precisa de máquina física ou máquina virtual

3: pode ser executado com qualquer coisa. divirta-se pagando por isso, exceto com um servidor físico dedicado separado.

Dependendo da sua necessidade, eu pegaria uma máquina poderosa e executaria a virutalização nela. Permite que você tenha um layout muito grande (como o vm para desenvolvimento, etc.) e os custos são menores que a nuvem. Mais tarde você sempre pode alternar.

    
por 07.05.2010 / 09:32
0

Serviços de nuvem são apenas um nome moderno para o que muitas empresas vêm fornecendo há vários anos. Eles tentam abstrair os serviços que fornecem para que você não sinta que está lidando com infraestrutura física. Por exemplo, o Elastic Compute Cloud da EC2 da Amazon permite inicializar vários servidores virtuais privados por meio de sua API, em vez de solicitar um novo VPS por meio de um vendedor. Eles também cobram por hora em vez de um contrato mensal ou anual. Isso permite que você gerencie seus recursos programaticamente de maneira muito flexível. Por exemplo, você poderia comissionar mais servidores quando a carga estiver alta ou quando precisar de um servidor de testes ou inicializar 100 servidores quando precisar processar números e desativá-los no mesmo dia para gerenciar os custos. O armazenamento em nuvem (por exemplo, o Amazon S3) faz o mesmo para armazenamento. A flexibilidade de lidar com a infraestrutura como se fosse um recurso consumível é o que torna a 'nuvem' tão atraente.

Para responder às suas perguntas:

  1. Seria mais fácil começar a usar o Amazon EC2 ou Rackspace Cloud Servers , porque se você puder configurar seu aplicativo para ser flexível, usar um provedor de VPS que possa comissionar mais ou mais servidores e cobrar apenas pelo que você usa, torna mais fácil controle seu custo e ainda forneça um bom serviço quando sua popularidade crescer. Se você não precisa desse tipo de flexibilidade, você pode tentar o Slicehost , um hoster VPS regular.
  2. Eu definitivamente usaria uma máquina virtual para sua flexibilidade, conforme descrito acima. Uma máquina física seria recomendada por você ter altas necessidades de E / S ou não aceitar a pequena sobrecarga de uma máquina virtual.
  3. A maioria dos provedores pode fornecer algum tipo de backup para seus servidores. Você também pode fornecer seu próprio backup externo. Eu pessoalmente gosto muito de Jungle Disk Server Edition , que é acessível, seguro e usa o Amazon S3 ou Rackspace Cloudfiles como provedores de armazenamento. Na verdade, você paga apenas pelo que usa, portanto, seu custo aumentará somente quando o conjunto de dados ou período de retenção aumentar. Há muitas ofertas, por isso não deixe de comprar e testar suas reivindicações. Os backups são úteis somente quando comprovados.
por 07.05.2010 / 10:59