Qual é a melhor prática para comunicação entre instâncias do Amazon EC2?

41

Estou configurando instâncias do Amazon EC2 para um próximo projeto. São todas micro instâncias, rodando o Ubuntu Server 64bit. Aqui está o que eu configurei até agora:

  • Servidor da Web - Apache
  • Servidor de banco de dados - MySQL
  • Servidor de desenvolvimento - Apache & MySQL
  • Servidor de arquivos - SVN & Bacula (os backups são feitos nos buckets do S3)

Atualmente, existe apenas um servidor Web, mas eventualmente haverá mais.

My first question is, what is the best, most secure way for Amazon EC2 instances to communicate between each other? Currently I'm using SSH, is that the best method?

De acordo com a Amazon, as instâncias que se comunicam entre si usando seus endereços Elastic IP serão cobradas por taxas de transferência de dados. No entanto, as instâncias que se comunicam usando seus endereços IP privados podem fazê-lo gratuitamente. Infelizmente, parece que os IPs privados mudam se a instância é interrompida e reiniciada.

So that's my second question, how do you make use of Amazon instances' Private IPs if they're not static?

Eu sei que as instâncias provavelmente não serão interrompidas e iniciadas com muita frequência, mas ainda assim, se o endereço IP estiver em vários arquivos de configuração, seria um saco ter que passar por todas elas e alterá-las.

Estou preocupado principalmente com os servidores Web, que precisarão de acesso ao servidor de banco de dados e ao servidor de arquivos, que precisarão de acesso a todas as instâncias ao realizar backups.

Nota: eu nunca usei o Bacula antes e ainda não o configurei, mas estou assumindo que ele precisará dos endereços IP dos clientes para fazer o backup deles.

    
por ks78 27.01.2011 / 16:08

3 respostas

29

Confira o artigo de Eric Hammond, explicando como usar endereços IP elásticos, mesmo a partir do EC2. Este método NÃO resulta em nenhuma cobrança de largura de banda porque a resolução do endereço IP Elástico (por nome) de dentro do EC2 retorna o endereço IP Privado.

link

Para mais opções, tenho um artigo examinando algumas alternativas:

link

    
por 28.01.2011 / 00:18
6

Implemente sua instância do EC2 em uma Nuvem privada virtual (VPC) da AWS. Ao configurar seu VPC, você atribuirá o CIDR a todas as instâncias do EC2 no VPC e o IP interno será estático.

    
por 05.09.2013 / 15:21
2
  • Método de comunicação mais seguro

O SSH é um método muito bom para transferir dados entre servidores diferentes, mas se você está procurando algo como uma conexão permanente (para um banco de dados, por exemplo) você pode usar qualquer tipo de software de tunelamento criptografado como stunnel

  • IPs privados não estáticos

Como não há como ter IPs estáticos privados, é possível usar algum tipo de implantação automática de servidor para isso, há várias ferramentas como mcollective, capistrano ou func que permitem registrar sua nova instância em um servidor central designado e gerar ações em várias máquinas com base nisso

    
por 27.01.2011 / 16:12