热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在Ubuntu上安装ApacheCassandra

ApacheCassandra是一个分布式的、可伸缩、高可用以及容错的NoSQL数据库,最开始由facebook开发,后来贡献给Apache基金会。Cassandra的数据模型灵感来自于GoogleBigtable,其分布式模型灵感来自AmazonDynamo.如果你希望了解更多Cassandra的设计细节,可参考Facebook的一篇论文。本文将介

Apache Cassandra 是一个分布式的、可伸缩、高可用以及容错的 NoSQL 数据库,最开始由 facebook 开发,后来贡献给 Apache 基金会。Cassandra 的数据模型灵感来自于 Google Bigtable ,其分布式模型灵感来自 Amazon Dynamo. 如果你希望了解更多 Cassandra 的设计细节,可参考 Facebook 的一篇 论文 。

本文将介绍如何在 Ubuntu 12.04 上安装 Cassandra。
  1. 首先使用如下命令安装新的更新
     
    1 sudo apt-get update
    2 sudo apt-get upgrade
  2. 打开 /etc/apt/sources.list
     
    1 sudo gedit /etc/apt/sources.list
    在 sources.list 文件中添加如下内容
     
    1 deb http://www.apache.org/dist/cassandra/debian 10x main
    2 deb-src http://www.apache.org/dist/cassandra/debian 10x main
  3. 注册并添加 PGP 密钥然后重新更新,注意你需要相应的修改密钥
     
    1 gpg --keyserver wwwkeys.pgp.net --recv-keys 4BD736A82B5C1B00
    2 sudo apt-key add ~/.gnupg/pubring.gpg
    3 sudo apt-get update
  4. 开始安装 Cassandra
     
    1 sudo apt-get install cassandra
  5. 启动 Cassandra 服务器
     
    1 sudo cassandra -f
    启动后,你将会看到如下信息
     
    1 ....
    2 ....
    3 ....
    4 INFO 12:18:29,140 Listening for thrift clients...
  6. 要停止 Cassandra 服务器进程必须先找到它的进程 id
     
    1 ps auwx | grep cassandra
    下列输出信息可知道进程 id 为 3595
     
    1 root      3595  0.0  0.0  60048  1908 pts/0    S+   12:18   0:00 sudo cassandra -f
    然后使用 kill 命令来终止 Cassandra 服务(尽管这种方法比较粗暴)
     
    1 sudo kill
    当进程被停止后,你可在 Thrift 看到如下信息
     
    1 INFO 13:04:08,663 Stop listening to thrift clients
    2 INFO 13:04:08,666 Waiting for messaging service to quiesce
    3 INFO 13:04:08,667 MessagingService shutting down server thread.
  7. 你也可以使用如下命令来启动 Cassandra 服务
     
    1 sudo /etc/init.d/cassandra start
  8. 使用如下命令来停止 Cassandra 服务
     
    1 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 很简单,只需要从这里下载 jna.jar 文件,并将这个文件保存到 /usr/share/cassandra/lib 目录即可.

如果你在启动 Cassandra 服务器时出现下面错误,则可能是 Cassandra 已经启动了,你需要首先停止正在运行的服务

 
1 Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 7199; nested exception is: 
2  java.net.BindException: Address already in use

你也可以使用二进制的安装方法,详情请看这里。

英文原文,OSCHINA原创翻译


推荐阅读
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • 像跟踪分布式服务调用那样跟踪Go函数调用链 | Gopher Daily (2020.12.07) ʕ◔ϖ◔ʔ
    每日一谚:“Acacheisjustamemoryleakyouhaven’tmetyet.”—Mr.RogersGo技术专栏“改善Go语⾔编程质量的50个有效实践” ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 如何查看电脑系统版本_腾讯云服务器系统版本怎么看?Windows和Centos版本怎么选?...
    腾讯云服务器系统版本怎么看?想要知道自己的腾讯云服务器系统版本是哪个,可以登录云服务器后台管理系统查看,或者使用命令行查询,如果不会操作& ... [详细]
  • 主流操作系统简介
    主流操作系统简介子墨居士操作系统理论定义为管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分࿰ ... [详细]
  • 你知道GPL吗?GPL 没落了吗?
    不久之前我看到了RedMonk的StephenOGrady发了一个关于开源协议的有趣的推特,那个推特里面有这张图。RedmonkBlackDuckLicensing ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 如何将CentOS8转换为CentOSStream
    CentOS Stream是一个持续交付的Linux发行版,它在RHEL之前处于领先地位。它将具有滚动发布,即不断进行更改。CentOS将成为一个上游版本,它将具有测试补丁和更新。 ... [详细]
author-avatar
toto333
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有