Apache Cassandra 是一个分布式的、可伸缩、高可用以及容错的 NoSQL 数据库,最开始由 facebook 开发,后来贡献给 Apache 基金会。Cassandra 的数据模型灵感来自于 Google Bigtable ,其分布式模型灵感来自 Amazon Dynamo. 一旦你希望了解更多 Cassandra 的设计细节,可参考Facebook 的一篇论文:http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf
这篇文章将介绍如何在 Ubuntu 12.04 上安装 Cassandra。
首先使用如下命令安装新的更新
sudo apt-get update
sudo apt-get upgrade
打开 /etc/apt/sources.list
sudo gedit /etc/apt/sources.list
在 sources.list 文件中添加如下内容
deb http://www.apache.org/dist/cassandra/debian 10x main
deb-src http://www.apache.org/dist/cassandra/debian 10x main
注册并添加 PGP 密钥然后重新更新,注意你需要相应的修改密钥
gpg --keyserver wwwkeys.pgp.net --recv-keys 4BD736A82B5C1B00
sudo apt-key add ~/.gnupg/pubring.gpg
sudo apt-get update
开始安装 Cassandra
sudo apt-get install cassandra
启动 Cassandra 服务器
sudo cassandra -f
启动后,你将会看到如下信息
INFO 12:18:29,140 Listening for thrift clients...
要停止 Cassandra 服务器进程必须先找到它的进程 id
ps auwx | grep cassandra
下列输出信息可知道进程 id 为 3595
root 3595 0.0 0.0 60048 1908 pts/0 S+ 12:18 0:00 sudo cassandra -f
然后使用 kill 命令来终止 Cassandra 服务(尽管这种方法比较粗暴)
sudo kill <pid>
当进程被停止后,你可在 Thrift 看到如下信息
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.
你也可以使用如下命令来启动 Cassandra 服务
sudo /etc/init.d/cassandra start
使用如下命令来停止 Cassandra 服务
sudo /etc/init.d/cassandra stop
安装 Cassandra 将会创建如下目录
/var/lib/cassandra (data directories)
/var/log/cassandra (log directory)
/var/run/cassandra (runtime files)
/usr/share/cassandra (environment settings)
/usr/share/cassandra/lib (JAR files)
/usr/bin (binary files)
/usr/sbin
/etc/cassandra (configuration files)
/etc/init.d (service startup script)
/etc/security/limits.d (cassandra user limits)
/etc/default
在 Linux 平台上安装 JNA (Java Native Access) 会优化 Cassandra 的内存使用,要安装 JNA 很简单,只需要从http://java.net/projects/jna/sources/svn/show/trunk/jnalib/dist/下载 jna.jar 文件,并将这个文件保存到 /usr/share/cassandra/lib 目录即可.
一旦你在启动 Cassandra 服务器时出现接下来错误,则可能是 Cassandra 已经启动了,你需要首先停止正在运行的服务
Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 7199; nested exception is:
java.net.BindException: Address already in use
你也可以使用二进制的安装方法,详情请看http://www.datastax.com/docs/0.8/install/install_bintar
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。