2010-06-30 12 views

Répondre

2

La stratégie que j'emploie est de faire communiquer les nœuds Apache Cassandra via un tunnel VPN de site à site.

configurations spécifiques pour le fichier cassandra.yaml:

listen_address: 10.x.x.x # vpn network ip 
rpc_address: 172.16.x.x. # non-vpn network for client access although, I leave it blank so that it listens on all interfaces 

Les avantages de cette approche est que vous pouvez déployer Cassandra Apache à de nombreux environnements différents et vous devenez fournisseur agnostique. Par exemple, héberger des nœuds dans divers environnements Amazon EC2 et héberger des nœuds dans votre propre centre de données physique et en héberger quelques autres sous votre bureau!

Coût d'un problème qui vous empêche de regarder dans cette approche? Vyatta ...

Comme KajMagnus l'a souligné, il existe un ticket JIRA résolu et disponible dans la version stable d'Apache Cassandra: https://issues.apache.org/jira/browse/CASSANDRA-1567 qui vous permet d'accomplir ce que vous voulez via TLS/SSL .. mais il y a quelques façons d'accomplir ce que vous voulez.

Enfin, si vous voulez pour héberger votre exemple sur Amazon EC2, région à région peut être problématique et bien qu'il y ait un patch disponible en 1.x.x, est-ce vraiment la bonne approche? J'ai trouvé que l'approche VPN réduit la latence entre les nœuds dans différentes régions tout en maintenant le niveau de sécurité nécessaire.

Enfin - partie 2 -

Si vous souhaitez sécuriser des communications client serveur, ont vos clients (serveurs Web) communiquent par le même VPN ..La configuration que j'ai:

  • webservers extrémité avant de communiquer via le réseau interne aux serveurs d'applications
  • serveurs d'application sont assis sur leur propre réseau interne et réseau VPN et communiquent à la couche de données via le tunnel VPN et entre autre sur le réseau interne
  • couche de données existe sur son propre réseau par Data Center/rack et reçoit des requêtes via le réseau VPN