J'ai configuré des instances Amazon EC2 pour un projet à venir. Ce sont toutes des micro-instances fonctionnant sous Ubuntu Server 64bit. Voici ce que j'ai configuré jusqu'à présent:
- Serveur Web - Apache
- Serveur de base de données - MySQL
- Serveur de développement - Apache et MySQL
- Serveur de fichiers - SVN et Bacula (les sauvegardes sont effectuées dans des compartiments S3)
Actuellement, il n'y a qu'un seul serveur Web, mais il y en aura éventuellement d'autres.
Ma première question est la suivante: quel est le moyen le plus sûr et le plus sûr pour les instances Amazon EC2 de communiquer entre elles? Actuellement, j'utilise SSH, est-ce la meilleure méthode?
Selon Amazon, les instances qui communiquent entre elles en utilisant leurs adresses IP Elastic se verront facturer des frais de transfert de données. Cependant, les instances qui communiquent en utilisant leurs adresses IP privées peuvent le faire gratuitement. Malheureusement, il semble que les IP privées changent si l'instance est arrêtée et redémarrée.
C'est donc ma deuxième question: comment utiliser les adresses IP privées des instances Amazon si elles ne sont pas statiques?
Je sais que les instances ne seront probablement pas arrêtées et démarrées très fréquemment, mais néanmoins, si l'adresse IP se trouve dans divers fichiers de configuration, il serait difficile de toutes les parcourir et de les modifier.
Je suis principalement préoccupé par les serveurs Web, qui devront avoir accès au serveur de base de données et au serveur de fichiers, qui devront avoir accès à toutes les instances lors des sauvegardes.
Remarque: Je n'ai jamais utilisé Bacula auparavant et je ne l'ai pas encore configuré, mais je suppose qu'il faudra les adresses IP des clients pour les sauvegarder.
Réponses:
Consultez l'article d'Eric Hammond expliquant comment utiliser les adresses IP Elastic, même à partir de EC2. Cette méthode n'entraîne PAS de frais de bande passante car la résolution de l'adresse IP Elastic (par son nom) depuis EC2 renvoie l'adresse IP privée.
http://alestic.com/2009/06/ec2-elastic-ip-internal
Pour plus d'options, j'ai un article examinant quelques alternatives:
http://shlomoswidler.com/2010/06/track-changes-to-your-dynamic-cloud-services-automatically.html
la source
Déployez votre instance EC2 dans un AWS Virtual Private Cloud (VPC). Lorsque vous configurez votre VPC, vous affectez le CIDR à toutes les instances EC2 du VPC et l'adresse IP interne est statique.
la source
SSH est une très bonne méthode pour transférer des données entre différents serveurs, mais si vous recherchez quelque chose comme une connexion permanente (à une base de données par exemple), vous pouvez utiliser tout type de logiciel de tunnelage crypté, tel que
stunnel
Comme il n’est pas possible d’avoir des IP privées privées statiques, vous pouvez utiliser une sorte de déploiement de serveur automatique pour cela, il existe plusieurs outils tels que mcollective, capistrano ou func qui vous permettront d’enregistrer votre nouvelle instance sur un serveur désigné central et de générer des actions sur plusieurs serveurs. machines basées sur cette
la source