Se você precisar que isso seja feito de forma rápida e profissional, você precisará colocar um pouco desses $ 30k para alguém que saiba o que está fazendo. Embora você possa aprender essas coisas, as chances são de que você não aprenda rápido o suficiente para evitar alienar uma boa parte da sua base de clientes.
As pessoas irão recomendar o EC2 e todos os tipos de configurações de nuvem, e também são uma opção, mas eu sou da velha escola e posso confiar na planta física em que posso confiar (e chutar - ou pelo menos visualizar chutes - se a frustração me sobrecarrega). Se você conseguir alguém para ajudá-lo (novamente, altamente recomendado) você quase certamente acabará trabalhando com o que eles sabem melhor - e não há nada de errado com isso. Não há nada inerentemente "errado" com qualquer solução, apenas compensações.
Para o assunto em questão: eu não estaria inclinado a comprar servidores diretamente. Alugá-los, enquanto um custo maior a longo prazo, é mais barato a curto prazo, o que ajuda a manter o fluxo de caixa positivo. Também é mais fácil adicionar um novo aqui e ali, e é (geralmente) o problema do provedor lidar com peças de reposição e reparos (certifique-se disso, no entanto). Eventualmente, torna-se mais rentável para fazer você mesmo (seu próprio hardware, racks, rede, etc), mas esse tempo está muito longe.
Quanto ao hardware específico, você deve obter a maior máquina que você pode pagar (dentro do razoável) para o seu servidor de banco de dados. Essas coisas são difíceis de escalar bem, então jogar hardware nele é uma excelente estratégia. Para servidores Web, servidores de utilitários, etc., ative a luxúria brilhante e segmente o preço / desempenho "knee" (o ponto mais econômico na curva de preço / desempenho) e certifique-se de que seu aplicativo pode ser dimensionado horizontalmente em vários servidores para tirar proveito disso economia.
Ao falar com um provedor, verifique se ele pode provisionar rapidamente um substituto para qualquer servidor que falhou e verificar se o SLA está sendo restaurado. É muito raro que eles cobrem você por qualquer coisa como o custo real do tempo de inatividade. Não se esqueça de orçamento para redundância e backups. Não adianta construir seu serviço apenas para que ele se desintegre quando seu servidor DB ficar inativo por dois dias e todos os seus clientes o abandonarem.