Статьи

Установка Apache Cassandra в Ubuntu

Apache Cassandra — это распределенная, чрезвычайно масштабируемая, высокодоступная и отказоустойчивая база данных NoSQL, созданная Facebook, позже открытая как проект apache. Модель данных Cassandra основана на Google Bigtable, а модель распространения — на Amazon Dynamo . Если вам интересно узнать больше о Кассандре, вы можете обратиться к статье, написанной Facebook.

В этом посте вы узнаете, как установить Cassandra в Ubuntu 12.04.

  1. Установите новые обновления, используя следующие команды

        sudo apt-get update  
        sudo apt-get upgrade  
  2. Откройте /etc/apt/sources.list, используя следующую команду

    1. sudo gedit /etc/apt/sources.list  

    и добавьте к нему следующие строки

        deb http://www.apache.org/dist/cassandra/debian 10x main  
        deb-src http://www.apache.org/dist/cassandra/debian 10x main  
  3. Запустите обновление еще раз, и вы получите следующую ошибку. Это означает, что вам нужно добавить PUBLIC_KEY. На следующем шаге вы поймете, как добавить этот PUBLIC_KEY.

    1.     GPG error: http://www.apache.org unstable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4BD736A82B5C1B00  
  4. Зарегистрируйте и добавьте ключ PUBLIC_KEY и обновите его снова; обратите внимание, что вам может потребоваться изменить ключ соответствующим образом

        gpg --keyserver wwwkeys.pgp.net --recv-keys 4BD736A82B5C1B00  
        sudo apt-key add ~/.gnupg/pubring.gpg  
        sudo apt-get update  
  5. Установите Cassandra, используя следующую команду

    1.     sudo apt-get install cassandra  
  6. Запустите сервер Cassandra, используя следующую команду

    1.     sudo cassandra -f  

    После запуска сервера Cassandra вы увидите, что он начал прослушивать экономных клиентов.

        ....  
        ....  
        ....  
        INFO 12:18:29,140 Listening for thrift clients...  
  7. Чтобы остановить процесс сервера Cassandra, сначала найдите идентификатор процесса для Cassandra и убейте его.

    Чтобы найти идентификатор процесса, используйте следующую команду

    1.     ps auwx | grep cassandra  

    Вывод будет примерно таким. В соответствии с этим 3595 является идентификатором процесса для Кассандры.

    1.     root      3595  0.0  0.0  60048  1908 pts/0    S+   12:18   0:00 sudo cassandra -f  

    Чтобы убить процесс, используйте следующую команду

    1.     sudo kill [pid]

    После завершения процесса вы увидите, что сервер Cassandra прекратил прослушивание экономных клиентов.

    INFO 13:04:08,663 Stop listening to thrift clients  
    INFO 13:04:08,666 Waiting for messaging service to quiesce  
    INFO 13:04:08,667 MessagingService shutting down server thread.
  8. Используйте следующую команду, чтобы запустить Cassandra как сервис

    1.     sudo /etc/init.d/cassandra start  
  9. Используйте следующую команду, чтобы остановить службу Cassandra

    1.     sudo /etc/init.d/cassandra stop  

Установка создаст следующие каталоги. Их использование упоминается в скобках.

  • / var / lib / cassandra (каталоги данных)
  • / var / log / cassandra (каталог журналов)
  • / var / run / cassandra (исполняемые файлы)
  • / usr / share / cassandra (настройки среды)
  • / usr / share / cassandra / lib (файлы JAR)
  • / usr / bin (двоичные файлы)
  • / USR / SBIN
  • / etc / cassandra (файлы конфигурации)
  • /etc/init.d (скрипт запуска службы)
  • /etc/security/limits.d (ограничения пользователя cassandra)
  • / И т.д. / по умолчанию

Установка JNA (Java Native Access) на платформах Linux может улучшить использование памяти Cassandra. Чтобы установить JNA, скачайте jna.jar отсюда и добавьте его в каталог / usr / share / cassandra / lib.

Если при попытке запустить сервер Cassandra появляется следующая ошибка, это означает, что cassandra уже где-то работает в фоновом режиме. Вам нужно будет сначала убить процесс, который работает в фоновом режиме. Вы, вероятно, можете использовать вышеупомянутую команду остановки, чтобы остановить любые серверы Cassandra, работающие в фоновом режиме.

  1. Ошибка: исключение выдается агентом: java.rmi.server.ExportException: порт уже используется: 7199; Вложенное исключение:   
  2.  java.net.BindException: адрес уже используется  

Здесь я сделал пакетную установку, в качестве альтернативы вы можете установить двоичную установку Cassandra в Ubuntu. Используйте эту ссылку для этого.

Ссылки

Официальный пакет для установки в Debian ™ (не является продуктом Debian ™)