cassandra是facebook开源的著名nosql数据库。因为它和google的big talbe及amazon的dynamo有着千丝万缕的联系,一时好奇,搭建了下简单的双机环境。
cassandra是由java写的,所以需要安装openjdk
如果客户端程序使用cassandra,可以用facebook的thrift这个高性能二进制中间件。
假设有两个客户端:
10.1.1.11/24和10.1.1/12/24
解压之后,创建文件夹,并使之可以被当前用户访问(chown -R)
mkdir -p /var/log/cassandra
mkdir -p /var/lib/cassandra
编辑conf/cassandra.yaml文件
seed_provider:
# Addresses of hosts that are deemed contact points.
# Cassandra nodes use this list of hosts to find each other and learn
# the topology of the ring. You must change this if you are running
# multiple nodes!
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
# seeds is actually a comma-delimited list of addresses.
# Ex: "<ip1>,<ip2>,<ip3>"
- seeds: "127.0.0.1, 10.1.1.11, 10.1.1.12" #这里写上性能比较稳定的seed服务器
listen_address: 10.1.1.12 #可以空着,表示本机IP地址
rpc_address: 0.0.0.0 #允许任何地址的程序前来访问本数据库
这里没有硬性规定seed应该是谁。普通cassandra启动的时候都会先去连接seed,看看有其它node是否存活
之后可以启动cassandra
cassandra -f
查看一下集群的状态
bin/nodetool -host 10.1.1.11 -p 7199 ring
使用客户端访问cassandra集群
bin/cassandra-cli -h 127.0.0.1 -p 9160
创建一个简单的keyspace并添加数据,查看数据
[default@unknown] create keyspace Keyspace1;
ece86bde-dc55-11df-8240-e700f669bcfc
[default@unknown] use Keyspace1;
Authenticated to keyspace: Keyspace1
[default@Keyspace1] create column family Users with comparator=UTF8Type and default_validation_class=UTF8Type and key_validation_class=UTF8Type;
737c7a71-dc56-11df-8240-e700f669bcfc
[default@KS1] set Users[jsmith][first] = 'John';
Value inserted.
[default@KS1] set Users[jsmith][last] = 'Smith';
Value inserted.
[default@KS1] set Users[jsmith][age] = long(42);
Value inserted.
[default@KS1] get Users[jsmith];
至此简单集群搭建成功,详细就翻翻apache cassandra的文档吧。
分享到:
相关推荐
Cassandra 集群配置详解 本文将通过实例介绍 Cassandra 的简单配置,包括基本配置、集群配置、启动 Cassandra 和集群管理等方面的内容。 一、基本配置 在 Cassandra 中,需要准备 3 台或以上的计算机,并且每台...
#### 二、集群环境搭建 ##### 1、环境概览 - **JDK版本**:1.8 - **Cassandra版本**:3.11.7 - **操作系统**:CentOS 7 - **服务器数量**:3台(hop01、hop02、hop03) ##### 2、安装包处理 - 使用`tar`命令解压...
### 数据源管理与分布式NoSQL系统——Cassandra集群管理 #### Cassandra简介 ...通过本文介绍的环境搭建步骤,用户能够快速搭建起Cassandra集群,并结合Spring Boot框架进行高效的数据管理和应用程序开发。
在Python开发中,有时我们需要快速地搭建测试环境来验证Cassandra的功能或者进行性能测试。这时,Python-CCM(Cassandra Cluster Manager)就派上了用场。 CCM 是一个用于管理Apache Cassandra测试集群的简单命令行...
Kubernetes上的可扩展Cassandra部署:在此代码中,我们提供了在Kubernetes上部署多节点可扩展Cassandra集群的完整路线图。 Cassandra知道它正在集群管理器中运行,并使用此集群管理基础结构来帮助实现该应用程序。 ...
一个带有 Docker-compose 的小型多直流 Cassandra 集群 :party_popper: 是的,另一个 Docker-Cassandra 集群... Docker 镜像 映像基于并进行了更改以支持多个数据中心。 Ops Center 目前已禁用,但我希望有时间...
CCM(Cassandra集群管理器) 在本地主机上创建,启动和删除Apache Cassandra集群的脚本/库。 ccm和ccmlib的目标是使在本地机器上轻松创建,管理和销毁小型Cassandra群集变得容易。 它旨在测试Cassandra集群。要求...
docker-cassandra-群集使用docker的Cassandra的基本集群脚本。 尽管您可以将其启动到docker-machine集群上,但这是为本地开发而设计的。 如果您确实踏上了那趟旅程,请特别注意compose yaml中的端口规格。 它可能...
Cassandra-Operator就是针对Cassandra设计的这种扩展,它允许用户通过定义Custom Resources(自定义资源)来声明式地创建、更新和管理Cassandra集群。 该项目正在使用Go语言进行重构,以利用更强大的Kubernetes...
在"一组Cassandra工具,用于备份、恢复、监控、修复和管理Apache Cassandra Datastax集群_Jinj.zip"这个压缩包中,我们可能找到了一系列实用的工具,这些工具可以帮助管理员更有效地管理和维护Cassandra集群。...
### Cassandra 1.0新特性解析与集群部署规划 #### 一、Cassandra 1.0新特性概览 Cassandra 1.0版本引入了一系列关键改进,旨在增强其存储能力、读写效率以及整体系统稳定性。以下是该版本中值得注意的新特性: 1....
CCM(Cassandra集群管理器)一个脚本/库,用于在本地主机上创建,启动和删除Apache Cassandra集群。 ccm和ccmlib的目标是使在al CCM上轻松创建,管理和销毁小型Cassandra群集(Cassandra Cluster Manager)的脚本/库...
帮助操作 Cassandra 集群的通用工具和脚本 spcassandra-abortrepairs:停止本地 Cassandra 主机上正在进行的反熵会话 spcassandra-autobalance:自动重新分配集群中的令牌,使它们均匀分布。 尝试移动尽可能少的...
在这个"**Cassandra 监控脚本**"中,我们关注的是如何在Linux环境下通过Python和shell脚本来管理和维护Cassandra集群的健康状况。以下是这些脚本涉及的关键知识点: 1. **Cassandra 集群监控**: - **节点状态检查...
分布式存储系统:Cassandra:Cassandra的集群管理与运维实践.docx
文档中提到的OpsCenter是DataStax提供的一个管理和监控Cassandra集群的工具,它通过图形界面提供实时监控、性能分析以及集群管理和维护的功能。安装OpsCenter时,根据不同的操作系统会有不同的步骤。 在Linux环境下...
### Apache Cassandra 2.06 集群配置详解 #### 一、基础知识与概念 Cassandra 是一款分布式、去中心化的 NoSQL 数据库系统,主要用于处理大...通过上述步骤,可以搭建一个稳定可靠的 Cassandra 分布式数据库集群。
CCM(Cassandra集群管理器) 在本地主机上创建,启动和删除Apache Cassandra集群的脚本/库。 ccm和ccmlib的目标是使在本地机器上轻松创建,管理和销毁小型Cassandra群集变得容易。 它旨在测试Cassandra集群。 指向...
在本场景中,我们关注的是"盐-cassandra-formula",这是一个专门为配置Apache Cassandra集群设计的SaltStack公式。Apache Cassandra是一个分布式NoSQL数据库系统,广泛用于处理大规模数据分发和高可用性需求。 首先...