Развернуть Кассандру на EC2? - PullRequest
6 голосов
/ 17 января 2011

Я знаю, что Кассандра все еще в бета-версии, но я бы хотел поиграть с этим. Это никоим образом не производственный проект; это просто для удовольствия и немного учиться. Но лучший способ обучения - это развернуть и заставить людей испытать его на себе.

Я хочу использовать Cassandra с Heroku, поэтому я бы хотел развернуть ее на EC2 (как это делает Heroku). Какой самый лучший, самый простой и дешевый способ сделать это? Любые рекомендации?

Я видел несколько через Google, но они предупреждают такие вещи, как: Экземпляры EC2 не подходят для производственного использования. Они хранят данные на самом экземпляре и исчезают при его завершении.

1 Ответ

4 голосов
/ 17 января 2011
  • Используйте экземпляры Elastic Block Storage (EBS) для хранения файлов журнала и данных Cassandra. Вам нужно будет изменить /etc/cassandra/cassandra.yaml, чтобы указать, куда эти файлы идут. Экземпляры EBS остаются в силе и после завершения работы экземпляров EC2, к которым они подключены.

  • Вы можете установить его на один экземпляр, чтобы опробовать интерфейс и поэкспериментировать с моделью данных. Вам пока не нужно настраивать кластер.

  • Чтобы проверить возможности кластеризации, вы можете попробовать настроить три экземпляра и задать для всех пространств ключей коэффициент репликации 3. Но это может быть более поздняя стадия эксперимента, чем экспериментирование с моделью данных. Рекомендуемый минимальный размер кластера 3.

  • Вам следует поэкспериментировать с машинами разных размеров. Для экспериментов со сверхмалыми размерами экземпляров вы можете использовать альтернативных поставщиков, таких как Rackspace. Если вы столкнетесь с проблемами производительности при меньших размерах экземпляров, посмотрите, решает ли это увеличение размеров экземпляров.

  • Для Rails существует несколько библиотек альфа-Cassandra-Object-Mapping. Вы можете обнаружить, что это не совсем работает для вас. Вы можете внести свой вклад или просто внедрить код персистентности модели непосредственно в свои модели. Для приложений на Rails 3 вам может понадобиться интерфейс ActiveModel и вспомогательные модули, чтобы ваши модели хорошо работали с ActionPack и другими библиотеками, которые ожидают совместимые с ActiveModel модели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...